なぜObjective-Cなのか?(Objective-Cでのオブジェクト指向のプログラミング)

Last-modified: 2014-01-25 (土) 15:19:17

なぜObjective-Cなのか?

Objective-C言語はさまざまな理由から選ばれました。第一に、そしてもっとも重要な理由は、それがオブジェクト指向言語だからです。Cocoaフレームワークでパッケージ化されている機能性、オブジェクト指向の技術でのみもたらされます。第二に、Objective-Cは標準ANSI Cの拡張に過ぎないで、すでに存在するCプログラムをシステムフレームワークがオリジナルに施されていたすべての機能を機能を損なうことなく適応させられます。Objective-CはCを内包しているので、Objective-Cを使わなくてもすべてのCの恩恵が受けられます。オブジェクト指向の方法で何かをするのか(たとえば新しいクラスを定義する)、手続き型プログラムテクニックへ切り替えるのか(クラスの代わりに構造体と関数を定義する)を選択できます。(*package、動詞、内包する、パックする)

さらに、Objective-Cは基本的にシンプルな言語です。文法は小さく、明確で、簡単に習得できます。オブジェクト指向プログラミングは自己説明性と抽象的な設計を重視しているので、新しく学ぶプログラマーは急激な学習カーブをしばしば示します。Objective-Cのように上手に構成された言語は、熟達したオブジェクト指向言語のプログラマとなるのにそれほど困難は伴いません。

Cを基にしたほかのオブジェクト指向言語とくらべて、Objective-Cはとても動的です。コンパイラはオブジェクト自身がランタイムでどのよう使われるかについて非常にたくさんの情報を保存しています。コンパイル時に行わない判断は、プログラムが実行されるまで延期されます。動的であると言うことは、Objective-Cプログラムを並外れて柔軟で強力なものにしています。たとえば、ほかの一般的なオブジェクト指向の言語では獲得するのが難しい二つの利点をもたらします。

  • Objective-Cは、ダイナミックバインディングへ開かれたスタイル、つまり対話的なユーザインターフェイスのために簡素なアーキテクチャを搭載できるスタイルをサポートします。メッセージはレシーバのクラス、またはメッセージの名前にすら束縛される必要はないので、ソフトウェアフレームワークは、ランタイム時にユーザの選択ができるようにし、ディベロッパーが設計の段階で自由に表現するのを許可して
  • 動的であることで、洗練された開発ツールを組み立てられます。ランタイムシステムへのインターフェイスは、実行中のアプリケーションに関する情報へアクセスできるので、開発ツールは、状況をモニターし、割り込み、隠れている構造とObjective-Cアプリケーションの動作を明らかにすることができます。
 

"歴史的なメモ":プログラミング言語として、Objective-Cには長い歴史があります。1980年代初頭にthe Stepstone Company で Brad Cox と Tom Love によって創られました。1980年後半にNeXT Computer Inc.へライセンスされ、のちにCocoaとなる the NeXTStep frameworks が開発されました。NeXTはこの言語をいくつかの方法、たとえばプロトコルの追加、で拡張しました。

 

Referred from

Object-Oriented Programming with Objective-C, Why Objective-C?

 

Copyright

Copyright © 201 Apple Inc. All Rights Reserved. Terms of Use | Privacy Policy | Updated: 2010-11-15