|
4
|
| zekel lepture · 技术社区 · 15 年前 |
|
|
1
5
为什么不使用局部变量呢?
或者更好的是,将文件管理器作为方法参数插入:
变成
由于DefaultManager是一个单例(实际上是一个全局的),它使得测试非常困难。注入依赖项可以节省您在方法中键入的内容(根据您的需要),并使单元测试更加容易,您可以注入一个测试双精度而不是默认管理器。 最后,Cocoa和Objective-C通常倾向于使用显式代码而不是短代码。其基本原理是,使用更详细的名称可以使代码更容易阅读(从而便于维护)。这一理念一直延伸到Objective-C的选择器样式,带有交错的命名参数。除非你 真正地 无法处理额外的输入(Xcode的代码完成对您来说不起作用),请使用现有的名称。在罗马的时候… |
|
|
2
3
如果它能让你的代码更干净,我完全赞成。请记住,任何其他必须阅读您的代码的开发人员都不会
立即
知道什么
我建议使用更具描述性的名称:
更新: 见 Barry Wark's answer 对于测试方面的一些非常好的观点。 |
|
|
3
1
我每次都会使用一个局部变量,因为使用defaultmanager不是线程安全的。如果在任何时候你开始在你的应用程序中使用线程,你可能最终会发现很难发现的错误,并且直到你运行时才知道为什么。 this bit of documentation . |
|
|
Noah H · 如何通过终端或Swift禁用三指轻拍手势? 7 年前 |
|
|
Dmitry Serov · 货币数字格式-数字为整数时省略分数部分 7 年前 |
|
|
Duny · ObjC日期始终返回2017年12月25日 7 年前 |
|
|
Jan Kaiser · NSButton不调用其操作 7 年前 |