Objective-C 命名规范浅谈

Objective-C 命名规范浅谈

对于易维护的代码而言,命名规则非常重要。    
<br />                    — by Google style guide

如开篇那句话,遵循命名规范不仅使得代码可读性提高,更能体现一个合格程序员的素质

为什么这么说

  1. 程序员写代码不是只为自己写(这点非常重要).很多人在开始写代码的时候只专注于功能,认为完成功能就是完成了大部分的任务,其实还差的很远,且不说代码质量,就蹩脚的命名方式,奇怪的函数名称就够维护人员,或调用者tou… 这也是大家为什么要统一命名,形成规范的最初原因。

  2. 好的命名,或者遵循了规范的命名除了可以帮助其他programmer更方便的阅读和维护你的代码,更能帮助开发者本身认识到你在开发一项什么功能,是属性相关还是动作相关,这些在命名OC规范里都有提及.其实,当开发者清楚地知道自己在开发一项什么功能的时候,利用自然语言中的动词,连词就可以写出符合规范的名称,这也是OC的一大优势。有的人嫌弃OC语法冗赘,这的确是事实,有时候初始化一个变量就要3行代码,但代码块读起来就像散文一样,不需要太多的代码注释。

  3. 作为一个有追求的程序员,应该时时刻刻注意和官方文档要求靠拢,apple中api的命名,class中delegate的命名都是有规范的,勤看,勤记,那样一段时间下来你写的代码就会向官方文档一样漂亮。其他开发者调用时也会很舒服.

对待程序,如果你真正热爱,请培养你的代码洁癖

====================分割线=====================

自己在程序里遇到的命名规范

命名的基本准则相信大部分人都知道:清晰,一致,无自我参照。命名版式也一般遵循驼峰命名或者Pascal,这里我们都采用驼峰命名法.在我们的项目中,我遇到最多的就是函数,类的命名问题。

  1. 类的命名不需要的体现技术细节,没有人去关注你这个类到底是怎么实现的,调用者只关注暴露出的接口即可。例如现在写一个功能,是做照片浏览的,采用嵌套scrollview实现,里面的那层scrollview命名该怎么命名呢?我一开始写的是WQSingleScrollview,组长说命名很奇怪,我不关注你怎么实现的,逻辑上它是一个什么东西,就怎么命名.说白了他就是个pageView,后来就改成WQPhotoPageView。

  2. 函数命名。第一,你必须清楚地知道这个函数是做什么的,是实现动作或者事件的就用动词开头,例如是拉取数据就用build或update开头。初始化的就已init开头。如果参数多,还可以用and,with这些连词或是副词连接各个item。

说明:由于Cocoa函数还分为存取函数(Accessor Methods)、委托函数(Delegate Methods)和集合函数(Collection Methods),每种函数都有其详细的规范,请详细参阅《Apple Coding Guidelines for Cocoa》。

    //关键字为属性,不应该使用and 
    - (int)runModalForDirectory:(NSString *)path andFile:(NSString *)name andTypes:(NSArray *)fileTypes; 
    //关键字为表示action,使用and 
    - (BOOL)openFile:(NSString *)fullPath withApplication:(NSString *)appName andDeactivate:(BOOL)flag; 
  1. 除了命名的规范,代码的版式也非常重要。OC的语法给人冗长的感觉,所以排版很重要。例如:
    如果一行有非常多的参数,更好的方式是将每个参数单独拆成一行。如果使用多行,将每个参数前的冒号对齐。

    - (void)doSomethingWith:(GTMFoo *)theFoo
                       rect:(NSRect)theRect
                   interval:(float)theInterval
      {
         ...
      }                                             
    

当第一个关键字比其它的短时,保证下一行至少有 4 个空格的缩进。这样可以使关键字垂直对齐,而不是使用冒号对齐:
– (void)short:(GTMFoo *)theFoo
longKeyword:(NSRect)theRect
evenLongerKeyword:(float)theInterval
{

}

以上都是错的

虽然有代码规范,但写代码的毕竟是一个个活生生的个体,不可能被这些条框限制死,最终要还是养成自己的一套代码规范,遵循了基本的守则,让代码整洁,易懂即可。

    原文作者:尘絮缘12138
    原文地址: https://www.jianshu.com/p/cf4a6023c4cb
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