Objective-C“私有”方法的命名约定是什么?

Objective-C“私有”方法的命名约定是什么?,第1张

概述继承其他开发人员的代码让我坚信,通过Class Extension可以保持尽可能多的消息传递到类的公共接口中。我也坚信采用特殊的命名约定,用于一个类的私有的,实现特定的成员。我真的很喜欢能够一眼就知道发送了哪些消息,在实现上下文中引用了什么成员,并不意图公开使用,反之亦然。如果没有别的,它使得类的整体语义更容易让我掌握得更快,这是值得的。 除了我的理由之外,我已经编写了一系列私有方法的船只,但是我 继承其他开发人员的代码让我坚信,通过Class Extension可以保持尽可能多的消息传递到类的公共接口中。我也坚信采用特殊的命名约定,用于一个类的私有的,实现特定的成员。我真的很喜欢能够一眼就知道发送了哪些消息,在实现上下文中引用了什么成员,并不意图公开使用,反之亦然。如果没有别的,它使得类的整体语义更容易让我掌握得更快,这是值得的。

除了我的理由之外,我已经编写了一系列私有方法的船只,但是我从来没有真正想出一个我真正喜欢的命名模式(像我这样有争议的ivar_ ivars约定)。值得注意的例子:

@interface myClass()// I like this,but as we all kNow,Apple has dibs on this one,// and method name collisions are nasty.- (voID)_myPrivateMessage;// The suffix version promoted by Google for ivars doesn't really translate// well to method names in Objective-C,because of the way the method// signature can be broken into several parts.- (voID)doWork_; // That's okay...- (voID)doWork_:(ID)work with_:(ID)something; // That's just ugly and tedious...- (voID)doWork_:(ID)work with_:(ID)something and_:(ID)another; // My eyes...// This version is suggested by Apple,and has the benefit of being officially // recommended. Alas,I don't like it: The cAPItal letter is ugly. I don't like // underscores in the mIDdle of the name. Worst of all,I have to type three characters // before code-sense does anything more useful than inform me that I am tyPing.- (voID)BF_doWork;@end

在这一点上,有一种不同的方式,我可以通过我的方式来改变我的私有方法名称,但是我不想提出一些事情,我会首先对可能不知道的任何流行的惯例进行调查。那你用什么呢

解决方法 我使用两个层次的私有方式:稍微私密,非常私密。稍微私有的方法是可以变得公开的方法,但目前不是。它们通常是我在内部使用的便利方法,我通常不会投入太多的保护,除非我决定公开。对于非常私密的方法,我忽略苹果并使用下划线前缀。由于99%的代码是在我创建的类中,我通常在我的类名上有前缀,因此命名问题的机会很小。当我没有添加代码时,我很少使用私有的方法,但是在我做的罕见的场合添加一个短的前缀。 总结

以上是内存溢出为你收集整理的Objective-C“私有”方法的命名约定是什么?全部内容,希望文章能够帮你解决Objective-C“私有”方法的命名约定是什么?所遇到的程序开发问题。

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

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

原文地址: http://outofmemory.cn/web/1039418.html

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

发表评论

登录后才能评论

评论列表(0条)

保存