当前位置 > 主页 > 万和大讲堂 >


南京iOS开发培训:Objective-C命名规则

2015-11-06 11:47

  对于可维护的代码,命名规则非常重要。 在iOS开发中Objective-C的方法名往往十分长,但代码块读起来就像散文一样,不需要太多的注释修饰。


  1. 文件名


  文件的扩展名应该如下:


  ●   .h, C/C++/Objective-C的头文件


  ●   .m, Ojbective-C实现文件


  ●   .mm, Ojbective-C++的实现文件


  ●   .cc, 纯C++的实现文件


  ●   .c, 纯C的实现文件


  分类的文件名应该包含被扩展的类的名字,如:GTMNSString+Utils.h或GTMNSTextView+Autocomplete.h。


  2. 类名


  · 类名(及其category name和protocol name)的首字母大写,使用首字母大写的形式分割单词。


  · 在面向特定应用的代码中,类名应尽量避免使用前缀,每个类都使用相同的前缀影响可读性。


  · 在面向多应用的代码中,推荐使用前缀。如:GTMSendMessage。南京iOS开发培训


  3. 方法名


  ·  方法名的首字母小写,且使用首字母大写的形式分割单词。方法的参数使用相同的规则。


  ·  方法名+参数应尽量读起来像一句话(如:)。在这里查看苹果对方法命名的规范。


  ·  getter的方法名和变量名应相同。不允许使用“get”前缀。如:


  (id)getDelegate; // 禁止


  (id)delegate; // 正确


  ·  本规则仅针对Objective-C代码,C++代码使用C++的习惯。


  4.变量名


  Objective-C 是区分大小写的, 比如声明一个描述图片宽度的变量, pictureWidth 与 pictureWIDTH 或 PictureWidth 是不一样的。 为了与大多数人的编程习惯一致,在变量名命名时,通常是把若干个词组在一起,第一个词的首字母小写,其他所有词的首字母大写。 严格遵守这个约定,可以减少很多因区分大小写带来的错误。南京iOS开发培训


  在使用变量名时,要遵循一定的规则:


  ·  不能使用Objective-C 的保留字。所谓保留字,也就是在Objective-C 语言中已经有了特殊含义的单词。 使用简明的单词组成变量名,比如picuteWidht 通常是安全的。为了确保变量名的可读性,推荐在变量名中间使用大写字母。


  ·  一个变量名不能以数字开头,但数字可以出现在变量名中间。


  ·  可以使用下划线 “_” , 下划线可以用在变量的开头,也可以用在变量的中间。


  通过举例说明以上规则。南京iOS开发培训


  合法的变量名写法: picuture6s, picture_6s


  不合法的变量名写法: picuture 6 (中间有空格), 6Picuture (以数字开头)


  不推荐的变量名写法: Picuture6s (开头使用大写字母)


最近开班 more>
  • 全栈开发
  • 软件测试
  • Java大数据开发工程师
  • Web前端开发
  • 开发课程基础班第三期
  • 开发课程基础班第二期
  • 开发课程基础班第一期
  • Java Web UI Python
  • CISP
  • HCIE-Cloud lab
  • HCIE-Datacom(HCIA,HCIP基础)
  • HCIP-Datacom(HCIA基础)
  • HCIA-Datacom(0基础)
  • HCIE-Datacom(HCIA,HCIP基础)
  • HCIP-Datacom(HCIA基础)
  • HCIA-Datacom(0基础)
  • OCP 19C
  • RHCA-OpenStack
  • 脱产班
  • 脱产班
  • 脱产班
  • 脱产班
  • 脱产班
  • 脱产班
  • 脱产班
  • vip班
  • 双休班
  • 双休班
  • 脱产班
  • 脱产班
  • 脱产班
  • 双休班
  • 双休班
  • 双休班
  • 业余班
  • 业余班
  • 6月28日
  • 6月5日
  • 6月26日
  • 6月27日
  • 6月19日
  • 6月12日
  • 6月5日
  • 随时开课
  • 6月10日
  • 6月4日
  • 6月4日
  • 6月12日
  • 6月26日
  • 6月10日
  • 6月10日
  • 6月4日
  • 7月8日
  • 6月28日
    • 姓 名 :
    • 电 话 :
    • 课 程 :

技术交流群

  • Java大数据交流群560819979加入
  • Python技术交流群595083299加入
  • Oracle技术交流群595119011加入
  • Web前端技术交流群604697610加入
  • Huawei技术交流群482919361加入
  • Redhat技术交流群587875348加入
  • UI设计技术交流群511649801加入
  • Cisco技术交流群596886705加入
  • IT运维技术交流群605888381加入