Topへもどる >  Cocoa大辞典

Cocoa大辞典

Objective-Cに関するキーワードの説明を記述します。 技術書の目次のような感覚で見ていただけると助かります。
-メソッド インスタンスメソッド。対象となるクラスからインスタンスを作成した後に 呼び出せるメソッドです。クラスからオブジェクトを作成する 作業をインスタンス化といいます。インスタンス化する事によってそのクラスで処理できる変数等の領域を取得しているわけです。一方クラスメソッドはオブ ジェクトを作成しなくても呼び出す事ができます。インスタンスとオブジェクトの区別がなかなかつかない人がいますが、インスタンス化されたものはインスタ ンスといいますが(オブジェクトともいえます)クラスのままで実行できるオブジェクトはインスタンスとはいいません。
+メソッド クラスメソッド。インスタンス化する前に呼び出せるメソッドです。
+(void)initialize クラスの初期化を行うためのメソッド。 initがインスタンスの初期化を行うのに対して、initializeはクラスの初期化を行うのに使用します。
@class 識別子 @classの後に記述された識別子を明示的にクラスと宣言する。 この記述を行う事で対象となるクラスが宣言してあるヘッダをインポートしなくても、インポートした事と同じ効果が得られる。 これは使用するクラスを明確にしたり、ビルドの時間を短くする効果がある。
@implementation ソース(クラス)を記述する部分です。
@interface クラスを定義する部分です
awakeFromNib nibファイルがロードされる際呼び出されるメッセージ(オブジェクト同士のやりとりをメッセージといいます。早い話が関数呼び出しです)またはメソッド。 nibファイルがロードされる際以下の順番に処理が呼び出されます。
  • init呼び出し
  • アウトレットのセット
  • awakeFromNibメソッドの呼び出し
delegade
(デリゲード)
委譲。あるクラスの動作の「判断」を外部のオブジェクトにゆだねるための機構のこと。 (詳しく説明してあるサイト  )
File's Owner アプリケーションの実行途中でnibファイルをロードする場合、nibファイルから読込まれるオブジェクトとすでに存在しているオブジェクトをなんらかの方法で接続する必要があります。 File's Ownerはこういった接続のために用意されているものです。
IBAction
(アクション)
voidと同等。ユーザインタフェースにおいて外部からちょっかいを出すときに呼ばれるメソッドを指定する型です。
id型 なんとObjective-Cではすべてのオブジェクトをこのid型であらわす事ができます。 これはオブジェクトをid型としておいて動的に判断し何かと都合がよいようにしているためです。 コンパイルをないがしろにしてまでも、こっちの方を選んだ。本当に便利にできているんですよこれが。
nibファイル 説明
self 自分自信を表します。メソッド関数が自分のクラス内にあったりするとselftをつけて呼び出します
sender メッセージを送ってきた相手の情報を知ったりセットしたりする時に使います。
outlets
(アウトレット)
アウトレットという言葉それとなくいろんなところで聞きます。 よくきくのはアウトレットモールですよね。 巨大なショッピングセンターのことですけど。 アウトレットには出口・はけ口などの意味があり、放出品や売れ残りの在庫品を割引価格で安売りをする店のことをいったりします。Cocoaの場合、壁につ いているコンセントを指しているみたいです???。このアウトレットはポインタになっていて、インスタンスと情報をやりとりするために使用します。
書籍によってはスロットという呼び方をしているものもあります。
アプリケーションタイプ 説明
インスタンス クラスは単なるプリンを作成する型のようなものでプリンそのものではありません。 我々が作成したいプログラムはまさにプリンで???。 なんか変な話になてきてますが。 型からプリンを作成する作業をインスタンス化といいます。 そして出来上がったものをプリン。。いやインスタンスオブジェクト。またはただ単にインスタンスといいます。
セレクタ メソッドの名前をあらわす文字列をセレクタという。
カテゴリ クラスが持つメソッドを分割できる機能。たとえば大きなクラスに書かれたたくさんのメソッドを2つのファイルに分別し読みやすくする事ができる。 しかしっ!。カテゴリのもっとすごいところは既存のクラスにメソッドを追加する事ができる。 Javaなどではそういったことはできないので既存にあるクラスを継承して新規にクラスを作成し その新規クラスにメソッドを追加することになる。 Objective-Cはダイレクトにメソッドを追加する事ができるのでオーバヘッドが少なくなりプログラムの修正も最小で済ませることができる。