Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/date/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Objective-C类命名指南_Objective C - Fatal编程技术网

Objective-C类命名指南

Objective-C类命名指南,objective-c,Objective C,嘿, 如果我的应用程序被称为“媒体播放器”,那么给类命名是否是最佳做法:MPSong、MPSinger、MPAlbumsViewController 所有大写两个字母的前缀都是苹果保留的,所以你不应该使用它们。但除此之外,这个问题没有明确的答案——这是个人品味的问题。我个人对库类使用前缀,但对应用程序类不使用前缀。我不知道我命名类的方式是否是最佳做法,但如果我有一个项目特有的类,我只给它一个有意义的名称,并以大写字母开头。然而,如果它是一个我打算重用的类,我可能会给它一个前缀,就像我的公司或我自

嘿,

如果我的应用程序被称为“媒体播放器”,那么给类命名是否是最佳做法:MPSong、MPSinger、MPAlbumsViewController

所有大写两个字母的前缀都是苹果保留的,所以你不应该使用它们。但除此之外,这个问题没有明确的答案——这是个人品味的问题。我个人对库类使用前缀,但对应用程序类不使用前缀。

我不知道我命名类的方式是否是最佳做法,但如果我有一个项目特有的类,我只给它一个有意义的名称,并以大写字母开头。然而,如果它是一个我打算重用的类,我可能会给它一个前缀,就像我的公司或我自己的缩写一样,所以我认为这个类是为了重用

使用前缀的另一个原因是,如果您在同一个项目中由于标题相似而使用相同的名称,但功能不同,并且可能会混淆。例如,如果您决定将一个名为state的类设置为您所在的州。然后,您希望创建一个名为state的类,表示应用程序的当前状态。最好使用像ADState和APState这样的前缀(AD表示地址,AP表示应用程序)。在其他框架中,它们有做同样工作的名称空间

苹果公司在这方面有很多建议


简言之,鼓励为类和协议名称使用前缀,尤其是在开发框架时。然而,苹果已经在iPhone上使用了MP前缀,所以你可能想选择另一个。

Apple使用了两个字母大写前缀。@dreamlax:在WWDC'10上,苹果的一位工程师建议不要给自己的类加前缀,说苹果为自己保留了两个字母的前缀。请看@mipadi:我本来打算今年去的,但我的老板说没有必要,因为一位苹果工程师告诉他没有必要去(我们只处理Mac OS X开发的一个非常具体的部分,自10.4以来没有太大变化)。是时候坐下来看看我错过的所有东西了。@dreamlax:我之所以知道这一点,实际上是因为我对苹果公司在两个字母前缀上的立场发表了类似的评论,还有人把我指给了这段视频。我手头有这个链接,所以我想我应该重新发布它。(这只是视频的一小部分,但如果你是Mac或iPhone开发人员,整个演讲都会很有帮助。)@JeremyP:找不到这样的官方文件。我想我一定是从WWDC的视频中得到了这些信息。但不使用两个字母前缀应该是常识——我以前见过人们不得不重命名他们的类,因为苹果发布了一个新的框架,其前缀完全相同。你在原来的问题中看到了确切的问题。El Gusto想使用Apple MediaPlayer框架使用的前缀MP,可能是因为他不知道。最好避免使用两个字母前缀。