个人博客作业Week2 是否需要有代码规范
问题:是否需要有代码规范
对于是否需要有代码规范,请考虑下列论点并反驳/支持:
1.这些规范都是官僚制度下产生的浪费大家的编程时间、影响人们开发效率, 浪费时间的东西。
2.我是个艺术家,手艺人,我有自己的规范和原则。
3.规范不能强求一律,应该允许很多例外。
4.我擅长制定编码规范,你们听我的就好了。
正文:
在谈如上四个问题之前,第一个需要搞明白的问题是何为代码规范。在第一篇文章中,作者给出了清晰的说明,并且和其他的规范作了区别。我认为此处的代码规范指的是更偏向于代码风格的意思,区别于其他规范(如异常处理规范、输入参数规范)。
我很能理解第一个论点所说的“规范浪费时间“。制定规范花费时间,遵从规范更是让人感到别扭从而花费更多时间。然而即使浪费了这些时间,我认为制定一个规范并且大家都遵守仍然是很有必要的。就我自己来说,虽然在此之前我从没参与过团队的项目,从没遇到过需要遵守规范的场合,但我还是能够认识到规范的重要性。在我自己写一个稍微大一点程序的时候,如果我事先没想好名字在每个类中的取名法,我很可能取着取着就重了。显而易见,同样的变量名会让我混乱,容易出错。包括文件名、项目名,如果没有统一的一个安排,提交作业时就不知道该提交哪个,因为大家都叫homework123.在更多人共同开发的项目中,有一个统一的规范是非常必要的。从长远的角度来看,这样做可以节省更多时间。
其次,每个人有每个人自己的规则和习惯,这是不可避免的。大家都觉得自己的方式是最好的,不需要改变。然而在团队合作中,我们不是独立的个体,为了显示自己是个team-worker,我们应该遵从同意的规范。而且,就如第二篇的前谷歌员工所说,有许多事并不一定有什么最佳答案,只要能解决问题的方法就是好方法。同样,规范风格有时候也谈不上是不是最好的,应用起来方便、高效,这就是好规范。
然而就第三个问题,规范之所以为规范,就是因为一致性以及通用性。大家都用,都遵守,才能称之为规范。然而有些极端情况,比如遵从规范挥发费5倍时间,或是不更改规范就没法解决问题,在这种情况下无疑是需要变通的,即使做这种变通,也应该确保大家对新的规范达成一致意见了,大部分人都认可了,才去使用。
最后一个问题,我不确定是不是有人很擅长制定代码规范。一、是因为很少人这么说。比如有人说我擅长c++编程,有人说我擅长精简的算法,很少听到有人说我擅长制定规范。二、擅长意味着制定的标准非常好用。然而用什么标准来评判规范的好与坏呢?自己擅长只能说是这种规范自己用着比较舒服,大家都有自己用着舒服的规范。我认为这种程度不能算是擅长,也说不上什么擅长不擅长,只要是写代码写了一定量了的人,大家都有自己的规范。而且表现的这样武断也不利于团队工作。比如你提出你自己的规范,说明自己的理由,大部分人都认可,那么项目就可以进行下去了,没必要为一个规范而抓耳挠腮。我认为规范这种事,是看中形式而不看重内容的。进一步说明就是:重要的是大家都统一,而不是具体的规范有多么好。
个人博客作业Week2 是否需要有代码规范的更多相关文章
- 【个人博客作业II】有关代码规范问题的讨论
参考课程辅导书<构建之法>可以知道,程序的代码规范常指代码风格规范和代码设计规范两个方面,其中:代码风格规范包括(缩进,行宽,括号,断行与空白行,分行,命名,下划线,大小写,注释这几个部分 ...
- 个人博客作业Week2(代码规范,代码复审)
Q:是否需要有代码规范 首先我们来搞清楚什么是“代码规范”,它和“代码风格”又有什么关系.依据个人的审美角度,我可能更喜欢在函数与函数之间空出一行,可能在命名习惯和代码注释上更加的internatio ...
- 个人博客作业Week2
一.是否需要有代码规范 这些规范都是官僚制度下产生的浪费大家的编程时间.影响人们开发效率, 浪费时间的东西. 我反驳这个观点,这些规范是成千上万的程序员在开发程序中总结出来的代码规范,他有助于我们的开 ...
- 个人博客作业Week2(9月30日)
一.是否需要有代码规范 1.这些规范都是官僚制度下产生的浪费大家的编程时间.影响人们开发效率, 浪费时间的东西. 这些规范并不是一开始就有的,也不是由某个人规定的,代码规范是程序员们在不断地编程实践过 ...
- 个人博客作业week2——代码复审
1.代码规范 这些规范都是官僚制度下产生的浪费大家的编程时间.影响人们开发效率, 浪费时间的东西. 代码规范并不是从官僚制度下产生,它是为了提高项目团队开发效率而产生的一种工具,能够极大的增强代码可读 ...
- 个人博客作业-Week2 (代码规范, 代码复审)
代码规范: 1.这些规范都是官僚制度下产生的浪费大家的编程时间.影响人们开发效率, 浪费时间的东西. 编码规范它包含了代码格式,还包括了编码风格和其他规范,通常涉及:缩进.空格使用.Tab使用 注释. ...
- #个人博客作业week2——关于代码规范的个人观点
对于这一讨论的前提我们首先要知道什么是代码规范. 在这个问题上我同意一篇参考文章的观点——代码规范不仅只编码风格.编码风格仅是代码规范的一个方面,除了编码风格,代码规范还包括函数返回值等其他方面.在我 ...
- #个人博客作业Week2——关于代码规范的讨论
<1> 这些规范都是官僚制度下产生的浪费大家的编程时间.影响人们开发效率, 浪费时间的东西. 反驳:官僚制度在一定程度下维持了社会的和谐稳定,一个没有法律.没有拥有完善的管理体制.完全崇尚 ...
- 软工个人作业-博客作业-WEEK2
1.是否需要代码规范: (1)这些规范都是官僚制度下产生的浪费大家的编程时间.影响人们开发效率, 浪费时间的东西. 首先来说,从短期上和个体上来看,一个团队的代码风格必然会在一定程 ...
随机推荐
- zabbix实现微信告警配置
zabbix设置微信报警的配置过程 zabbix的报警方式有很多,在这里我们来详细说明一下如何通过微信报警 微信企业号的申请 注册的地址https://qy.weixin.qq.com/ 这样企业就 ...
- ccf-20161203--权限查询
这题我的思路是将用户直接与他的权限联系起来.比如: 用户 角色 权限 Alice hr crm:2直接转变为:Alice: crm:2 题目与代码如下: 问题描述 试题编号: 201612-3 试题名 ...
- SAP系统产品历史与分类
SAP R/1---实时会计辅助财务的系统,最早叫RF系统.由原来批处理系统(数据输入后,由服务器在特定的时间分批处理).创造性的变为输入马上由计算机处理. SAP R/2—创造性的使用“basis” ...
- zTree异步加载展开第一级节点
在 setting 中的 callback 中加上 onAsyncSuccess:onAsyncSuccess 回调函数 , 然后实现回调函数 var isFirst = true;function ...
- 【17】有关python面向对象编程的提高【多继承、多态、类属性、动态添加与限制添加属性与方法、@property】
一.多继承 案例1:小孩继承自爸爸,妈妈.在程序入口模块再创建实例调用执行 #father模块 class Father(object): def __init__(self,money): self ...
- centos7下安装docker(10容器底层--cgroup和namespace)
cgroup和namespace是实现容器底层的重要技术 cgroup:实现资源限制 namespace:实现资源隔离 1.cgroup:control group Linux操作系统通过cgroup ...
- P4478 [BJWC2018]上学路线
Description 小B 所在的城市的道路构成了一个方形网格,它的西南角为(0,0),东北角为(N,M). 小B 家住在西南角,学校在东北角.现在有T 个路口进行施工,小B 不能通过这些路口.小B ...
- Choosing number ZOJ - 3690 (矩阵快速幂)
题意:n个人站成一排,每个人任意从1——m中任意取一个数,要求相邻两个人的如果数字相同,数字要大于k. 分划思想推导表达式: 假设 i 个人时.第i个人的选择有两种一种是选择小于等于k的数,另一种 ...
- Linux系统中将普通用户添加到sudoers
我们经常会在普通用户下用到sudo命令,为了不用频繁切换root用户,我们可以将普通用户添加到sudoers里面.Linux默认是没有将用户添加到sudoers列表中的,需要root手动将账户添加到s ...
- 深入浅出的webpack构建工具---webpack3版本的CommonsChunkPlugin详解(六)
阅读目录 一:什么是CommonsChunkPlugin, 它的作用是什么? 二:webpack3中CommonsChunkPlugin配置项及含义? 回到顶部 一:什么是CommonsChunkPl ...