iOS开发代码规范文档

前言:

每个人都有不同的编码习惯和代码风格 虽说我们主要目的是完成需求 提高用户体验 但无规矩不成方圆 统一代码规范对开发者来说会有很多帮助

一、代码规范的好处

1、提高团队合作效率

通常一个项目是由多个人共同开发 如果代码没有好的规范和统一 代码风格必定有很大差异 增加互相理解的难度 和 代码交接成本 规范代码 会使多人之间代码互通更加便捷

2、降低bug率

开发中通常存在很多重复代码的堆积 往往出现bug的不是很复杂的逻辑 而是代码杂乱带来的一些疏忽 甚至有很多线上很严重的p0级bug 解决起来也无非就是代码层面忽略了一个细节 这些逻辑上的不够清晰 往往就是代码不够规范造成的

3、降低后期维护成本

开发中让人最头疼的问题通常不是新代码 而是旧代码的维护 没有好的代码规范 可能自己都无法轻易读懂当时自己的逻辑 如果是维护别人的代码 难度就更大 所以好的代码风格和规范有助于项目的长期维护

4、有助于代码审查codeReview

完成某个需求 除了自测功能外 代码审查codeReview也担任了重要的角色 开发并不像测试 有完整的测试流程和用例 所以在开发阶段很容易照顾不到所有场景 特别是边界情况 所以 代码回顾 会让我们发现一些逻辑上的漏洞 有必要的话 小组内互相codeReview也是一件很好的方式 但前提依然是 各个同学有统一的代码规范 不然很难第一时间发现代码上的问题

5、提升程序员个人能力 有助于程序员个人的提升

一种好的代码风格是一种习惯 和 自我约束 习惯这种方式以后 会让程序员自我要求更高 做事更加精益求精

二、代码规范

基本原则

1、模块文件夹的命名要见名知义 大驼峰
首页模块 Home
我的页面 My
订单列表 OrderList

模块命名

2、控制器命名 加 项目前缀 以VC结尾 主体大驼峰
首页控制器 BMWHomeVC
我的页面控制器 BMWMyVC
订单列表控制器 BMWOrderListVC
3、类名、协议名、枚举名遵循大驼峰命名方式
首页通用协议 BMWHomeProtocol
首页活动类型枚举 BMWHomeActivityType
4、属性名遵循小驼峰命名方式 以属性的类型结尾
控件属性名 如
登录按钮 loginButton
密码输入框 passwordTextField
头像图片 headImageView
标题标签 titleLabel
背景视图 backgroundView
模型 如
用户信息模型 userInfoModel
视图模型 如
用户信息视图模型
userInfoViewModel
字符串 如
历史记录字符串 historyString(能够见名知义的可简写如historyStr)
字典 如
参数字典 paramsDic
5、属性创建方式 加空格 属性之间加空行 参考如下
简单属性创建方式

复杂属性创建方式

BOOL类型的属性重写下getter方法


BOOL类型属性创建

6、方法名遵循 小驼峰命名方式 且 见名知义 且 方法名前后留空格 且 左半括号不要换行 且 两个方法之间留空行

方法名命名规范示例

7、单行注释使用三斜杠 与注释内容之间加空格
单行注释命名格式

8、多参数方法注释 使用 option + cmd + / 并写清楚每个参数含义
多参数方法注释

9、if else 等逻辑判断 前后加空格
逻辑判断书写规范

10、模块间结构统一 达到高度一致性
如 中英版搜索两个模块
模块架构参考

11、项目中的常量尽量不要直接写死 创建一个类专门管理它
项目中很多地方会使用一些常量 如果分散在代码中 不仅代码不够美观 后期修改也比较麻烦 入口统一管理 会便捷很多
常量使用错误示例

正确示例

12、创建文件时 在顶部写下当前文件的功能注释
如 订单列表页
订单列表页注释

13、创建单例使用sharedInstance方法名
14、资源文件夹 文件目录大驼峰 图片名称 下划线分割
资源文件

持续完善中......

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 217,657评论 6 505
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,889评论 3 394
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 164,057评论 0 354
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,509评论 1 293
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,562评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,443评论 1 302
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,251评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,129评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,561评论 1 314
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,779评论 3 335
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,902评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,621评论 5 345
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,220评论 3 328
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,838评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,971评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,025评论 2 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,843评论 2 354

推荐阅读更多精彩内容