フレームワーク
Foundation
基本的なオブジェクト動作、データ型、コレクション、およびオペレーティングシステムサービスを定義する必須クラスにアクセスします。あなたのアプリケーションを、より効率的かつ堅牢にするデザインパターンとメカニズムを組み込みます。
概観
Foundation フレームワークは、Objective-C クラスの基本レイヤーを定義します。有用なプリミティブオブジェクトクラスのセットを提供するだけでなく、Objective-C 言語ではカバーされない機能を定義するいくつかのパラダイムを導入しています。Foundation フレームワークは、以下の目標を念頭に置いて設計されています。
- 基本的なユーティリティクラスの小さなセットを提供します。
- 割り当て解除などのための一貫した規則を導入することで、ソフトウェア開発を容易にします。
- Unicode 文字列、オブジェクトの永続性、およびオブジェクトの配布をサポートします。
- OS の独立性のレベルを提供し、移植性を向上させます。
Foundation フレームワークには、ルートのオブジェクトクラス、文字列やバイトの配列などの基本データ型を表すクラス、他のオブジェクトを格納するコレクションクラス、日付などのシステム情報を表すクラス、通信ポートを表すクラスなどを含んでいます。Foundation フレームワークを構成するこれらのクラスのリストについては、Cocoa Objective-C Hierarchy for Foundation を参照してください。
Foundation フレームワークは、一般的な状況での混乱を避け、クラス階層間で一貫性のレベルを導入するためのいくつかのパラダイムが導入しています。この一貫性は、オブジェクトの所有者 (すなわち、オブジェクトの廃棄を担当する者) や NSEnumerator のような抽象クラスなど、いくつかの標準ポリシーで行われます。これらの新しいパラダイムは、API の特別なケースと例外的なケースの数を減らし、さまざまな種類のオブジェクトと同じメカニズムを再利用することにより、より効率的にコード化することを可能にします。
Foundation フレームワーククラス
Foundation クラス階層は、Foundation フレームワークの NSObject クラスを基礎にしています。Foundation フレームワークの残りの部分は、いくつかの関連するクラスのグループといくつかの個別のクラスで構成されています。グループの多くは、クラスクラスタと呼ばれるものを形成します。抽象クラスは、プライベート(private) サブクラスの多様なセットに対するアンブレラ・インタフェースとして機能します。たとえば NSString や NSMutableString は、さまざまな種類の保管ニーズに合わせて最適化されたさまざまなプライベートサブクラスのインスタンスのブローカーとして機能します。文字列を作成するために使用するメソッドに応じて、適切に最適化されたクラスのインスタンスが返されます。
これらのクラスの多くは、密接に関連する機能を持っています。
- データ保管:NSData はバイトの配列用にオブジェクト指向の保管を提供します。NSValue と NSNumber は、単純な C のデータ値の配列にオブジェクト指向の保管を提供します。NSArray、NSDictionary、および NSSet は、全てのクラスの Objective-C のオブジェクト用の保管を提供します。
- テキストと文字列:NSString クラスと NSMutableString クラスはテキスト文字列を表し、文字列の検索、結合、比較のためのメソッドを提供します。Scanner オブジェクトは、NSString オブジェクトから数値と単語をスキャンするために使用されます。NSCharacterSet は、NSString と Scanner によって使用されるさまざまな文字のグループを表します。
詳細は、数値と値のプログラミングのトピック と コレクションのプログラミングのトピック を参照してください。
詳細は、文字列プログラミングガイド を参照してください。