个人博客作业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)这些规范都是官僚制度下产生的浪费大家的编程时间.影响人们开发效率, 浪费时间的东西. 首先来说,从短期上和个体上来看,一个团队的代码风格必然会在一定程 ...
随机推荐
- 关于hover和after、before合用
通常hover后面跟的选择器,都是在myClass结构之下 的dom元素. 如果想在myClass下添加after等,就需要两个::号. 注:after/before是属于myclass的下级元素,并 ...
- python五十六课——正则表达式(常用函数之search())
函数:search(regex,string,[flags=0]):参数:和match一样理解功能:从头开始匹配字符串中的数据,如果头不匹配继续往后尝试匹配,直到有第一个匹配成功的子数据,立即返回一个 ...
- 1407: [Noi2002]Savage
其实答案远不到1e6 所以可以枚举! 设答案是m 那\(i,j\)的相遇就可以表示成\(P_ix+C_i=P_jx+C_j+ym\) 移向就是\((P_i-P_j)x-ym=C_j-C_i\) 套扩展 ...
- fibonacci数列的性质和实现方法
fibonacci数列的性质和实现方法 1.gcd(fib(n),fib(m))=fib(gcd(n,m)) 证明:可以通过反证法先证fibonacci数列的任意相邻两项一定互素,然后可证n>m ...
- php递归无限级
function getTree($data, $pId) { $tree = ''; foreach($data as $k => $v) { if($v['cate_ParentId'] = ...
- ucml 连接虚字段
- 转载 SpringMVC详解(三)------基于注解的入门实例
目录 1.在 web.xml 文件中配置前端处理器 2.在 springmvc.xml 文件中配置处理器映射器,处理器适配器,视图解析器 3.编写 Handler 4.编写 视图 index.jsp ...
- k8s部署spring-boot项目失败
现象:spring-boot项目启动到某个地方停止,然后容器重启 解决:扩大内存和核心数
- Linux上VsCode编译打包运行
前提:最好使用root用户可以排除一些不必要的错误. 一. 准备环境 Node.js(>= 8.12.0, < 9.0.0) Python2.7 Yarn(可以通过npm install ...
- Opencv——相机标定
相机标定的目的:获取摄像机的内参和外参矩阵(同时也会得到每一幅标定图像的选择和平移矩阵),内参和外参系数可以对之后相机拍摄的图像就进行矫正,得到畸变相对很小的图像. 相机标定的输入:标定图像上所有内角 ...