イントロダクション
アプリケーション開発へオブジェクト指向なアプローチをすると、プログラムをより直感的に設計でき、より早く開発でき、より修正しやすく、理解しやすいものにします。ほとんどのオブジェクト指向を採用する開発環境では、少なくとも3つの部分を備えています。
- オブジェクトのライブラリ
- 開発ツール群
- オブジェクト指向のプログラミング言語と、それをサポートするライブラリ
Objective-Cは、洗練されたオブジェクト指向プログラミングができるように設計されたプログラミング言語です。Objective-Cは、標準ANSI C言語へ小さいなながらもパワフルなセットで拡張したものと定義されています。Objective-Cは、C言語へ完全なオブジェクト指向プログラミングの能力をあたえ、またそうするのをシンプルかつまっすぐな方法で提供しています。
重要:この文章ではObjective-C言語自体については説明しません。Objective-Cを学ぶには、The Objective-C Programming Languageを参照してください。
すべてのオブジェクト指向プログラミングの言語と環境は、オブジェクト指向とは何なのか、オブジェクトの振る舞いはどうなのか、プログラムはどう構成されているのかについて、それぞれで異なった捉え方をします。
この文章の対象者
アプリケーションを作るのにオブジェクト指向プログラミング言語を使ったことがない人にとって、この文章はオブジェクト指向の開発へ慣れるのに役立つよう構成してあります。オブジェクト指向デザインのいくつかの影響を説明し、オブジェクト指向プログラミングとは実際どんな感じなのかを感じ取れるようになっています。
オブジェクト指向の環境を使ってアプリケーションを開発したことがあれば、どのようにObjective-Cを効果的に使うのか、またObjective-Cを使うプログラムがどのように構成されているかを本質的に理解するための基本的なコンセプトを得る助けとこの文章はなるでしょう。
この文章はC言語についてのものではないので、Cについていくらか既に知っていると仮定します。しかし、広範囲な知識である必要はありません。Objective-Cでのオブジェクト指向プログラミングは、ANSI Cでの手続き型プログラミングとは大きく異なるので、経験豊富なCプログラマーでなくてもそれほど困らないでしょう。
この文章の構成
この文章はいくつか章に分けられています。
- 「なぜObjective-Cなのか?」では、Cocoaフレームワークの開発言語として、なぜObjective-Cが選ばれたのかを説明します。
- 「オブジェクト指向のプログラミング」では、オブジェクト指向プログラミング言語の基本原則を解説し、数多くの用語を紹介します。これはオブジェクト指向プログラミングのテクノロジーの裏にあるアイディアを詳しく説明します。すでにオブジェクト指向プログラミングについて詳しければ、この章を読むことでオブジェクト指向とその用語についてObjective-Cでの考え方を身につけるために、この章を読むのをお勧めします。
- 「オブジェクトモデル」では、状態と振る舞い*ーオブジェクトーをつなぎ合わせた単位としてプログラムをどうやって考えたらよいかを説明しています。その後に、どのようにして特定のクラスに属すオブジェクトを特徴付けるのか、どのようにして他のクラスから状態と振る舞いを継承できるのか、そしてどのようにしてオブジェクトがほかのオブジェクトへメッセージを送ることができるのかついて説明します。(*behaviour, 動作とも)
- 「プログラムを構造化する」では、オブジェクトを繋がりを作ることでオブジェクト指向プログラミングを設計するのをどのように考えればよいか説明します。集約と分解という技術のついても紹介します。この技術は、異なった種類のオブジェクトの間で責任を分割します。くわえて、連携して動作するように設計されたオブジェクトのライブラリを定義する際でのフレームワークの役割についても説明します。
- 「プログラミングタスクを構造化する」」では、プログラマ間のコラボレーションとコードの実装に関係するプロジェクト管理の方法について解説します。(*collaboration, 共同作業)
- See Also
The Objective-C Programming LanguageではObjective-Cプログラミング言語について説明しています。
Objective-C Runtime Programming Guideでは、どのようにしてObjective-Cランタイムを扱えばよいのかを説明しています。
Objective-C Runtime Referenceでは、Objective-Cランタイムライブラリの構造と関数について説明しています。これらObjective-Cランタイムシステムとやり取りするインターフェイスをプログラムは使用できます。たとえば、クラスやメソッドを加えたり、読み込んだクラスに関してすべてのクラス定義のリストを取得できます。
Referred from
Object-Oriented Programming with Objective-C
Copyright
Copyright © 201 Apple Inc. All Rights Reserved. Terms of Use | Privacy Policy | Updated: 2010-11-15