iOS 开发高手课
戴铭
前滴滴出行技术专家
42934 人已学习
新⼈⾸单¥59
登录后,你可以任选4讲全文学习
课程目录
已完结/共 47 讲
用户故事 (1讲)
iOS 开发高手课
15
15
1.0x
00:00/00:00
登录|注册

30 | 如何制定一套适合自己团队的 iOS 编码规范?

人工检查的重要性
人工检查
利用静态检查工具
分类
函数
循环语句
条件语句
属性
变量
常量
Code Review
好的代码规范
如果团队没有 Code Review 的原因
Code Review 的实践情况
避免过度工程化
代码逻辑清晰
制定适合团队的编码规范
课后作业
小结
问题解决
如何落地适合自己团队的 iOS 编码规范?

该思维导图由 AI 生成,仅供参考

你好,我是戴铭。
如果团队成员的编码规范各不相同,那么你在接收其他人的代码时是不是总会因为无法认同他的代码风格,而想着去重写呢。但是,重写这个事儿不只会增加梳理逻辑和开发成本,而且重写后出现问题的风险也会相应增加。那么,这个问题应该如何解决呢?
在我看来,如果出现这种情况,你的团队急需制定出一套适合自己团队的编码规范。有了统一的编码规范,就能有效避免团队成员由于代码风格不一致而导致的相互认同感缺失问题。
那么,如何制定编码规范呢?在接下来的内容里,我会先跟你说说,我认为的好的编码规范。你在制定编码规范时,也可以按照这个思路去细化出更多、更适合自己的规范,从而制定出团队的编码规范。然后,我会再和你聊聊如何通过 Code Review 的方式将你制定的编码规范进行落地。

好的代码规范

关于好的代码规范,接下来我会从常量、变量、属性、条件语句、循环语句、函数、类,以及分类这 8 个方面和你一一说明。

常量

在常量的使用上,我建议你要尽量使用类型常量,而不是使用宏定义。比如,你要定义一个字符串常量,可以写成:
static NSString * const STMProjectName = @"GCDFetchFeed"

变量

对于变量来说,我认为好的编码习惯是:
变量名应该可以明确体现出功能,最好再加上类型做后缀。这样也就明确了每个变量都是做什么的,而不是把一个变量当作不同的值用在不同的地方。
在使用之前,需要先对变量做初始化,并且初始化的地方离使用它的地方越近越好。
不要滥用全局变量,尽量少用它来传递值,通过参数传值可以减少功能模块间的耦合。
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
  • 深入了解
  • 翻译
    • 英语
    • 中文简体
    • 中文繁体
    • 法语
    • 德语
    • 日语
    • 韩语
    • 俄语
    • 西班牙语
    • 阿拉伯语
  • 解释
  • 总结

团队编码规范对于代码质量和可维护性至关重要。本文介绍了iOS编码规范的重要性和制定方法,包括对常量、变量、属性、条件语句、循环语句、函数、类和分类的规范。此外,强调了代码逻辑清晰的重要性,以及通过Code Review来落实编码规范的重要性。文章还提到了利用静态检查工具和人工检查相结合的方式进行Code Review,并强调了Code Review的价值在于相互学习和交流。总结来说,好的编码规范应确保代码逻辑清晰,而Code Review是将编码规范落实到团队中的关键步骤。文章内容深入浅出,为读者提供了制定和执行编码规范的实用建议。

仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《iOS 开发高手课》
新⼈⾸单¥59
立即购买
登录 后留言

全部留言(10)

  • 最新
  • 精选
  • clownfish
    前辈,我看了你说的大部分都是Effective 2.0里面的内容,有没有一些您在工作实践中的代码规范要求呢,例如我想到的使用#pragma 做代码分区等一些,

    作者回复: 15年我整理过一篇,可以参看下。https://github.com/ming1016/study/wiki/%E6%9E%84%E5%BB%BAiOS%E7%A8%B3%E5%AE%9A%E5%BA%94%E7%94%A8%E6%9E%B6%E6%9E%84%E6%97%B6%E6%96%B9%E6%A1%88%E9%80%89%E6%8B%A9%E7%9A%84%E6%80%9D%E8%80%83

    2019-05-18
    15
  • 棒棒彬👻
    「写代码的首要任务是能让其他人看得懂,千万不要优先过度工程化。」,过度工程化该怎么理解呢?是否能举个例子?

    作者回复: 指的是定下的规则,有些规则设计的和自身业务比较贴近,不具有通用性,但是对于特定业务团队自身具有很好的工程质量保障。

    2019-06-23
    1
  • 肥仔
    这篇很有帮助,看来要花很多时间去实践一下才行,编码规范真的很重要

    作者回复: 是的,多人协作规范还能够提高沟通效率

    2019-05-31
  • Geek_462d99
    强累推荐[Clean Code](https://book.douban.com/subject/4199741/)这本书,作者Bob在书中说出了很多代码规范和技巧。
    2019-06-01
    3
  • 郑杰
    静态类型需要 变量名加类感觉没有必要吧
    2019-05-18
    1
    2
  • null
    与其说是代码规范,不如说涵盖的是思想在里面。而国外一些经典的书籍已经给出答案了,建议程序员必读书籍《重构改善既有的代码设计》。
    2019-09-21
    1
  • 猪小擎
    少引用头文件,而用声明,这点真的有意义吗?头文件里全是声明,1万行的头文件,在我看来对编译期的消耗也近乎是0.
    2023-03-03归属地:北京
  • 猪小擎
    一个团队为什么一定要使用相同的规范呢?每个人都是自己的规范,真的有问题吗?A 用小写下划线,B用驼峰。真的有什么影响吗?
    2023-03-03归属地:北京
    2
  • 曦咻
    还可以定制统一代码模版和借助代码格式化插件
    2020-03-20
  • 大头
    同意一楼的建议
    2019-05-20
收起评论
大纲
固定大纲
好的代码规范
常量
变量
显示
设置
留言
10
收藏
沉浸
阅读
分享
手机端
快捷键
回顶部