Objective-Cの学習2
ダイナミックObjective-Cの第6回から第11回まで読んだ。
カテゴリ
カテゴリごとにクラスを分割して管理できる
クラスにメソッドを追加することができる
これは便利そう、アプリケーションごとに必要な機能を既存のクラスに追加できる
iPhoneアプリのサンプル(公式でない)でもよく使われている
例えば、NSStringにurlencodeを追加したりするやつ
プロトコル
@protocolを使う方法
@protocol - (void) method1:(id)hoge; - (void) method2:(id)fuga; end
@protocolを使わない方法
NSObjectのカテゴリとして実装する
非形式プロトコルと呼ぶ
コンパイラのチェックがかからない
柔軟に実装可能
デリゲートによく使われる
非形式プロパティの方がよく使われている
これもよく見かけるなぁ
ImageStoreのサンプルでも使われていた。
こういう意味があったんだ。
ポージング
クラスの乗っ取り
poseAsClass
継承元の機能を乗っ取ることが可能
はじめて聞いた機能だな、荻原本に載っていなかったような気がする。