了解iOS 6开发第一篇:新的Objective-C语法
写在前面:由于iOS Developer Program的NDA的限制,这系列文章会等到iOS 6正式发布时,再push到github上。因此你看到的这些文章,很可能是我两、三个月前学习iOS 6的时候写下的,难免会有不准确的地方,但我持续修改。如果你发现了问题,请在文章下面留言或者发邮件给我。另外我没有看中文文档的习惯,所以翻译术语真的很困难,如果你知道怎么翻译更好,也请告诉我。
iOS 6是激动人心的,也带来了一些比较大的改变。最近在看WWDC 2012 Video Session,这一系列的文章,是我在学习iOS 6的一些新特性的时候写的一些笔记,也希望对其它中国开发者有帮助。
WWDC 2012,介绍了新的Objective-C的语法。这些语法依赖于LLVM 4.0编译器,由Xcode 4.4/4.5提供。主要有三点变化:
- Objective-C Literals & Boxing Expressions (Objective-C字面量 & 表达式装箱)
- Collection Subscription (集合下标)
- Automatic Property Synthesis (自动属性综合,Synthesis怎么翻译?)
Objective-C Literals & Boxing Expressions
LLVM 4.0之前:
|
|
LLVM 4.0之后:
|
|
Collection Subscription
LLVM 4.0之前:
|
|
LLVM 4.0之后:
|
|
Automatic Property Synthesis
LLVM 4.0之前:
|
|
LLVM 4.0之后:不需要使用@synthesize directive了
如何将代码转换为Modern Objective-C
Xcode 4.4+,Edit->Refactor->Convert to Modern Objective-C Syntax
少写了很多代码,可读性也提高了很多(我被nil哨兵坑了好多次- -!)。Less code, less bug.
参考资料:
附小广告一则:唱吧iOS团队诚招iOS工程师,推荐成功即奖励6000元现金或iPhone 6一部,详见这篇blog。