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

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

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. win7系统保护配置现错误“文件名、目录名或卷标语法不正确。(0x8007007B)

    windows7下系统保护功能很是鸡肋,有事会出现一下两个问题: 1.出现错误“文件名.目录名或卷标语法不正确.(0x8007007B) 2.保护设置列表中出现“Windows7_os(c:)(找不到 ...

  2. 【PAT】B1062 最简分数(20 分)

    如果了解分数运算,本题很简单.我有对分数知识进行总结 分数四则运算 #include<stdio.h> #include<algorithm> using namespace ...

  3. Java设计模式之十三 ---- 观察者模式和空对象模式

    前言 在上一篇中我们学习了行为型模式的备忘录模式(Memento Pattern)和状态模式(Memento Pattern).本篇则来学习下行为型模式的最后两个模式,观察者模式(Observer P ...

  4. js 提交表单添加csrf

    function post(path, shipmentMap, method) { method = method || "post"; // Set method to pos ...

  5. ES5-ES6-ES7_let关键字声明变量

    let命令的介绍 let是ECMAScript6中新增的关键字,用于声明变量.它的用法类似于var var a = 3 let b = 4 let变量的声明 let 命令的特点不允许在同一作用域下声明 ...

  6. python流程控制语句-if语句

    一个if语句 if语句用来检验一个条件, 如果 条件为真,我们运行一块语句(称为 if-块 ),也就是只有一个if判断,当为真的时候就运行一块语句,否则就不运行 下面代码中的if语句控制者缩进的pri ...

  7. jquery $("[id$='d']").val();这句话什么意思?

    获得id后缀为d字符的值.应该是属于input标签.谢谢 匹配给定的属性是以某些值结尾的元素,比如<span id="ad">test</span>< ...

  8. 使用HostAliases 添加pod 的/etc/hosts

    默认的pod 的/etc/hosts 无法自动数据 [root@master1 ~]# kubectl exec smsservice-5c7ff5f74-bc969 -n testihospital ...

  9. PCB (3)创建新工程PCB

    点击完成 拖进我们创建的工程中

  10. 在web.xml中通过contextConfigLocation配置spring

    <context-param>         <param-name>contextConfigLocation</param-name>         < ...