(1)每个公司,每个部门,每个团队都喜欢搞一套编程规范,初衷很美好,然而定出来的东西从来都没人看。道理很简单,既然是编程规范,凭啥你定的就叫规范,依据是什么?此其一。其二,那动辄几十页上百页的编程规范,到底是写规范还是写散文议论文说明文?
(2)当你们团队在制定编程规范的时候是怎么做的?定个三天时间,大纲划分好,每人分走一块,各自开始百度谷歌,最后合并在一起,然后经过两三次check,期间互相撕逼和妥协,最终在截止日期前如释重负的做完这件打心底里排斥的事情。以这样不规范的过程能定义出编程规范来?
(3)所以,关于编程规范,最好的方式是减少重复造轮子,大家来迷信一下权威,一起来遵守Google的编程规范,也就是Google Java Style。已经有这么好的东西,为啥不拿来主义?
(4)规范,靠制度来强制是没用的,每个coder应自发的有这方面的意识,认认真真的看完Google的编程规范。至于如何监管,那就做好阶段性的代码review工作。
(5)对于Android来说,编程规范主要包括两部分,Java代码和资源文件规范。这里列举Google的Code style资源和Futurice公司的Android开发最佳实践,希望大家拿来主义,减少无意义的重复工作。
- Java编程规范
- Google Java Style 中文版或者这里
- Google Java Style 官方英文版
- Android编程规范
- Android Code Style中文版
- Android Code Style官方英文版
- Android开发最佳实践
以上两份文档都是针对Java代码方面的规范,对于Android应用来说,还有资源文件需要规范,因此,可参考Futurice公司整理的Android开发实践,中文版和英文版的地址分别如下:中文版和英文版
在这个开源工程里,介绍了Gradle 配置、类库推荐、资源文件命名,测试框架选择、混淆配置等,虽然简单,但已经够用,规范本来就是比较原则性的东西,细节的部分各自发挥,这样开发者才能施展身手。
(6)如果这些编程规范还不足以涵盖所有内容,此时才有必要在上述规范的基础上自行补充。
(7)最后祝大家都写一手漂亮的代码,但是不要忘记了,代码漂亮了,把人也整理清楚点,撕掉不修边幅的标签,做到人如其码,码如其人,心中无码。