objective-c – 我不应该只定义#define NSFM [NSFileManager defaultManager]而不是每次都写出来吗?

objective-c – 我不应该只定义#define NSFM [NSFileManager defaultManager]而不是每次都写出来吗?,第1张

概述有一个内置的快捷方式NSApp,有什么理由我不应该为NSFileManager添加一个? #define NSFM [NSFileManager defaultManager] 我认为省略这将使我的代码更清洁,我看不到保持它的任何好处.(我计划从现在开始在我的所有项目中执行此 *** 作,因此它不会模糊不清.) NSFileManager *fm = [NSFileManager defaultManag 有一个内置的快捷方式NSApp,有什么理由我不应该为NSfileManager添加一个?

#define NSFM [NSfileManager defaultManager]

我认为省略这将使我的代码更清洁,我看不到保持它的任何好处.(我计划从现在开始在我的所有项目中执行此 *** 作,因此它不会模糊不清.)

NSfileManager *fm = [NSfileManager defaultManager]
解决方法 你为什么不只使用局部变量?

NSfileManager *fm = [NSfileManager defaultManager];// use fm...

或者更好的是,将文件管理器注入方法参数:

- (voID)myMethod {  //using [NSfileManager defaultManager]}

- (voID)myMethoDWithfileManager:(NSfileManager*)fm { //usin fm}

由于defaultManager是一个单例(实际上是全局的),因此它使测试变得非常困难.注入依赖项可以节省您在方法中键入(如您所愿)并使单元测试更容易 – 您可以注入测试double而不是defaultManager.

最后,Cocoa和Objective-C通常倾向于使用简短代码来支持显式代码.哲学基本上是使用更详细的名称使代码更容易阅读(从而维护).这种理念一直延伸到Objective-C的选择器样式,并带有交错的命名参数.除非您真的无法处理额外的输入(并且Xcode的代码完成对您不起作用),否则请坚持使用现有名称.在罗马的时候……

总结

以上是内存溢出为你收集整理的objective-c – 我不应该只定义#define NSFM [NSFileManager defaultManager]而不是每次都写出来吗?全部内容,希望文章能够帮你解决objective-c – 我不应该只定义#define NSFM [NSFileManager defaultManager]而不是每次都写出来吗?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/1006091.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-22
下一篇 2022-05-22

发表评论

登录后才能评论

评论列表(0条)

保存