提高ios代码质量 细节总结1

最近又翻了几遍 <<effective objective-c>> 感觉有好些东西 时间久了 就忘记了。 所以决定写一些总结 不尽详细 单提纲领 帮助记忆。


1.写法 习惯
     1.分清楚 #Import  #include @class区别  防止“循环引用”造成的编译问题 简而言之 降低类耦合
     2.字面量语法(literal syntax)  对于 字符串 数组 字典等对象的创建 尽量不要去调用方法
          ex:  NSString *str = @" csdn blog";
                 NSNumber *num = @1;  
                 NSArray *array = @[@"mon",@"tue",@"thirs"];  //好处是不用加nil  如果出现nil 编译的时候就会报错
                  同时也要引申一下 关于 arrayWithObjects: 的用法  当arrayWithObjects创建array的时候 如果遇到nil 就会退 出 比如[NSArrayarrayWithObjects: object1,object2,object3,nil]; 如果object2 是nil  也会创建成功 但是只有 object1 一个元素。

                  NSDictionary *dict =@[@"object1":@"key1",@"object2","key2"];

                 访问dict  NSString *str =dict[@"key1"];

                  NSMutableDictionary *mudict = dict;         mudict[@"key1"]=@"object1";

            字面量只能创建不可变的对象,如果想要可变的 只有再copy一份 

          3.多用类型常量 少用#define

          原因 #define的话不包含类型信息 随时可能被修改(重新定义)

          类型常量 多使用 static const  extern 等关键字

       4.用枚举标示状态机 枚举值可以用二级制或者按位操作组合 (待补充)

        

 


       


  

            



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值