看板 MacDev 關於我們 聯絡資訊
※ 引述《Devon22 ()》之銘言: : 最近更新Leopard後也把XCode 3.0裝了上去 : 不過對於這次新增的Objective-C 2.0該怎麼使用卻毫無頭緒.. : 有沒有大大能分享這方面的資訊呢? : 另外再請教一個問題 : 不曉得我有沒有理解錯誤? : Objective-C 2.0 只要配合10.4的SDK還是可以寫出10.4可以跑的程式嗎? : 應該不會有只能相容於10.5的情況吧? 就是會喔~很多 feature 用了以後就是 Leopard only 了。 objc-2.0 官方文件: http://tinyurl.com/yw3t Garbage Collection: 不用再寫 release / autorelease 了... Property: 支援 dot syntax, my.money = 100 ,自動 accessor 生成,而且是 atomic 的: @interface Human : NSObject { int _money; } @property(readwrite) int money; @end @implementation Human @synthesize money=_money; @end 這邊語法實在太雜了,請參考上面的文件 Fast Enumeration: for (NSString *s in arrays) {} 速度很快! Formal Protocol: 現在有 @require 和 @optional 兩個關鍵字 Category: 現在有 anonymous category (private). @interface ClassName () 更好的安全機制 可限制直接取用 ivar try/catch block @try {} @catch () {} 有的沒的還蠻多的... 現在我仍然堅守 objc-1.0 ,沒辦法,因為要 target 10.4 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.31.3
Blueshiva:所以在10.5上也可以純用Obj-C 1.0來寫相容於10.4的程式? 11/01 11:28
yllan:可,不過之前 OV team 那邊的經驗是可能會出一點狀況 11/01 12:12
yllan:也許是那時 leopard 還在 beta 的關係... 11/01 12:13
Devon22:那麼原來的10.4程式要改用10.5 SDK才能使用obj-c 2.0囉? 11/01 15:51
yllan:是啊,ObjC-2.0 只能在 leopard 上 run, 當然用 10.5 sdk 11/03 09:24
jclin:實在很沒道理...就好像說 GCC4 不能用在 RH9 一樣 11/06 15:58
jclin:不過主要還是apple不釋放出那些 obj-c 2.0 lib 11/06 15:59
Blueshiva:感覺這次10.5核心改了很多東西,向前相容性出了不少問題 11/06 21:19