2020-12-07(4)自己_1

B----自己

12-03。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。

1:#### 关于#if和#ifdef的补充

因为之前项目中在判断调试代码时,很多地方都用#ifdef DEBUG(现已改为#if DEBUG),如果项目中需要加入调试代码时,请用#if来判断处理

- #if 会判断后面定义的宏是否为真

- #ifdef 只判断是否定义了这个宏,但不会关心该宏的真假

2:先查看工程有没有 在操作

3:gzz codeReview时先搜索 gzz 并删除后提交

4:其他注释形式

// TODO: 等待实现

// FIX: 有bug,需要修改

// !!!: 逻辑混乱,需要完善

- (NSInteger)sumNumber:(NSInteger)firstNumber withNumber:(NSInteger)secondNumber;

  常量以相关类名作为前缀

5:static const NSTimeInterval GJR_LOGIN_TIMEOUT = 30;

6:建议使用类型常量,不建议使用#define预处理命令

static NSString * const GJR_ORDER_TITLE = @"订单";

static const CGFloat GJR_ORDER_IMG_HEIGHT = 50.0f;

不推荐这样写:

#define Title @"订单"

#define ImgHeight 42

7:方法名中不应使用and,而且签名要与对应的参数名保持高度一致

推荐这样写:

- (instancetype)initWithWidth:(CGFloat)width height:(CGFloat)height;

不推荐这样写

- (instancetype)initWithWidth:(CGFloat)width andHeight:(CGFloat)height;

8:方法名前缀

推荐这样写:

- (void)init...//初始化 - (void)initViews 初始化UI

- (void)update...;//更新 - (void)updateData - (void)updateTitleFrame

- (void)do...Action;//点击事件 do+事件+Action - (void)doSubmitAction

- (void)load...; //请求数据

- (BOOL)is... //方法返回值为boolean型的请使用is前缀标识

- (UIView *)get... //返回某个值的方法,使用get为前缀标识

- (UIView *)set... //设置...

- (void)save... //保存数据

- (void)clear... //清除数据

- (NSString *)gjr_...;//分类中方法添加gjr_前缀

9:字面量语法

尽量使用字面量值来创建 NSString , NSDictionary , NSArray , NSNumber 这些不可变对象:

推荐这样写:数量多是对齐分行显示

NSArray *names = @[

                    @"Brian",

                    @"Matt",

                    @"Chris",

                    @"Alex",

                    @"Steve",

                    @"Paul"

                  ];

NSDictionary *productManagers = @{

                                    @"iPhone" : @"Kate",

                                    @"iPad" : @"Kamal",

                                    @"Mobile Web" : @"Bill"

                                  };

10:枚举

所属类名(GJROrder)+枚举类别名(state)+类型(UnStart)

//订单任务类型

typedef NS_ENUM(NSUInteger, GJROrderState)

{

    GJROrderStateUnStart = 0, //未开始

    GJROrderStateProgress, //进行中

    GJROrderStatecomplete //已完成

};

你可能感兴趣的:(2020-12-07(4)自己_1)