2014年1月24日金曜日

Foundationフレームワークの記法

 それほど目新しい内容ではありませんが、昔からiOS開発に携わっている方ほど無駄なコードを書くのに慣れてしまっているかと思いますので、比較的よく使うもののみまとめてみました。

NSString
@"hoge"
NSStringについては昔からこれですね。UTF-16。
余談ですが、NSStringにもstringByAppendStringという連結メソッドがありますが、これは元のインスタンスを一度破棄し、新たにメモリを確保するため、連発するとパフォーマンスが劣化します。
文字連結を行う際は必ずMutableで行いましょう。


NSNumber
@(1)
ついつい、[NSNumber numberWithInt:1]とか書いてしまいますが、intもfloatもこの記法でNumber化できます。


NSArray
@[@"a",@"b"@"c"]
ARCのない時代を過ごしてきた人は[NSArray array]だけでautorelease書かなくていいんだ!なんて素敵!なんて思った時代もあったかもしれませんが、今や@[]だけでOKです。

NSDictionary
@{@"key" : @"value", @"key2" : @"value2"}
こちらもArrayと同じような記法ですね。
余談ですが、NSMutableDictionaryの値のセットメソッドとして、setObject:forKeysetValue:forKeyがありますが、後者の方はnilを受け付けてくれます
というか、受け付けてkeyごと消してしまいます
前者の方はnilが設定されるとクラッシュするので、ケースバイケースで使い分けるといいですね。

他にも@propertyの@synthesizeが省略可能になったりとか、コンパイラが進化するごとにコーディングの記法も2、3年前と比べて大きく変わりました。
たまにしか使用しないコードはともかく、頻繁に使用するような上記のクラスに関する記法は新しくなるたびに習熟していく方が、手間はかかっても結果的にコストダウンに繋がると思います。

というわけで新しい記法が出たら積極的に覚えて慣れていきましょう!
今回は以上ですー。



0 件のコメント:

コメントを投稿