P1-61 Objective-Cのエンジン部 ランタイムに踏み込む
"Pro Objective-C Design Patterns for iOS" がしんどいので "Dynamic Objective-C" を読み始めることにしました。前者はライフワーク的に思い出したら読む感じにします。
- CocoaとObjective-Cと動的なオブジェクト指向
- class-dumpでframeworkのクラスとメソッドが見れる
- Objective-Cの動的型付け
- Cocoa実現の肝 クラスとそのメソッドの調査方法をチェック
- NSClassFromString
- ターゲットーアクションパラダイム - 動的特性を利用したデザインパターン
- メソッドの有無もターゲットの特性
- ターゲットーアクションパラダイム - その利点を徹底検証
- Cocoa-Javaの挑戦とは?
- Objective-Cと様々な言語のブリッジ - PyObjC, RubyCocoa
- カテゴリ
- プロトコルが必要とされた背景
- プロセス間通信ではプロトコルにて通信のエンコードを知っておいた方がパフォーマンスがよい
- 非形式プロトコル
- NSObjectのカテゴリとして宣言する
- 2つのプロトコルの使い分け
- 本書では形式プロトコルはすべてメソッドを実装するのを求められるから、デリゲートでは非形式の方を使う、と書いてあったが、Objective-C2.0からは@Optionalが使える
- ポージングで乗っ取り
- 使ったことがない。危なそう。便利なことができそうな気はする
- Objective-Cのエンジン部 ランタイムに踏み込む
- クラスとは何か
- Class型は構造体objc_classのポインタ
- すべてのクラス名を取得する int objc_getClassList(Class* buffer, int bufferLen);
- メタクラス
- id型とは構造体objc_objectのポインタ
めちゃくちゃ面白いですね。クラスもオブジェクトも構造体だったとか。
そして本文の文体がいいですね。元がWeb連載だったからか語りかける文章で、ワクワクさせてくれます。
- 作者: 木下誠
- 出版社/メーカー: ビー・エヌ・エヌ新社
- 発売日: 2009/03/27
- メディア: 単行本(ソフトカバー)
- 購入: 9人 クリック: 119回
- この商品を含むブログ (31件) を見る