前 言
需求是临时的,只有变更才是永恒的,面向变更编程,而不是面向需求编程。
不要过分寻求技能,降低法度榜样的可读性。
简洁的代码可以让bug无处藏身。要写出明显没有bug的代码,而不是没有明显bug的代码。
大年夜驼峰式定名:每个单词典首字母都采取大年夜写字母
先把面前的问题解决掉落,解决好,再推敲将来的扩大问题。
一、定名规范
1、同一请求
含义清跋扈,尽量做到不须要注释也能懂得其感化,若做不到,就加注释,应用全称,不应用缩写。
2、类名
==例:== MFHomePageViewController
3、私有变量
- 私有变量放在 .m 文件中声明
- 以 _ 开首,第一个单词首字母小写,后面的单词典首字母全部大年夜写。
==例:== NSString *_somePrivateVariable
4、property变量
- 小驼峰式定名:第一个单词以小写字母开端,后面的单词典首字母全部大年夜写
- 属性的关键字推荐按照 原子性,读写,内存治理的次序分列。
- Block、NSString属性应当应用copy关键字
- 禁止应用synthesize关键词
==例:==
- typedef void (^ErrorCodeBlock) (id errorCode,NSString *message);
- @property (nonatomic, readwrite, strong) UIView *headerView; //注释
- @property (nonatomic, readwrite, copy) ErrorCodeBlock errorBlock; //将block拷贝到堆中
- @property (nonatomic, readwrite, copy) NSString *userName;
③、前提过多,过长的时刻应当换行。前提表达式如不雅很长,则须要将他们提掏出来赋给一个BOOL值,或者采掏出一个办法
5、宏和常量定名
- 对于宏定义的常量
宏定义中如不雅包含表达式或变量,表达式或变量必须用小括号括起来。
- 对于类型常量
==例:==
- //宏定义的常量
- #define ANIMATION_DURATION 0.3
- #define MY_MIN(A, B) ((A)>(B)?(B):(A))
- //局部类型常量
- static const NSTimeInterval kAnimationDuration = 0.3;
- //外部可见类型常量
- //EOCViewClass.h
- extern const NSTimeInterval EOCViewClassAnimationDuration;
- extern NSString *const EOCViewClassStringConstant; //字符串类型
- //EOCViewClass.m
- const NSTimeInterval EOCViewClassAnimationDuration = 0.3;
- NSString *const EOCViewClassStringConstant = @"EOCStringConstant";
6、Enum
- Enum类型的定名邮攀类的定名规矩一致
- Enum中列举内容的定名须要以该Enum类型名称开首
- NS_ENUM定义通用列举,NS_OPTIONS定义位移列举
==例:==
碰到缺点前提直接返回:
- typedef NS_ENUM(NSInteger, UIViewAnimationTransition) {
- UIViewAnimationTransitionNone,
- UIViewAnimationTransitionFlipFromLeft,
- UIViewAnimationTransitionFlipFromRight,
推荐阅读
《大年夜西洋月刊》本周刊文,揭开了 Alphabet 旗下无人驾驶公司 Waymo 的神秘面纱。在无人驾驶汽车的开辟过程中,Waymo 应用了多种强大年夜的对象,包含模仿对象 Carcraft、机密测试基地>>>详细阅读
本文标题:IOS团队编程规范
地址:http://www.17bianji.com/lsqh/36981.html
1/2 1