我的编码团队已经选择实现了对所有实例ivars使用@ property的编码标准.对于公开的事物,我们当然在我们的.h文件中定义它们,但对于我们的私有事物,我们在我们的实现上方的接口中的.m文件中定义它们.
self.myvar = whatever或如此,这是否重要[self setMyvar:whatever]?它对我来说似乎并不重要,在我们的代码库中似乎有很多混合方式. self.myvar = whatever
Run Code Online (Sandbox Code Playgroud)
是语法糖
[self setMyvar:whatever]
Run Code Online (Sandbox Code Playgroud)
他们完全是一回事.没有任何区别.
正如其他人所指出的那样,foo.bar并且[foo bar]是等价的(除了对前者的额外类型要求,但这是次要的).
FWIW,我们的团队决定完全避开点语法.动机是避免歧义; 消息发送始终看起来像消息发送,而.s总是用于访问结构成员.
我们还限制我们仅使用@{}和@[]创建集合.所有访问都通过做indexOfObject:,objectForKey:等...
同样,除了ObjC和C++之间的几个边框文件之外,我们还使用ARC.我们为所有DEBUG构建打开了静态分析器,所有警告都被视为硬错误.我们也开启了几乎所有实用的编译器警告(有一些根本不实用).
| 归档时间: |
|
| 查看次数: |
126 次 |
| 最近记录: |