objective c代码规范

1、 当参数过长时,每个参数占用一行,以冒号对齐。
//实际上是对齐的,copy过来后有些变形

- (void)writeFisrtNumber:(NSString *)firstStr

          withNextNumber:(NSString *)nextStr

          withLastNumber:(NSString *)lastStr

{

    

 

}

2、如果方法名比参数名短,每个参数占用一行,至少缩进4个字符,且为垂直对齐(而非使用冒号

对齐)。如:
//实际上是对齐的,copy过来后有些变形

- (void)writeA:(NSString *)firstStr

        withBBBBBBBBBBB:(NSString *)nextStr

        withCCCCCC:(NSString *)lastStr

{

    

}

3、 如果类声明中包含多个protocal,每个protocal占用一行,缩进2个字符。如:

@interface RootViewController : UITableViewController<</p>

UITableViewDelegate,

UITableViewDataSource,

UITextFieldDelegate,

UITextViewDelegate

 

>{

……

}

4、注释: 注释可以采用’ 和’ //’两种注释符号,涉及到多行注释时,尽量使用  ’。

5、方法前面的注释遵循以下格式:如果某项没有,则以N/A表示(此处为copy内容,说句实话,自己也没这么仔细的写过,但感觉部分关键方法这样写,很有必要,让看你代码的人不用太费力)

例如:

iOS代码规范(整理几点)

iOS代码规范(整理几点)

6、关于空行(安排好了,确实很美观,还有一点就是这样能区分项目组不同成员写的代码,密疏安排也是一种美)

a)  .h中的空行

      文件说明与头文件包含(#import)之间空1行

头文件包含(#import)之间,如果需要分类区别,各类别之间空1行。

头文件包含(#import)与@class之间空2行。

@interface与@class之间空1行。

头文件{}里面,空1行开始声明对象成员,如果需要分类区别,各类别之间空1行。

头文件{}外,空1行书写属性,如果需要分类区别,各类别之间空1行。

属性下面空1行开始写方法,如果需要分类区别,各类别之间空1行。

方法完成后,空1行@end。

如果需要声明protocol,空2行接着写。通常protocol写在@end后面,但是声明在@interface之前。

b).m中的空行

文件说明与头文件包含(#import)之间空1行

头文件包含(#import)之间,如果需要分类区别,各类别之间空1行。

@implementation和@synthesize之间空1行,如果需要分类区别,各类别之间空1行。

@synthesize与方法之间空1行。

方法与方法之间空1行。

C) 方法里面的空行

变量声明后需要空1行,如果需要分类区别,各类别之间空1行。

条件、循环,选择语句,整个语句结束,需要空1行。

各功能快之间空1行。

最后一个括弧之前不空行。

注释与代码之间不空行。

#pragmamark 与方法之间空1行。

d) 每行代码最多不得操作100个字。设置如下:Xcode=> Preferences => TextEditing

=> Page Guide at column /输入100即可。

7、对于一些特殊类型的变量,命名时要带上类型,如NSArray的变量命名为xxxArray,其他的如xxxDictionaryxxxSize等。这样就可以从名称上知道是什么类型的变量。千万不能将NSArray的变量命名为xxxDictionary。

8、常量

1)  避免在程序中直接出现常数,使用超过一次的应以宏定义的形式来替代。

2)  常数的宏定义应与它实际使用时的类型相一致。如以3.0来定义浮点类型,用3表示整型。

3)  常量的命名应当能够表达出它的用途,并且用大写字母表示。

例如:

#definePI 3.1415926



9.代码行度最大为100列(C++的是80)
10.声明类或方法时,注意空格的使用,参数过多时可换行保持对齐,
调用方法时也是如此,参数都写在一行或换行冒号对齐,
 
11.命名规则   
 
类名首字母大写,方法首字母小写,方法中的参数首字母小写,同时尽量让方法的命名读起来像一句话,能够传达出方法的意思,同时取值方法前不要加前缀“get”
变量名小写字母开头
常量以小写字母k开头,后续首字母大写
 
12.关于注释
 
注释很重要,但除了开头的版权声明,尽可能把代码写的如同文档一样,让别人直接看代码就知道意思,写代码时别担心名字太长,相信Xcode的提示功能。
 
