一、是否需要有代码规范

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

  这些规范并不是一开始就有的,也不是由某个人规定的,代码规范是程序员们在不断地编程实践过程中自发地形成的一种共识,这种共识的出发点是团队开发效率、代码可读性与可重用性。所以我们应该理解并提高对自己编码的要求,使自己的编码有良好的风格,符合团队对编码的规范。

  作为团队中的一员,我们必须遵循团队的代码规范,这样你的代码可以被团队中其他队员很好地理解,代码可以被团队共享。而如果不遵循代码规范,会导致代码风格不统一,你的队友阅读你的代码时会产生无法理解或无法适应的痛苦。

  统一的代码风格有利于代码的维护,你写出的代码可以被整个团队共享,这就是代码集体所有制。

  所以,这些规范不是由官僚制度产生,客观上规范会大大加快团队的开发效率,节省不必要的纠纷时间。

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

  首先,在一个团队中,你是团队的一分子,而不是一个艺术家、手艺者。你可以在自己写代码的时候发挥你的个性与自由,但你不可以把你的个人习惯带到团队工程中,上一点已经讲过,这会降低整个团队的开发效率。

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

  规范就是规范,不可以允许例外。

  假设你在某一点给自己开了例外,人人都在自己的某些点开了例外,规范还如何存在,队友阅读你的代码时读到了他不习惯、不理解的代码,可能导致某个bug没被发现。编程是一个细节决定成败的事情,同样,代码规范不应该有例外,细节处更应该留心。

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

  首先,团队不应该由一人说了算。

  其次,代码规范人人有自己的看法,没有谁更擅长一说。最好的代码规范应该符合团队中大多数人的编码习惯。

  所以,编码规范应该由大家一起制定,征得大家同意后再实行。

二、代码复审

我与鲁聃互相评审代码

Code Review CheckList
General
 代码是否能够正常工作?  能
 所有的代码都简单易懂吗?  尚可
 是否符合你们的代码规范?  由于事先并没有商讨代码规范,所以在这方面的体验不是很好。
 是否存在一些冗余或者重复的代码?  否
 是否是否做到了尽可能的模块化? 做到了 
 有没有一些被注释的代码? 没有 
 循环的长度是否规整?循环是否有正确的终止条件? 循环长度规整,有正确的终止条件 
 Security 
所有的输入数据都被检查?
第三方程序的使用? 未使用第三方代码
输出值是否经过了检验?  是
是否有对无效参数进行检验? 无 
Documentation
(由于没有事先进行约定,文档方面没有写)  
Testing
可测试性?  可以
是否已经做了测试? 未做测试
单元测试的效果? 没有做单元测试
数组是否有越界?  否

个人博客作业Week2(9月30日)的更多相关文章

  1. CSDN博客2014年4月24日清理缓存

    亲爱的CSDN博主们.我们将于今天(2014年4月24日)对CSDN博客频道缓存进行清理,假设您登录后发现自己的文章总数.积分.评论数.訪问数出现异常,请不要慌张.您的数据并没有丢失.将会在缓存清理完 ...

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

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

  3. 个人博客作业Week2 是否需要有代码规范

    问题:是否需要有代码规范 对于是否需要有代码规范,请考虑下列论点并反驳/支持: 1.这些规范都是官僚制度下产生的浪费大家的编程时间.影响人们开发效率, 浪费时间的东西. 2.我是个艺术家,手艺人,我有 ...

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

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

  5. 团队博客作业Week2 --- 学长学姐访谈录

    ## 团队作业2 ## ### 团队一 ### 这个团队中组员是位研一的学姐,她的软件工程老师是姚淑珍,当时她们团队总共有4个人,而且她们都很努力,但是可能是最后团队的作品不太理想,她们的软件并没有上 ...

  6. 个人博客作业Week2

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

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

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

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

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

  9. #个人博客作业week2——结对编程伙伴代码复审

    General 1.程序能够顺利地运行.程序通过命令行输入,能够向对应的文件中输出符合要求的题目和答案.程序能够根据用户的不同选择,进行题目的生产或答案的校验,生成出的题目符合参数要求和项目的查重等各 ...

随机推荐

  1. java基础-温故而知新(02)

    基本数据的自动拆装箱及享元设计模式 1.1 自动装箱        -128~127 之间的整数,装在一个内存区域.         超过这个范围的整数,装在不同的内存区域. 1.2 自动拆箱     ...

  2. 查看tomcat项目中,具体占用cpu高的线程。

    1.查看主进程占用cpu高: 此处主进程:27823 ~]# top top - :0: up days, :, 3 users, load average: 13.12, 13.31, 13.23 ...

  3. P1067 多项式输出

    #include <iostream>#include<cstdio>#include<algorithm>using namespace std;int a[10 ...

  4. Java中equals()和“==”区别

    1.对于基础数据类型,使用“=="比较值是否相等: 2.对于复合数据类型(类),使用equals()和“==”效果是一样的,两者比较的都是对象在内存中的存放地址(确切的说,是堆内存地址). ...

  5. (9)Python循环结构

  6. 捕获海康威视IPCamera图像,转成OpenCV能够处理的图像(二)

    海康威视IPCamera图像捕获 捕获海康威视IPCamera图像.转成OpenCV能够处理的IplImage图像(一) 捕获海康威视IPCamera图像.转成OpenCV能够处理的IplImage图 ...

  7. 【洛谷】【搜索(dfs)】P3956 棋盘

    题目传送门:戳 题目描述: 有一个 \(m * m\) 的棋盘,棋盘上每一个格子可能是红色.黄色或没有任何颜色的.你现在要从棋盘的最左上角走到棋盘的最右下角. 任何一个时刻,你所站在的位置必须是有颜色 ...

  8. Spark机器学习中ml和mllib中矩阵、向量

    1:Spark ML与Spark MLLIB区别? Spark MLlib是面向RDD数据抽象的编程工具类库,现在已经逐渐不再被Spark团队支持,逐渐转向Spark ML库,Spark ML是面向D ...

  9. Java中关于AbstractQueuedSynchronizer的入门(二)

    AQS是一个同步器的基础类,里面的关键字段: //如下关键字段都是volatile类型 /** * Head of the wait queue, lazily initialized. Except ...

  10. mysql索引优化-order/group

    为排序使用索引 KEY a_b_c (a,b,c) order by 能使用索引最左前缀 -order by a -order by a,b -order by a,b,c -order by a d ...