動的コード読込み入門
このプログラミング記事は、アプリケーション実行中に実行可能コードを読込むための有益なテクニックを解説します。
制限
Objective-Cランタイムシステムの制限により、本記事の執筆時点において、Cocoaの読込み可能バンドルをアンロードする方法はありません。
ドキュメントの構成
動的読込みに関する概念を学ぶには、以下の章を読んで下さい:
- “about_loadable_bundles”は、読込み可能バンドルの構築方法と使い時について解説します。
- “loadable_bundles_in_cocoa”は、Cocoaの読込み可能バンドル固有の特徴を解説します。
- “cfbundle_and_nsbundle”は、Core FoundationのCFBudle不透明型とCocoaのNSBundleクラスの関係について解説します。
- “multi-bundle_applications”は、アプリケーションをモジュール性と拡張性を増加させる複合バンドルで構成する方法を説明します。
- “plug-in_architectures”は、プラグインの概念と、プラグインを取り巻くアプリケーションの構築方法について解説します。
以下の作業をカバーします:
- “loading_objective-c_libraries_from_java”は、JavaアプリケーションでObjective-Cの動的ライブラリを読込み方法を解説します。
関連項目
前もってBundle Programming Guideを読んでおく事をお奨めします。このドキュメントではバンドルの概要を説明しています。説明にはバンドルの目的、種類、構造、バンドルのリソースにアクセスするためのAPIを含んでいます。
動的コード読込みに関係するドキュメントResource Programming Guideは、コード以外のバンドルリソース、典型的にはnibファイル中のリソースへのアクセス方法を解説しています。
最後に、バンドルベースのプラグインとして一般的なCore FoundationのCFPlugIn API(CFPlugInRef
)を学ぶには、Plug-insをご覧下さい。また、本ドキュメント中のcore_foundation_cfpluginにおいても、CFPlugInのアーキテクチャの要約を示しています。