airなど、クロスプラットフォームのフレームワークを使っているため、たまにObjective-Cを使う場面でなかなか文法などを思い出せないときがあります。そんなとき、ひとまず読める程度に思い出すために、Objective-C固有の文法などをまとめていっています。Objective-Cは基本的な文法はC、C++、Javaなどと同じため、それらと異なる部分を抜き出して書いています。上記のように他言語を使うことが多く、Objective-Cでがっつり開発することはないため、各々の項目についての詳しい説明は省いています。引用符と共に最初に「@」をつけるとNSStringという型になります。基本的に文字列はこれを使います。ログ出力はNSLogを使います。可変引数をとり、printfなどと同様のフォーマットが使えます。文字列型はたいていNSStringを使うので、%sではなく%@を使います。クラス名:親クラス」とします。NSObjectは全てのクラスの元となるクラスなので、継承させるべき特定のクラスがないなら、とりあえずこれを継承させておくと便利です。「@interface」で囲まれている中で定義します。「public」「protected」「private」などのアクセス制限が使えます。「@property」を使うと、先頭に「_」(アンダーバー)がついたプライベート変数が定義され、同時にsetter、getterも定義されます。いう変数が自動で定義され、setter、getterも定義されるので、ドット記法でプロパティにアクセスできるようになります。いった記法が可能になります。「@property」で「readonly」を指定して読み取り専用変数にしたりも出来ます。使われる「atomic/nonatimic」はスレッドセーフかどうかの違いです。他にstrongは強い参照(参照が他で消されてもデータを保持)、copyはオブジェクトのコピーをとって保持(参照渡しではなく、実体が渡される感じ)します。「@interface」にプロトタイプ宣言、「@implementation」に実装を書きます。先頭の「-」はインスタンスメソッドを表します。「+」だとクラスメソッドになります。クラスによって違う事もありますが、インスタンス化はたいてい以下のようにします。allocがメモリの確保、initがコンストラクタです。インスタンス変数へのアクセスはCの構造体やC++のインスタンスのように「->」でアクセスできます。プロパティ定義がなされていると、「.」(ドット)でもアクセスできます。