私は十数のクラスとカテゴリを持つカスタムフレームワークを持っているとしましょう。彼らはすべて標準的なココアクラスを継承/拡張します。このため、私のフレームワークはコンパイル時に< Cocoaにリンクしています。Appleフレームワークを必要とするカスタムフレームワークを構築するためのCocoaベストプラクティス
QuartzCore>が<のクラスを追加することをお勧めしますが、これをパッケージ化するにはどうすればよいですか?
1)単にクラスをフレームワークに追加してQuartzCoreをインポートするだけであれば、私のフレームワークの誰もがQuartzCoreをインポートする必要があります。
2)クラスを別のフレームワークに移動すると、消費者は、QuartzCoreと同様に、完全な機能を得るために自分のフレームワークを両方インポートする必要があります。第1のフレームワーク内のクラスは、第2のフレームワークを使用することができない。
3)#ifdef #endifなどを実行してQuartzCoreフレームワークを弱くリンクして、Cocoa標準クラスとQuartzCore依存クラスが単一のフレームワークになるようにする方法はありますか? QuartzCoreをプロジェクトに追加する必要がありますか? QuartzCoreが理想的に存在しない場合、クラス/カテゴリはランタイムでは使用できません。