13.实例变量应该在实现文件.m中声明或以@property形式在.h文件中声明,一定要直接在.h文件声明,加上@priavte,另外,使用@private、@public,前面需要一个缩进空格。
 
14.尽可能保证 .h文件的简洁性,可以不公开的API就不要公开了,写在实现文件中即可。
 
15.Xcode支持Objective-C/C/C++混编,所以引用头文件时:#import Ojbective-C/Objective-C++头文件(Objective-C++是Objective-C与C++混编的文件),#include C/C++头文件。
 
16.写delegate的时候类型应该为weak弱引用,以避免循环引用,当delegate对象不存在后,我们写的delegate也就没有存在意义了自然是需要销毁的,weak与strong可以参考上一篇文章介绍。
 
17.实例变量声明时变量名前面加下划线“_”,局部变量不用加。
 
 
18.使用Block时,内容四个空格缩进,“^”后带有参数时,参数与“{”之间有一个空格缩进
 
19.建议使用“#pragma mark”,方便阅读代码
 


总结,规范其实就是让你养成一种良好习惯的标杆,在此面前我们应该顺从。

1.代码行度最大为100列(C++的是80)
2.声明类或方法时,注意空格的使用,参数过多时可换行保持对齐,
调用方法时也是如此,参数都写在一行或换行冒号对齐,
 
3.命名规则   
 
类名首字母大写,方法首字母小写,方法中的参数首字母小写,同时尽量让方法的命名读起来像一句话,能够传达出方法的意思,同时取值方法前不要加前缀“get”
变量名小写字母开头
常量以小写字母k开头,后续首字母大写
 
4.关于注释
 
注释很重要,但除了开头的版权声明,尽可能把代码写的如同文档一样,让别人直接看代码就知道意思,写代码时别担心名字太长,相信Xcode的提示功能。
 
5.实例变量应该在实现文件.m中声明或以@property形式在.h文件中声明,一定要直接在.h文件声明,加上@priavte,另外,使用@private、@public,前面需要一个缩进空格。
 
6.尽可能保证 .h文件的简洁性,可以不公开的API就不要公开了,写在实现文件中即可。
 
7.Xcode支持Objective-C/C/C++混编,所以引用头文件时:#import Ojbective-C/Objective-C++头文件(Objective-C++是Objective-C与C++混编的文件),#include C/C++头文件。
 
8.写delegate的时候类型应该为weak弱引用,以避免循环引用,当delegate对象不存在后,我们写的delegate也就没有存在意义了自然是需要销毁的,weak与strong可以参考上一篇文章介绍。
 
9.实例变量声明时变量名前面加下划线“_”,局部变量不用加。
 
 
10.使用Block时,内容四个空格缩进,“^”后带有参数时,参数与“{”之间有一个空格缩进
 
11.建议使用“#pragma mark”,方便阅读代码
 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
电子图书资源服务系统是一款基于 Java Swing 的 C-S 应用,旨在提供电子图书资源一站式服务,可从系统提供的图书资源中直接检索资源并进行下载。.zip优质项目,资源经过严格测试可直接运行成功且功能正常的情况才上传,可轻松copy复刻,拿到资料包后可轻松复现出一样的项目。 本人系统开发经验充足,有任何使用问题欢迎随时与我联系,我会及时为你解惑,提供帮助。 【资源内容】:包含完整源码+工程文件+说明(若有),项目具体内容可查看下方的资源详情。 【附带帮助】: 若还需要相关开发工具、学习资料等,我会提供帮助,提供资料,鼓励学习进步。 【本人专注计算机领域】: 有任何使用问题欢迎随时与我联系,我会及时解答,第一时间为你提供帮助,CSDN博客端可私信,为你解惑,欢迎交流。 【适合场景】: 相关项目设计中,皆可应用在项目开发、毕业设计、课程设计、期末/期中/大作业、工程实训、大创等学科竞赛比赛、初期项目立项、学习/练手等方面中 可借鉴此优质项目实现复刻,也可以基于此项目进行扩展来开发出更多功能 【无积分此资源可联系获取】 # 注意 1. 本资源仅用于开源学习和技术交流。不可商用等,一切后果由使用者承担。 2. 部分字体以及插图等来自网络,若是侵权请联系删除。积分/付费仅作为资源整理辛苦费用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值