読者です 読者をやめる 読者になる 読者になる

Pebble's Diary

プログラマーの作業メモ

NSString型のプロパティ

Objective-CでNSString型のプロパティににはstrong属性ではなく、copy属性を使った方がよいという記事をみかけますが、 私はデフォルトのstrongのまま使います。
copy属性を使った方がよい理由として、NSMutableStringの値を設定したときに、copy属性の方が安全だからのようです。 が、そもそも、NSMutableStringをNSStringに渡すときは、メソッド内部で宣言したNSMutableStringを加工した最終結果を、 メソッドの戻り値で渡すことが多いので、そのNSMutableStringが後から変更されることはない場合がほとんどです。 そんなレアケースのために、省略したときに設定されるstrongではなく、わざわざcopy属性を設定するのは手間だと思います。
NSMutableStringは使わずにNSString使えばいいんです。