iOS开发编码建议与编程经验.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
iOS开发编码建议与编程经验

iOS开发编码建议与编程经验 作者:乞力马扎罗的雪(GitHub)?原文?在开发过程中,我们不仅要去看别人的代码,也要让别人看我们的代码。那么,有一个良好的编码习惯将会非常重要。下面将会罗列使用Objective-C来开发iOS的编码建议。【1】任意函数长度不得超过50行。(其实很容易就超过50行,这就要考虑代码抽取了。)【2】任意行代码不能超过80字符。(其实也很容易超过80字符,可以考虑多行显示,比如有多个参数时,可以每个参数放一行。)可以在Xcode中设置超过80个字符的提醒,选中“Page guide at column”.设置完之后就会在代码80个字符处有一条竖线。【3】在每个方法的定义前留白一行,也就是在方法和方法之间留空一行。【4】功能相近的方法要放在一起,并推荐使用#pragma mark - ***来导航代码,切分代码块。这样可以方便函数的查找。并且可以使用快捷键control+6 来快速查找方法的位置。【5】二元运算符和参数之间要有一个空格,如赋值号=左右各留一个空格。self.myString?=?@235423rew523452345;【6】一元运算符和参数之间不放置空格,比如!非运算符,按位与,|按位或。BOOL?isOpen?=?true;??BOOL?isClose?=?!isOpen;【7】强制类型转换和参数之间不放置空格。NSString?*str3?=?(NSString*)self.myString;【8】长的变量值应该拆分为多行。尤其体现在使用数组或者字典。以下也分别是快速声明数组@[]和字典@{}的方法。NSArray?*array?=?@[@111,???????????????????????@2222222222,???????????????????????@3333333,???????????????????????@wwwwwwwwwwww???????????????????????];???????????????????????@age:@20,?????????????????????????@gender:@female,?????????????????????????@isMarried:@false?????????????????????????};【9】尽量使用有意义的名字命名,拒绝使用i,j等无意义字符命名。类的命名首字母大写,其他变量的命名首字符小写,并使用驼峰式分割单词。【10】尽量减少在代码中直接使用数字常量,而使用宏定义等方式。如:MAX_NUMBER_PHONE替代8等等。这样我们搜索也比较方便。【11】尽量减少代码中的重复计算,比如代码中多处要使用屏幕宽度,然后计算:[[UIScreenmainScreen] bounds].size.width ,很多次,闲得很繁琐,代码也冗长。不如直接宏定义:#define?SCREEN_WIDTH?([[UIScreen?mainScreen]?bounds].size.width)【12】合理使用约定俗成的缩略词:alloc:分配;alt:轮流,交替;app:应用程序;calc:计算;dealloc:销毁、析构;func:函数、方法;horiz:水平的;info:信息;init:初始化;max:最大的;min:最小的;msg:消息;nib:Interface Builder;rect:矩形;temp:暂时的;vert:垂直的;【13】宏定义全部字母大写。【14】函数长度不要超过50行,小函数比大函数可读性更强。函数的参数不宜过多,零元函数最好,一元函数也不错,高于三元的函数虚重构。【15】合理范围内使用链式编程:NSString?*myName?=?[[NSString?alloc]?init];但是嵌套不宜超过3层,超过3层需进行重构。【16】函数调用时所有参数在同一行。如果参数过多,则可以每行一个参数,每个参数以冒号对齐。【17】对传入参数的保护或者说是否为空的判断,尽量不要使用if(!obj),而使用NSAssert断言来处理。NSAssert是系统定义的宏。NSAssert(myName?!=?nil,?@myName参数为空);如果条件判断为真,则程序继续执行。如果判断条件为假,则抛出异常,异常内容为后面定义的字符串。【18】方法参数名前一般使用an,the,new来进行修饰。如:-(void)setPersonInfo:(NSString*)theID?theName:(NSString*)theName?theAge:(NSInteger*)theAge【19】if-else超过四层的时候,就要考虑重构,多层的if-else结构很难维护。【20】当需要一定条件才执行某项操作时,最左边

文档评论(0)

gangshou + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档