08/02/10 20:09:37 MQiiMPM60
たしかパフォーマンスは落ちるかと
163:名称未設定
08/02/10 22:44:37 Fr8iJ/eI0
コンパイラでインライン化とかしてくれないの?
164:名称未設定
08/02/10 23:28:22 mNbPLIG00
>>162
そうなの?アクセサメソッドのコードを生成してくれるんじゃ
ないの。速度は変わらないと思ってたけど。
165:名称未設定
08/02/11 00:04:13 rw6fzeGL0
いずれにせよ、既存のアクセッサをわざわざ書き換える必要は無いという事でFA?
166:名称未設定
08/02/11 00:14:36 Mw0lyuru0
@property id value;
とか書かなくても、obj.valueなどのようなプロパティー構文は使えるよ。
ただ、Xcodeが入力を補完してくれないだけで。
167:名称未設定
08/02/11 00:32:16 WABBHTZZ0
でも、Obj-C 1.xのころは、アクセッサはスレッドセーフでも同値
チェックありでもなかったじゃない?
Obj-C 2.0はGC導入に伴い、いろいろ余計なことするようになった
分遅くなったと思うんだけど。
Obj-C 2で速度出すなら、アクセッサはきちんと書くか、少なくとも
属性書き足さないといけないのでは?
168:名称未設定
08/02/11 02:32:07 DHyabWpb0
誰かきちんと書いて速度比較してないのかな。
169:名称未設定
08/02/11 09:51:52 qHxPQa8p0
実際のところアプリの内容によって違う
俺のメインのプロジェクトのは書き換えたら遅くなったから使うのやめたよ
170:名称未設定
08/02/11 09:52:35 qHxPQa8p0
でも特殊なことしてない限り大丈夫だと思います
171:名称未設定
08/02/11 13:01:17 bv2jVL8f0
UI の NSTextField に NSNumberFormatter を設定して、
AppController 内の NSNumber のメンバにバインディングさせているのですが、
その NSTextField に一旦数字を入力し、その後それを削除してリターンを押すと、
どこからともなく「フォーマットエラー(変更内容を破棄)(OK)」というパネルが
現れ、NSTextField をブランクのままにすることが拒絶されます。
このとき、このパネルを表示させずに、NSTextField はブランクのまま、単純に
NSNumber に nil を設定するには、どうすれば良いでしょうか。
172:名称未設定
08/02/11 15:34:22 nf9aGNMi0
ヌル時の動作がバインディングのインスペクターで設定出来たような。
か、やはり空白時はヌルで更新するコードをかますか。
173:名称未設定
08/02/12 04:19:53 IXJXTrlG0
TigerでSafariStandの「メタルを除去」みたいなアピアランスって
どうすればできるんでしょうか
174:名称未設定
08/02/12 04:29:29 NDM2BdXw0
>>173
setBackgroundColor:
175:名称未設定
08/02/12 16:17:32 YacaCMuF0
UIKitにNSBrowserみたいな階層表示できるviewはつきますかね?
176:名称未設定
08/02/12 16:30:21 YacaCMuF0
誤爆スマソ
177:名称未設定
08/02/12 18:52:09 41YUEpKu0
秒をhh:mm:ssに変換するのって自力で書くしかないですかね。
178:名称未設定
08/02/12 22:04:34 n90Q8BNy0
[NSString stringWithFormat:@"%02d:%02d:%02d",(s / 3600),((s / 60) % 60),(s % 60)];
s は int として、こんな感じか?
179:名称未設定
08/02/12 22:20:36 OwQ15KHvO
それを自力で書くと言うんでは。
Formatterとか使いたいんじゃないの、何となくだけど。
180:名称未設定
08/02/12 23:25:27 nMEwufKb0
>>161
Objective-C2.0のプロパティーのパフォーマンスについて調べてみました。
まず、
obj,value = @"hello";
a = obj.value;
は、単純に
[obj setValue:@"hello"];
a = [obj value];
に変換されるだけで、パフォーマンス的な問題は発生しません。
次に、@synthesizeが生成するアクセッサのコードは、@propertyの属性が、
assignのものはパフォーマンス的に全く影響のないコードが生成されます。ただし、GC前提ということになりますが。
copyとretainは、基本的にスレッドセーフなコードが生成されます。つまり、内部でspin_lockの処理が行われます。それ以外は、特にパフォーマンスに影響する部分はなさそうです。
181:名称未設定
08/02/12 23:34:01 SpY+Nhzt0
>>177
[NSDate descriptionWithCalendarFormat~] なんかそうじゃないかな
ちらっとリファレンス探ってみただけで試したりしてないけど
dateコマンドと同じ様なのがBSDレベルでもありそうな気がするけど
182:名称未設定
08/02/13 00:36:31 hLcBAx030
>>177
俺以前NSCalendarDateでやったけど、NSDateと使いやすい方でやればいいと思う。
「Dates and Times Programming Topics for Cocoa」ってそのまんまの
ドキュメントがあるよ。