ぐぅたらな活動

管理人の仕事・活動等で得た知識を残す為のブログ

6月 6th, 2011

Objective-C 基本(1)

趣味, by 管理人.

こんにちは。

Objective-Cでまとめておかないと忘れてしまうので、いつでも見れるようにまとめておきます。
参考資料を元にして書かせていただいているところが多々あります。


■オブジェクト指向
手続き型のプログラミング言語による開発では、ソフトウェアが大規模になるにつれ、機能の再利用、追加、拡張に課題があることが認識されてきました。
C言語のプログラムでは、プログラムで使われる変数の数が増えるにつれて、プログラム自体が複雑で見通しが悪くなる傾向があります。これに対し、機能を中心とした考え方から、オブジェクトを中心とした考え方が注目されるようになります。
オブジェクトとして認識できる単位に属性を持たせ、オブジェクト間でメッセージの交換を行うことにより、オブジェクトを振る舞わせるという考え方です。各々のオブジェクトは、自分自身の属性と振る舞いに注意を払えばよく、ソフトウェアが大規模になった場合にも影響範囲を小さくできます。

■オブジェクトとクラス
クラスを定義すると、コンパイラによって、そのクラスの作り方を知っている『クラスオブジェクト』が作られます。
クラスオブジェクトによって作り出されるオブジェクトが、クラスの『インスタンス』です。プログラムはインスタンスを操作し、システムとして動作します。
インスタンスは、クラスに定義されている属性とメソッドを同じように持っていますが、インスタンス化されるときの属性の指定により、異なる属性値を持っています。

以下で、Objective-Cについて大雑把に見ていきます。
■メッセージとメソッドの呼び出し
クラスのインスタンスに何か処理を依頼するには、メソッドを呼び出すためのメッセージをクラスのインスタンスに送信します。

[インスタンス メッセージ]

引数を取らないメソッドの場合

[インスタンス メソッド名]

引数を1つ取るメソッドの場合

[インスタンス メソッド名:引数1]

引数を2つ取るメソッドの場合

[インスタンス メソッド名:引数1 ラベル:引数2]

■型とキーワード

定義
id オブジェクト
Class クラスオブジェクト
SEL セレクタ
IMP idを返すメソッド実装へのポインタ
BOOL ブール値(YES|NO)

キーワード 定義
nil nullオブジェクトポインタ(id)0の定数
Nil nullクラスポインタ (Class)0の定数
NO falseブール値 (BOOL)0の定数
YES trueブール値 (BOOL)1の定数

■演算子

+ – * / % 算術演算子
< > <= >= == != 比較演算子
! && || 論理演算子
++ – インクリメント デクリメント
& | ^ ~ 論理演算子
<< >> シフト演算子
= += -= *= /= %= <<= >>= &= |= ^= 代入演算子
() 型キャスト
* ポインタ
& アドレス
? : 三項演算子
sizeof sizeof演算子

■配列

type name[] = {}

■分岐

if 2方向分岐
else if 多方向分岐
switch 多方向分岐

■反復

for 指定回数反復
while 前判定型不定回数反復
do while 後判定型不定回数反復
break 反復脱出
continue 反復スキップ

■変数の型

char 文字
double 実数(64bit)
float 実数(32bit)
int 整数(32bit)
long 整数(32bit)
short 整数(16bit)
signed 符号あり
unsigned 符号無し

次はディレクティブなどの覚書をまとめます。

Back Top

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です