美文网首页
IOS-OC编程个人总结、心得,简短版

IOS-OC编程个人总结、心得,简短版

作者: Yes_Cui | 来源:发表于2017-09-15 14:43 被阅读0次

我所习惯的一些编程规范以及写法用法:

1.文件名、变量、类名、函数名、使用驼峰命名法(看到首字母小写的有点难受)

2.尽量使用完整的单词命名(不要用拼音,没有意义的命名,比如button1,button2)

3.一个方法中代码不要太长(控制一下,不要几百行),一个类中代码不要太长(上千行,几千行)太多了说明写的有问题

4.每个头文件最开始处用简短注释说明一下该类是干什么用的

5.类中功能模块以 #pragma mark - 分隔 写上模块注释

6.类的成员变量写在.m文件中作为属性(不对外暴露,实质oc的成员变量都可以通过runtime获得,选择不暴露)

7.所有的代码块必须用{}, 即只有1行的if代码也必须用{},有if的带上else,哪怕是空的

8.关于空格换行尽量跟系统类库风格保持一致

9.基础数据类型尽量用OC类库的

10.尽量用协议代替block便于理解(尽管协议写起来要繁琐一点)

11.养成良好的注释习惯(免得后期去看自己的代码的时候会懵逼)

12.如果需要引用一个类文件时,只是需要使用类名,不需要知道其中细节,可以用@class xx.h(可以减少一定的编译时间)

13.多使用字面量语法来创建字符串,数组,字典等(oc2.0的语法,如NSArray *languages = @[@"PHP", @"Objective-C", someObject, @"Swift", @"Python"];NSDictionary *dict = @{@"key" : @"value"};可变数组加上mutableCopy NSMutableArray *languages = [@[@"PHP", @"Objective-C", @"Swift", @"Python"] mutableCopy];)

14.多用枚举表示状态、选项、状态码

15.定义对外开放的属性时候尽量做到暴露权限最小化,不希望被修改的属性要加上readonly。线程安全自己去加锁属性就都用nonatomic,atomic严重影响性能

16.用前缀避免命名空间冲突

17.不要在delloc方法中调用其他方法(除了一些释放相关的事情,如KVO取消订阅,remove 通知等)

18.以弱引用避免保留环(Retain Cycle)

19.block 不是被self所持有的,在block中就可以使用self

20.构建缓存时选用NSCache而非NSDictionary

PS.祝大家写代码写出高潮,哈哈哈

相关文章

  • IOS-OC编程个人总结、心得,简短版

    我所习惯的一些编程规范以及写法用法: 1.文件名、变量、类名、函数名、使用驼峰命名法(看到首字母小写的有点难受) ...

  • iOS自学笔记-Objective-C编程BNR(第2版)

    今天对Objective-C编程(第2版)这本书做一个简短的学习总结。 如何阅读本书 本书第1章就谈了这个问题,按...

  • Java编程心得总结

    学习java已经一个多月了,期间在windows安装了eclipse,学习了java基本语法,在win_eclip...

  • c++函数模板与类模板

    第一次做心得总结,写的肯定不如其他编程大佬一样厉害,作为菜鸟本菜我会写的非常通俗易懂,个人觉得是自己的编程能力的提...

  • 开通简书记录一下学习和生活

    大概想分三个部分 一、编程部分 1编程过程中的学习心得 2编程过程中新学到的知识和案例 3编程作品 4总结 二、工...

  • 简短总结

    昨夜关心台风山竹,晨醒,似乎那边已有所平静。而身边雨声淅淅沥沥,周遭格外安宁。预报雨下到11点,然后天转晴。云卷云...

  • 简短总结

    眼高手低 在学习过程中,感觉简单的不想做,难得又总是停留在想的阶段,自己的动手实践主动性十分的差,我有这样一种感觉...

  • 一个新开始

    从今天起开始围绕烹饪,服装和编程来写东西。学习技术,记录心得和总结,并分享出去。

  • IOS-OC链式编程小记

    1.block作为参数 相信大家用block已经用了很久了,我今天主要记录下带返回类型,切返回类似为该类对象的bl...

  • Python核心编程(第2版)读书笔记

    本文为Python核心编程(第2版)读书笔记,加上个人的一些理解与联系,主要是以思维导图的形式加以总结。 该书籍出...

网友评论

      本文标题:IOS-OC编程个人总结、心得,简短版

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