问题:是否需要有代码规范

对于是否需要有代码规范,请考虑下列论点并反驳/支持:

1.这些规范都是官僚制度下产生的浪费大家的编程时间、影响人们开发效率, 浪费时间的东西。

2.我是个艺术家,手艺人,我有自己的规范和原则。

3.规范不能强求一律,应该允许很多例外。

4.我擅长制定编码规范,你们听我的就好了。

正文:

在谈如上四个问题之前,第一个需要搞明白的问题是何为代码规范。在第一篇文章中,作者给出了清晰的说明,并且和其他的规范作了区别。我认为此处的代码规范指的是更偏向于代码风格的意思,区别于其他规范(如异常处理规范、输入参数规范)。

我很能理解第一个论点所说的“规范浪费时间“。制定规范花费时间,遵从规范更是让人感到别扭从而花费更多时间。然而即使浪费了这些时间,我认为制定一个规范并且大家都遵守仍然是很有必要的。就我自己来说,虽然在此之前我从没参与过团队的项目,从没遇到过需要遵守规范的场合,但我还是能够认识到规范的重要性。在我自己写一个稍微大一点程序的时候,如果我事先没想好名字在每个类中的取名法,我很可能取着取着就重了。显而易见,同样的变量名会让我混乱,容易出错。包括文件名、项目名,如果没有统一的一个安排,提交作业时就不知道该提交哪个,因为大家都叫homework123.在更多人共同开发的项目中,有一个统一的规范是非常必要的。从长远的角度来看,这样做可以节省更多时间。

其次,每个人有每个人自己的规则和习惯,这是不可避免的。大家都觉得自己的方式是最好的,不需要改变。然而在团队合作中,我们不是独立的个体,为了显示自己是个team-worker,我们应该遵从同意的规范。而且,就如第二篇的前谷歌员工所说,有许多事并不一定有什么最佳答案,只要能解决问题的方法就是好方法。同样,规范风格有时候也谈不上是不是最好的,应用起来方便、高效,这就是好规范。

然而就第三个问题,规范之所以为规范,就是因为一致性以及通用性。大家都用,都遵守,才能称之为规范。然而有些极端情况,比如遵从规范挥发费5倍时间,或是不更改规范就没法解决问题,在这种情况下无疑是需要变通的,即使做这种变通,也应该确保大家对新的规范达成一致意见了,大部分人都认可了,才去使用。

最后一个问题,我不确定是不是有人很擅长制定代码规范。一、是因为很少人这么说。比如有人说我擅长c++编程,有人说我擅长精简的算法,很少听到有人说我擅长制定规范。二、擅长意味着制定的标准非常好用。然而用什么标准来评判规范的好与坏呢?自己擅长只能说是这种规范自己用着比较舒服,大家都有自己用着舒服的规范。我认为这种程度不能算是擅长,也说不上什么擅长不擅长,只要是写代码写了一定量了的人,大家都有自己的规范。而且表现的这样武断也不利于团队工作。比如你提出你自己的规范,说明自己的理由,大部分人都认可,那么项目就可以进行下去了,没必要为一个规范而抓耳挠腮。我认为规范这种事,是看中形式而不看重内容的。进一步说明就是:重要的是大家都统一,而不是具体的规范有多么好。

