Cocoa Scripting Course Volume #3 NSDictionary
- ¥ 5,000
【AppleScript中〜上級者け】【図を中心に構成、文字数すくなめ】 書名:「Cocoa Scripting Course Volume #3 NSDictionary」v1.0 著者:Takaaki Naganoya(Piyomaru Software) 監修:edama2氏 ページ数:251ページ(うち、Vol.3独立部分101ページ 2021/4/23現在) フォーマット:PDF+Zipアーカイブ(通常AppleScript 664ファイル、Xcode based AppleScript 442 Project) 特別特典: Script Debuggerの15%割引購入コード入り 購入後3か月まで、本書の内容で理解できない箇所について3か所まで補足説明 理解度確認テストで合格した方に修了証明書を発行 高画質版のPDFと圧縮版のPDF(small)をご用意しています
内容
macOSのAPIであるCocoaをAppleScriptから利用し、macOSの持つ強力な機能をアプリケーションの補助なしに直接呼び出せる「Cocoa Scripting」は、日々の業務やデータ処理に、たいへん強力な武器になります。 この、Cocoa Scriptingについてはとくに日本語の書籍が存在しておらず、これまでは「Xcodeの使い方、GUIの作り方、各メソッドの使い方……」といった、体系がまったく異なるObjective-Cの入門書で断片的に情報を得ることしかできませんでした。 本書は、Cocoa APIの使い方をAppleScriptに合わせて解説。とくに、Objective-C/Swift入門書にある膨大な「Xcodeの使いこなし」部分は覚える必要はありません。図を中心に説明することで、難解な概念を理解しやすく解説します。 Vol.3では、NSDictionary/NSMutableDictionaryを解説。AppleScriptのrecord型変数に該当するオブジェクトですが、高度な各種APIに対してのパラメータとして使われることが多く、XMLやplist、JSONやYAML、HTMLなど幅広いデータとの相互変換などが行えます。 さらに、NSArrayよりもソートが高速。さまざまな抽出機能を持っているため、データベースを併用していたような機能が、Cocoa Scriptingの導入で他のデータベースの手助けなしに実現できます。 基礎的なサンプルから高度な使い方までていねいに解説。実際に各種処理の処理時間を計測しグラフ化して比較しています。 本書は「AppleScriptの穴」掲載AppleScriptのカテゴリ別アーカイブ集ともなっており、本書にはNSDictionaryなどレコード処理を行うサンプルScriptをはじめ有用なAppleScriptのファイルを大量に添付しています。とくに、XcodeベースのAppleScript Projectを多数収録。他に類を見ない充実度を見せています。
構成
Cocoa Scriptingについての解説部分、各巻で個別の説明部分、そして対象のCocoa APIを利用したサンプルScriptアーカイブから構成されます。 巻末には、理解度を確認するためのテストが用意され、筆者に回答を送ると採点を実施。合格点(100点)を取った方には「修了証明書」(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 関連ツール ■■理解度確認テスト ■■あとがき、奥付 著者あとがき 更新履歴 奥付