如果团队内部可以统一风格,采用同一个代码规范,让不同人写出来的程序可读性基本一致或者接近,这样对于新人来说,做过1个模块后,在接触别人代码,别的模块代码的时候,无论开发还是维护都会更快上手,他的精力可以更多放在其他方面。同时,好的代码规范,编程习惯也可以减少bug的产生,减少开发人员和测试人员的的时间成本。
统一编码风格这个问题能难得到程序员么?显然不能。
iOS开发越来越火爆,各个城市都积极开设培训课程,除了一线城市相关课程的开设外,西安iOS开发也是独具一格的,现在为大家讲解一下iOS统一编码风格的四种有效办法。
代码格式化(Code Format)
有的小伙伴喜欢K&R风格,有的喜欢BSD风格。 有的小伙伴代码锁在一起,等号左右不空格,逗号不空格。
可以采用BBUncrustifyPlugin-Xcode插件,在save的时候会自动格式化,如
在格式化的时候还做了额外的设置。 if和括号之间也加了空格,等号左右也加了空格。
代码模板 (Code Template)
不同的小伙伴,类的代码组织结构也不一样,如我本人的ViewController类喜欢按照以下顺序来组织代码结构:
统一代码结构可以对常用的类做代码模板,如Handle,Model,ViewController,TableViewControoler,View类(模板的制作教程可以参考这篇文章)。
多才多艺的Panda还给模板都设计了统一的LOGO:
代码片段(Code Snippets)
一些常用的代码片段,也添加了快捷方式。
如单利方法,输入qsi就自动出来啦。
代码扫描 (Code Scan)
一个方法内的行数过长,复杂度过高的话,可以通过对项目进行静态扫描来发现(静态扫描的帖子可以参考这篇文章)。
它还可以发现如下问题:
可能的bug - 空的if/else/try/catch/finally 语句
未使用的代码 - 未使用的局部变量和参数
复杂的代码 - 高圈复杂度,NPath复杂,高NCSS
冗余代码 - 多余的if语句和无用的括号
坏味道的代码 - 过长的方法和过长的参数列表
不好的使用 - 倒逻辑和入参重新赋值
Script
为了方便安装,可以将Code Format,Code Snippets,Code Scan,写一个简单的脚本:
演示的demo里有配置好的格式化风格的插件,但是只放了一个代码模板和一个单例的代码片段,可以在这里下载到:https://github.com/uxyheaven/XYStyle。