关于"是否需要有代码规范"的个人看法
冯老师已经给出了几个相关的论点:
- 这些规范都是官僚制度下产生的浪费大家的编程时间、影响人们开发效率, 浪费时间的东西。
- 我是个艺术家,手艺人,我有自己的规范和原则。
- 规范不能强求一律,应该允许很多例外。
- 我擅长制定编码规范,你们听我的就好了。
不难看出,这些言论并无益处,代码规范不能如此一蹴而就,任性而为,倘若是这样,无异于无形之中增加代码编写难度。
有鉴于此,让我们来浏览下老师给出的这三篇文章中作者的观点:
1、《编码风格不是编码规范》
这篇文章一开始就强调了代码格式和布局的重要性以及编码规范同时包括了编码风格和其它规范,并且罗列优秀的代码风格所能带来的几点益处,即:
①遵守编码风格使代码更容易维护
②编码风格使形成代码集体所有制
③编码风格能消除那些长久的纷争
这几点就告诉了我们优秀的编码风格是能够节省时间、便于编写、避免矛盾。
2、《谷歌是如何做代码审查的》
Google的核心就是代码审查,在我们传统的思想来看代码审查不过就是检查错误,漏个小功能,少了几行补上即可的小事。而在谷歌这里,代码审查是相互之间进行的,这就需要我们规范代码的风格和更多的注释,让别人轻松的看懂代码,而且代码审查也能互相增进彼此的知识,让我们互相更加了解你在某个模块当总具体编写什么功能的代码,这一点也是很重要的,一段优秀的代码就像一篇好诗,既告知他人其中之意亦可彰显自己整洁的编程文风,这岂不是更有助于团队的进一步合作?
3、《Coding Standards》(即标准编码)
首先,作者讲述了在谷歌,他才真正认识到了什么才是real strict coding standards(真正的严格标准编码)。作者也阐述了他之前和我们类似的想法:It wastes time!(规范编码浪费时间)、I'm an artist!(我编写代码就像是艺术家)、One size fits all actually fits none!(一种代码规范适用于所有编码中)、I'm too good for that!(我的代码思想是很好的)。
在后文中,告诉了我们,我们It requires a sort of dedicated, hard-headed stupidity(编程需要一种专注而且冷静的愚蠢),当然,这里的stupid主要是指那种无时无刻都遵守代码规范,而被一些人视为stupid的优秀程序员,这些人才是编程界的精英,值得我们去学习这种稳扎稳打,执着的编程精神。或许,这种精神便是一种"爬虫精神"吧~