
→ 販売ページ
奥が深い、サブルーチン、ハンドラの記述
知っていても得はしないが、いざという時に便利?
サブルーチンの有効性を理解できたら、初級者から中級者にステップアップしたと言ってよいでしょう。一度書いた有用な処理は何回でも使い回す、使い回しやすいように清書することになります。
AppleScriptのサブルーチンを構成する「ハンドラ」の記述方法は、普段使わないものも含めると、いろいろな書き方があって、凝ったハンドラの書き方をされると、筆者もさっぱり読めず、かなり単純な書き方しかしていません。
バリエーション豊かなハンドラ記述を行なっても、それほど生産性向上に寄与しないという判断を行なっています。
ただし、海外のScripterにそうした書き方を使っている人や、クセの強いScriptを書く人がいるので、解読するための手がかりにはなることでしょう。
ハンドラの記法についてこの巻で説明しておきたいと考えたのは、のちのち説明することになる「AppleScriptライブラリ」に、SDEF(AppleScript用語辞書)をつけて利用する(=AS対応のGUIアプリケーションのように、予約語の連語によるコマンド呼び出しができる)話を説明するための「布石」です。
PDF 35ページ+Zipアーカイブ
目次:
■AppleScriptのサブルーチン、ハンドラとは?
どの言語にもあるサブルーチン、ハンドラ
ハンドラ内の変数の取り扱い
tellブロック内で記述するハンドラ呼び出し①
tellブロック内で記述するハンドラ呼び出し②
イベントハンドラ①
イベントハンドラ②
■基礎的なハンドラ記述 on subHandler(param)
基礎的なハンドラ記述
ハンドラの情報を取得①
ハンドラの情報を取得②
■分割パラメータつきハンドラ記述 on subHandler:param
分割パラメータつきハンドラ記述
■パターン化位置パラメータつきハンドラ記述on hello(a, b, {length:l, bounds:{x, y, w, h}, name:n})
パターン化位置パラメータつきハンドラ記述
■ラベルつきハンドラ記述
パラメータの受け渡し方で2つに大別される
ラベル付きパラメータ
■予約語をオーバーライドしてハンドラ宣言
コマンド予約語をオーバーライド
オーバーライド可能な標準搭載の予約語
オーバーライドの有効範囲①
オーバーライドの有効範囲②
オプションすべてに対応するとけっこう大変