IBAction函数的命名约定

Luc*_*uke 22 iphone ibaction ios

我正在做另一个iOS应用程序,我想知道是否有任何关于如何命名我可以遵循的操作的命名约定或良好实践.我正在考虑用户例如触摸按钮时调用的函数的名称.

zap*_*aph 24

遵循Apple的指导方针.过去的好建议现已编入ARC(自动参考计数),并且必须遵循ARC生成正确的代码.使用这些指南可能会使您的代码面向未来,它确实适用于ARC!

Apple的指南 可可的编码指南

从方法命名部分:

使用小写字母开始名称并大写嵌入单词的第一个字母.不要使用前缀.

这些指南有两个特定的例外情况.您可以使用大写的着名首字母缩写词(例如TIFF或PDF)开始一个方法名称,并且您可以使用前缀来分组和标识私有方法

对于表示对象采取的操作的方法,请使用动词开始名称.

- (void)invokeWithTarget:(id)target;
- (void)selectTabViewItem:(NSTabViewItem *)tabViewItem
Run Code Online (Sandbox Code Playgroud)

不要使用"do"或"does"作为名称的一部分,因为这些辅助动词很少添加含义.此外,永远不要在动词之前使用副词或形容词.

如果方法返回接收者的属性,则在属性后面命名方法.除非间接返回一个或多个值,否则不必使用"get".

- (NSSize)cellSize;
Run Code Online (Sandbox Code Playgroud)

在所有参数之前使用关键字

- (void)sendAction:(SEL)aSelector to:(id)anObject forAllCells:(BOOL)flag
Run Code Online (Sandbox Code Playgroud)

在参数之前创建单词描述参数.

- (id)viewWithTag:(int)aTag;
Run Code Online (Sandbox Code Playgroud)


And*_*tle 5

在IBActions的命名约定方面,我没有遇到过具体细节.但是,如果您要遵循Apple似乎在其示例应用程序中设置的趋势,那么一些示例如下:

-(IBAction)cameraAction:(id)sender;
-(IBAction)done:(id)sender;
-(IBAction)takePhoto:(id)sender;
Run Code Online (Sandbox Code Playgroud)

希望这可以帮助.

  • 苹果的示例代码造成了如此多的不良做法。仅使用它来查看框架代码如何工作。*不要*从中采用编码风格或设计模式。 (3认同)

Tea*_*App 4

我想 Objective-C 中的任何方法名称都应该像阅读英文句子一样可读。下面说一下方法。

[fileWrapper writeToFile: path atomically: YES updateFilenames: YES]; 
// This is not a real example but purpose of sharing is to make sure 
   method name is readable, so programmers can actually read code and can
   have SmallTalk.
Run Code Online (Sandbox Code Playgroud)

当您从左到右阅读时,它可以帮助您阅读并解释它要做什么。

查看下面的链接,

http://cocoadevcentral.com/articles/000082.php

Jump on page No. 5 of 7
Run Code Online (Sandbox Code Playgroud)

已经给出了很多提示。更多技巧可以在苹果的开发者库中找到。

快乐编码