iOS项目的开发命名规范教程-创新互联

前言

创新互联坚持“要么做到,要么别承诺”的工作理念,服务领域包括:网站设计、网站建设、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的昌图网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!

遵守规范也是让代码更清晰明了,易读,易用,易维护,可以更好的适应团队开发。自己看着也是赏心悦目,何乐而不为呢。下面话不多说了,来一起看看详细的介绍吧。

一、关于本文档

1、本文档的书写目的

   《iOS项目的命名规范》的书写目的,在于让后续参加到该项目的iOS开发人员通过阅读该文档,了解在当前iOS项目的代码中的命名要求并严格按照本文档执行,以便保证代码的更好阅读与维护。

2、本文档的使用范围

  《iOS项目的命名规范》在iOS项目中被强制要求执行。将本文中的WSF或者wsf替换成代表项目的前缀(请用三个大写字母),即可用于其他iOS项目。

3、本文档的更新负责人

   《iOS项目的命名规范》由本ID和同事共同协商讨论制定,由本ID负责编辑、修改和后续的版本更新。

二、目录结构

iOS项目的开发命名规范教程

三、新建【业务模块文件夹】

1、文件夹的名称需要体现该模块的功能概括。

比如:支付系统、订单

2、二级文件夹根据编程设计模式分类命名,需要从下面词语中取词:

ViewModel、Model、View、ViewController、其他

四、新建【子类】

1、类名

(1)遵循大驼峰命名法。

(2)WSF+模块概括名+功能分区名+父类的惯用后缀。比如:WSFOrderListVC

(3)为了整个项目代码的整洁与统一,建议使用List、Detail、Message、TView、Cell、VC、TVC、VM等字样。

(4)模块概括名一定要是统一的、明确的、唯一的代表模块名称。

(5)父类的惯用后缀的意思是:如果要从其他框架继承子类,那么必须遵循其命名惯例。比如,继承UIView的子类名称必须以View结尾。

2、属性名

(1)遵循小驼峰命名法、避免缩写。

(2)后缀体现属性的数据类型。比如:orderPriceLabel、orderLimitsArray。

(3)使用长的、描述性的命名方向。比如settingButton而不是setBtn。

(4)要求NSString *nameString; 而不是NSString* nameString; 或者NSString * nameString;。

3、属性定义

(1)定义属性的参数顺序排序:原子性、读写、内存管理。比如:@property (nonatomic, readwrite, copy) NSString *nameString;

(2)BOOL类型的属性,需要为其getter方法带is前缀。getter方法放在内存管理限定符前面,比如:@property (nonatomic, readonly, getter=isEditable, assign) BOOL editable;

4、实例变量名

(3)下划线开头

(2)遵循小驼峰命名法、避免缩写。

(3)后缀体现属性的数据类型。比如:_orderPriceLabel、_orderLimitsArray。

5、公有方法名

(1)遵循小驼峰命名法、避免缩写。

(2)不要使用“and”这个词,它不应该用来阐明有多个参数。

6、私有方法名

(1)遵循小驼峰命名法、避免缩写。

(2)直接父类是Cocoa框架:p_开头。

(3)直接父类是其他框架:以自己一贯的前缀(小写)+下划线开头或者wsf_。比如:abc_、wsf_。

7、纯C函数

(1)遵循小驼峰命名法、避免缩写。

(2)加上WSF为前缀。

8、全局变量

.h文件

extern NSTimeInterval WSFPersonModelAnimationDuration; 
extern NSString *WSFPersonModelErrorMessage;

另外有需要云服务器可以了解下创新互联建站www.cdcxhl.com,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


网页名称:iOS项目的开发命名规范教程-创新互联
文章地址:http://csdahua.cn/article/ddphgp.html
扫二维码与项目经理沟通

我们在微信上24小时期待你的声音

解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流