个人博客作业Week2 是否需要有代码规范的更多相关文章

  1. 【个人博客作业II】有关代码规范问题的讨论

    参考课程辅导书<构建之法>可以知道,程序的代码规范常指代码风格规范和代码设计规范两个方面,其中:代码风格规范包括(缩进,行宽,括号,断行与空白行,分行,命名,下划线,大小写,注释这几个部分 ...

  2. 个人博客作业Week2(代码规范,代码复审)

    Q:是否需要有代码规范 首先我们来搞清楚什么是“代码规范”,它和“代码风格”又有什么关系.依据个人的审美角度,我可能更喜欢在函数与函数之间空出一行,可能在命名习惯和代码注释上更加的internatio ...

  3. 个人博客作业Week2

    一.是否需要有代码规范 这些规范都是官僚制度下产生的浪费大家的编程时间.影响人们开发效率, 浪费时间的东西. 我反驳这个观点,这些规范是成千上万的程序员在开发程序中总结出来的代码规范,他有助于我们的开 ...

  4. 个人博客作业Week2(9月30日)

    一.是否需要有代码规范 1.这些规范都是官僚制度下产生的浪费大家的编程时间.影响人们开发效率, 浪费时间的东西. 这些规范并不是一开始就有的,也不是由某个人规定的,代码规范是程序员们在不断地编程实践过 ...

  5. 个人博客作业week2——代码复审

    1.代码规范 这些规范都是官僚制度下产生的浪费大家的编程时间.影响人们开发效率, 浪费时间的东西. 代码规范并不是从官僚制度下产生,它是为了提高项目团队开发效率而产生的一种工具,能够极大的增强代码可读 ...

  6. 个人博客作业-Week2 (代码规范, 代码复审)

    代码规范: 1.这些规范都是官僚制度下产生的浪费大家的编程时间.影响人们开发效率, 浪费时间的东西. 编码规范它包含了代码格式,还包括了编码风格和其他规范,通常涉及:缩进.空格使用.Tab使用 注释. ...

  7. #个人博客作业week2——关于代码规范的个人观点

    对于这一讨论的前提我们首先要知道什么是代码规范. 在这个问题上我同意一篇参考文章的观点——代码规范不仅只编码风格.编码风格仅是代码规范的一个方面,除了编码风格,代码规范还包括函数返回值等其他方面.在我 ...

  8. #个人博客作业Week2——关于代码规范的讨论

    <1> 这些规范都是官僚制度下产生的浪费大家的编程时间.影响人们开发效率, 浪费时间的东西. 反驳:官僚制度在一定程度下维持了社会的和谐稳定,一个没有法律.没有拥有完善的管理体制.完全崇尚 ...

  9. 软工个人作业-博客作业-WEEK2

    1.是否需要代码规范:    (1)这些规范都是官僚制度下产生的浪费大家的编程时间.影响人们开发效率, 浪费时间的东西.        首先来说,从短期上和个体上来看,一个团队的代码风格必然会在一定程 ...

随机推荐

  1. 【PAT】1083 是否存在相等的差(20 分)

    //这题不是我耍流氓,实在太简单,只能直接贴代码了,凑个数 #include<stdio.h> int aaa[10005]={0}; int main(){ int N;scanf(&q ...

  2. 第一条:了解Objective-C语言的起源

    第一条:了解Objective-C语言的起源 Objective-C使用的消息结构而非函数调用. Objective-C的重要工作都由"运行组件(runtime component)&quo ...

  3. 网络流(四)dinic算法

    传送门: 网络流(一)基础知识篇 网络流(二)最大流的增广路算法 网络流(三)最大流最小割定理 网络流(四)dinic算法 网络流(五)有上下限的最大流 网络流(六)最小费用最大流问题 转自:http ...

  4. luogu P3293 [SCOI2016]美味

    题目描述 一家餐厅有 n 道菜,编号 1...n ,大家对第 i 道菜的评价值为 ai(1<=i<=n).有 m 位顾客,第 i 位顾客的期望值为 bi,而他的偏好值为 xi .因此,第 ...

  5. 关于对浏览器发送POST请求的一点研究

    网上对与HTTP的Method,GET和POST的区别,说得毕竟详细.然后提到一点,说浏览器对两者的还有一个比较容易让人忽略的区别就是:POST会分2次发送,而GET只1次. GET发送1次,这个没什 ...

  6. Jenkins忘记密码解决方案

    # 当jenkins忘记了管理用户的密码时,只能通过修改配置文件并重启的方式初始化设置用户名及密码,操作如下: 找到jenkins的配置目录,笔者的jenkins是下载的war包直接丢在tomcat下 ...

  7. Java相关框架资料及其基础资料、进阶资料、测试资料之分享

    个人说明:只为分享,不为其他,愿所有的程序员们在编程的世界自由翱翔吧! 在我看来,只有不断实战,不断学习,不断积累,不断归纳总结,形成自己的核心竞争力,方能在未来竞争中脱颖而出! 程序员谨记!重要的事 ...

  8. WebSocket原理与实践(二)---WebSocket协议

    WebSocket原理与实践(二)---WebSocket协议 WebSocket协议是为了解决web即时应用中服务器与客户端浏览器全双工通信问题而设计的.协议定义ws和wss协议,分别为普通请求和基 ...

  9. Linux下对inode和块的理解

    基本概念 首先讲下inode和块的基本概念.在Linux系统中,文件由元数据和数据块组成.数据块就是多个连续性的扇区(sector),扇区是文件存储的最小单位(每个512字节).块(block)的大小 ...

  10. SourceInsight工具增强——AStyle(代码格式化)、PC-Lint(静态检查)

    Artistic Style(AStyle) AStyle是一款开源.高效.精简的代码格式化工具,适用于C.C++.C#.Java等.官方地址在:http://astyle.sourceforge.n ...