今回は開発言語のObjective-Cの特徴について
新規プロジェクトを作成するとプロジェクト名.m、プロジェクト名.hというファイルが自動生成されます。
それぞれのファイルはデフォルトでコードが書かれていますので今までのプログラミング経験によって、人それぞれ、C言語に似ている、さっぱりわからん、などの感じ方は違うと思います。
拡張子「.h」ファイルは定義記述するヘッダファイルとなります。
拡張子「.m」ファイルは実際の処理を実装するファイルとなります。
Objective-Cソースコードには「@」という、他の言語では見慣れない記号があります。
これはコンパイラディレクティブというもので、クラスの宣言や実装をコンパイラに対して明示するために使用します。
@interfaceで始まり、@endで終わるというのが基本形式です。
用途別にコンパイラディレクティブは用意されていますが、たとえば
@interface ・・・ クラスやインターフェースの定義を開始
@implementation ・・・ クラス実装の開始
@protocol ・・・ プロトコル宣言の開始
@end ・・・ クラス、プロトコルの宣言・定義を終了
@private ・・・ インスタンス変数の有効範囲をクラス内に限定
@protected ・・・ インスタンス変数の有効範囲をクラス内と派生クラス内に限定
@public ・・・ インスタンス変数の有効範囲について制限なし
その他にも例外処理をサポートする@try、@throw、@catchなど排他処理の制御に@synchronizedなどあります。その辺りは実装する上で調べてみてください。
クラスの定義は次のような構造をとります。
@interface クラス名 : 親クラス名
{
インスタンス変数宣言
}
メソッド宣言
@end
{
インスタンス変数宣言
}
メソッド宣言
@end
クラスの実装については
@@implementation クラス名
メソッド定義
@end
メソッド定義
@end
のように実装します。
他にもメソッドの呼び出し方やプロパティについてなどの「-」記号によるインスタンスメソッドなどの理解が実装する上での前提条件として必要になります。
とりあえず今日はここまで。
シンプルでイイっす!
返信削除あまりシンプルさを意識していなかったんですが
返信削除印象がよかったのなら今後もこういうまとめ方に
してみたいと思います。
確かに見慣れないね、@。
返信削除要点が絞れててシンプルで良いと思います。
クラスの実装のとこでimplementationだけ@が二個あるけど
そういうもんなんかな?
改めて見かえすと、ファイルの関係図とかなんでもよいので
返信削除絵があるともっと分かりやすく興味をひいたかも。