美文网首页
2020-12-07(4)自己_1

2020-12-07(4)自己_1

作者: 想在月球上弹琴的孩子 | 来源:发表于2020-12-08 08:54 被阅读0次

    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

          本文链接:https://www.haomeiwen.com/subject/momxgktx.html