書名:「Cocoa Scripting Course Volume #3 NSDictionary」
著者:Takaaki Naganoya(Piyomaru Software)
ページ数:251ページ(うち、Vol.3独立部分101ページ 2021/4/23現在)
フォーマット:PDF+Zipアーカイブ(通常AppleScript 664ファイル、Xcode based AppleScript 442 Project)
特別特典:
Script Debuggerの15%割引購入コード入り
購入後3か月まで、本書の内容で理解できない箇所について補足説明します
内容:
macOSのAPIであるCocoaをAppleScriptから利用し、macOSの持つ強力な機能をアプリケーションの補助なしに直接呼び出せる「Cocoa Scripting」は、日々の業務やデータ処理に、たいへん強力な武器になります。
この、Cocoa Scriptingについてはとくに日本語の書籍が存在しておらず、これまでは「Xcodeの使い方、GUIの作り方、各メソッドの使い方….」といった、体系がまったく異なるObjective-Cの入門書で断片的に情報を得ることしかできませんでした。
本書は、Cocoa APIの使い方をAppleScriptに合わせて解説。とくに、Objective-C/Swift入門書にある膨大な「Xcodeの使いこなし」部分は覚える必要はありません。図を中心に説明することで、難解な概念を理解しやすく解説します。
構成:
Cocoa Scriptingについての解説部分、各巻で個別の説明部分、そして対象のCocoa APIを利用したサンプルScriptアーカイブから構成されます。
巻末には、理解度を確認するためのテストが用意され、筆者に回答を送ると採点を実施。合格点(80点)を取った方には「修了証明書」を発行(PDF形式)。
目次
■■1章 入門編
■Cocoa Scriptingの概要
Cocoa Scriptingってどういうもの?
Cocoa Scriptingの実際
Cocoa Scriptingの威力
Cocoa Scriptingのメリット
Cocoa Scriptingに必要なもの
Cocoa Scriptingまとめ
Cocoa Scripting9つの誓い
■Cocoa Scriptingに適したmacOSについて
Cocoa Scripting環境の進化の歴史
Cocoa Scriptable macOS
参考資料:AppleScriptランタイム環境情報
Cocoa Scripting環境ごとの挙動の違い
SIP解除の是非
■プログラミングスタイル
開発・実行環境のちがい
処理手順の違い
メインスレッド実行が必須な機能のScripting
delegation, notification
実行スタイルの違いによる書き換え
AppleScriptでCocoaオブジェクトを呼び出すと…
サブルーチン記述
オブジェクト階層を示すmyとme
クラス拡張
高速なCocoa Scriptを書くためには
アプリケーションとのやりとり
暗黙の型変換
一部のコマンドで書き換えが必要
計算の優先順位を示すカッコを修正
オブジェクトの数え方
■情報の調べ方
Cocoa Scriptingを行う際の調べ方
Appleのオンラインドキュメント
Xcodeでヘッダーファイルを「素早く開く」
■ヘッダーファイルの歩き方
ヘッダーファイルの構成要素
Deprecatedな機能に遭遇した場合
Enum(定数)の記載パターン
AppleScriptの数値表現幅を超えるEnum(定数)
■■2章 実践編
■Cocoa Scriptを実際に動かす
Script Editor/Script Debuggerを起動
Cocoa Scriptを実行
Cocoa Objectのログを表示
Cocoa Scriptの書類を保存
Cocoa Scriptのエクスポート形式
■Objective-CのCocoa呼び出し記述をAppleScript記述に翻訳する
Cocoa
Cocoa Script(AppleScriptObjC)の構成
Cocoaクラス名のAppleScript内での表記
Objective-Cの各種データ表記書き換え
Cocoaメソッド名の大文字小文字指定
Cocoaメソッド名の変換
■基礎的なCocoaオブジェクト解説
メソッド呼び出し時のパラメータ
NSString(文字列)
NSArray(配列)
NSDictionary(辞書)
Number(数値)
Enum(定数)
nil
NSObject
Cocoa Scriptingの特徴的な動き
■AppleScriptとCocoa間のオブジェクト変換
AppleScriptオブジェクトに対応するCocoaクラス
配列関連のCocoaクラス
レコード関連のCocoaクラス
文字列関連のCocoaクラス
日付関連のCocoaクラス
File
Path関連オブジェクト
File
Path関連オブジェクト変換方法
画像関連Cocoaオブジェクト
ファイルパス文字列(NSString)関連
URL関連
Remote
URL文字列関連
配列関連
Dictionary関連
NSString文字エンコーディング関連
Color関連
HTML関連
■Cocoa Object同士の変換、生成
NSData
Styled String
2次元座標データ
1次元座標系データ
言語、Locale系データ
有用なCocoaオブジェクト(抜粋)
■■3章 NSDictionary編
■NSDictionaryの位置付けと役割
用途別のフレームワークを知ろう
NSDictionary / NSMutableDictionary
NSDictionaryのつかいどころ
NSDictionaryならではの使い道
NSDictionaryのメソッドの返り値を使う
データ作成速度比較
データ作成+検索速度比較
■NSDictionaryの基礎知識
NSDictionaryの作成
NSDictionaryからの値の取り出し
入り組んだNSDictionaryからの値の取り出し
NSDictionaryの値の書き換え
入り組んだNSDictionaryの値の書き換え
■NSDictionary Basic Samples
■NSMutableDictionary Basic Samples
■NSDictionary in NSArrayのソート
NSDictionary in NSArrayのソート
1次元配列ソートのベンチマーク
NSArrayソートのメソッド別ベンチマーク
NSDictionary in NSArrayのメソッド別ソート
NSDictionary in NSArray /2D Arrayソートのベンチマーク
NSDictionary in NSArrayのベンチマークプログラム
NSSortDescriptor
■NSDictionary in NSArrayの頻度集計
NSCountedSetで登場頻度集計
■NSDictionary in NSArrayからの抽出
抽出を指定するNSPredicate
NSPredicateサンプル
NSDictionary in NSArrayからKey Value Codingで計算
■NSDictionary in NSArrayからCSV作成
NSDictionary in NSArrayからCSV作成
NSDictionary in NSArrayからCSV書き出し
■NSDictionary in NSArrayのユニーク化
NSDictionary in NSArrayのユニーク化
■NSDictionaryを利用した応用処理
XMLの作成と解釈
XMLに対してXPathを指定したアクセス
RSSの解釈(パース)
JSONの作成と解釈(パース)
YAMLの作成と解釈(パース)
plistの作成と解釈(パース)
HTMLの解釈(パース)ほか
NSDictionaryの内容をもとにNSMutableDictionary作成
■NSDictionaryを必要とする各種API呼び出し例
画像からの顔認識
スタイル付きテキストの作成
パラメータつきURL文字列の作成
テキスト読み上げ音声情報にアクセス
■■添付サンプルScript紹介
■■資料編
■Cocoa Scripting関連のAppleScript命令
AppleScript予約語一覧
use
on,
to
anything
as
property
■Cocoa ScriptingとScript Object
Cocoa ScriptingとScript Object(Script文)
Script Object内でCocoa Scriptingを行う
Handlerの間接呼び出し
■AppleScript Droplet
セキュリティ制限を回避するDropletの書き方
■サードパーティ製FrameworkやAppleScript Librariesを呼ぶ
Script BundleにFramework / AppleScript Librariesを入れる
Shane StanleyのScript Toolの変遷
Shane StanleyのScript Libraries
Piyomaru SoftwareのScript Libraries
AppleScriptから呼べる主要Framework
AppleScriptから呼んだことのあるOS Framework
各macOSのFrameworkの変化
■AppleScript mini reference
macOS搭載 AppleScript関連ドキュメント
AppleScript関連の情報源
macOSバージョンとAppleScriptの動向
macOSとAppleScriptの要素技術史
各macOSごとのAppleScript解説(1/4)
各macOSごとのAppleScript解説(2/4)
各macOSごとのAppleScript解説(3/4)
各macOSごとのAppleScript解説(4/4)
macOS内AppleScript補助ツールの歴史
System EventsのAppleScript用語辞書変更点
AppleScript 各ランタイム環境情報
AppleScript 関連ツール
Cocoa Scripting 関連ツール
■■理解度確認テスト
■■あとがき、奥付
著者あとがき
更新履歴
奥付