The fourth work - work in pairs

link

Members noted on learning through twinning of:

1 -1 Ban Ban Hu Xiaosong Gao Jian

Pair connected members of the blog:
https://www.cnblogs.com/maxilong/p/11729323.html

Code Review

Code review checklist (Gao Jian)   Completed by a group of Hu Xiaosong
1. Summary section    
1) comply with the code requirements and specifications in line with it? Yes  
2) whether the code design thoughtful? comprehensive Consistent and functional requirements
How 3) code readability? general  
4) the code easier to maintain it? easily  
5) Each line of code checked yet? Yes  
2. Design Specification    
Whether 1) designed to follow common patterns from known designs or project mode? Yes  
2) There is no hard-coded or strings / numbers, etc. exist? Yes  
3) code is not dependent on a particular platform, whether it will affect the future of transplantation? no  
4) 4. developers write new code functionality can be achieved with existing Library / SDK / Framework in? Whether there is a similar function in this project can call without having to re-implement all? Yes  
5) 5. There is no unused code can be cleared? no  
3. Code Specification    
1) modify part of the code in line with the standards and style of thing? Yes  
4. DETAILED code portion    
1) There is no error processing? For external function calls, check the return value or exception handling? no  
2) parameters passed with no errors, the length of the string length byte or character (may be single / double-byte), the start count is 0 or 1 starts to count? 0  
3) How to deal with the boundary conditions? How default branch switch statement is processed? Is it possible to loop an infinite loop? no Fill jump statements in the branch
4) There is no use assertion (Assert) to ensure that the same conditions that we think really meet? no  
5) use of resources, is where to apply, where to release? Is it possible to cause resource leaks (memory, files, various GUI resources, database access connections, etc.)? Is it possible to optimize? Yes Some leaks may, but not necessarily excessive treatment, because this is a one-time program generates data
6) There is no data structure elements with less? no Data are defined using the practical absence of the data in the idle data
5. Effectiveness    
How performance 1) code? The worst case is what?   The program execution according to a fixed pattern, the absence of good or bad
2) Code in particular, there is an obvious part of the cycle can be optimized (C ++ repeatedly create a class, whether in c # StringBuilder string operation can be optimized)? no  
6. readability    
How 1) code readability? Is there enough comments?   Poor readability of the code, comments enough to understand the meaning of the code
7. testability    
1) 1. Code need to update or create a new unit test? Developed for specific areas (such as databases, web pages, multi-threading, etc.), you can organize a special checklist.   Code can create a new test unit but not necessarily, features a single code, without too much testing
Code review checklist (Hu Xiaosong)   Completed by a group of Gao Jian
1. Summary section    
1) comply with the code requirements and specifications in line with it? Yes  
2) whether the code design thoughtful? comprehensive Consistent and functional requirements
How 3) code readability? Clear  
4) the code easier to maintain it? Yes  
5) Each line of code checked yet? Yes  
2. Design Specification    
Whether 1) designed to follow common patterns from known designs or project mode? Yes  
2) There is no hard-coded or strings / numbers, etc. exist? Yes  
3) code is not dependent on a particular platform, whether it will affect the future of transplantation? no  
4) 4. developers write new code functionality can be achieved with existing Library / SDK / Framework in? Whether there is a similar function in this project can call without having to re-implement all? Yes  
5) 5. There is no unused code can be cleared? no  
3. Code Specification    
1) modify part of the code in line with the standards and style of thing? Yes  
4. DETAILED code portion    
1) There is no error processing? For external function calls, check the return value or exception handling? no  
2) parameters passed with no errors, the length of the string length byte or character (may be single / double-byte), the start count is 0 or 1 starts to count? 0  
3) How to deal with the boundary conditions? How default branch switch statement is processed? Is it possible to loop an infinite loop? no Filled break in the branch
4) There is no use assertion (Assert) to ensure that the same conditions that we think really meet? no  
5) use of resources, is where to apply, where to release? Is it possible to cause resource leaks (memory, files, various GUI resources, database access connections, etc.)? Is it possible to optimize? Yes Some leaks may, but not necessarily excessive treatment, because this is a one-time program generates data
6) There is no data structure elements with less? no Data are defined using the practical absence of the data in the idle data
5. Effectiveness    
1)代码的效能如何?最坏的情况是怎样的?   数据控制在一定的范围内,按照固定模式执行,不存在好坏情况
2)代码中特别是循环中是否有明显可优化的部分(C++中反复创建类,c#中string的操作是否能用StringBuilder来优化)?  
6.可读性    
1)代码可读性如何?有没有足够的注释?   代码的可读性不好,由于从c平台移植到Java所有的功能均在主类中实现
7.可测试性    
1)1.代码是否需要更新或创建新的单元测试?针对特定领域的开发(如数据库,网页,多线程等),可以整理专门的核查表。   代码可以创建新的测试单元但是没有必要,代码的功能单一,无需过多的测试


结对编程

代码编写基本规范

  源代码文件以文件内容中的最顶层的Java类命名,而且大小写敏感,文件扩展名为 .java,同时,文件的编码格式统一为UTF-8。类的命名遵循大驼峰命名法UpperCamelCase,而方法名和变量名的命名遵循小驼峰命名法lowerCamelCase。常量名使用大写字母表示,单词之间以下划线分隔.jsp的文件名全部小写。、一个程序文件最好不要超过2000行。不用的代码和引用删除。请合理运用空行。空行可以用来隔开相对独立的代码块,有利于阅读和理解。为不容易理解类变量注释。注释代码段,注释逻辑选择。对成员方法,不要轻易采用public的成员变量。主要的修饰符有public, private,protected。避免过多的参数列表,尽量控制在5个以内,原则上关系密切的行应对齐,对齐包括类型、修饰、名称、参数等各部分对齐。另每一行的长度不应超过屏幕太多,必要时适当换行,换行时尽可能在","处或运算符处,换行后最好以运算符打头,常量命名全部大写,单词间用下划线隔开,力求语义表达完整清楚,不要嫌名字长。抽象类命名使用Abstract或Base开头;异常类命名使用Exception结尾;测试类命名以它要测试的类的名称开始,以Test结尾。


结对编程感受

  与一个人编程相比较,结对编程有很多优点。比如我自己写代码时不太注意编程规范,所以代码风格不是很优秀,再次读自己写的代码时就像看天书一样,可读性很差,但是两人结对编程的话两人可以互相商量变量命名等事宜,一个人也可以提醒代码规范的问题。结对编程时还能减少bug,“驾驶员”长期盯着屏幕,很容易疲劳而犯一些小错误,这时“领航员”便可轻松的指出错误以减少bug的产生,同样的,调试bug的速度也变快了。总之结对编程虽然降低了一些效率,但是写出的代码错误率更低,代码质量更高,也未尝不是一种补偿。但是结对编程并不是适合所有人,有的人就是喜欢一个人编程,两人结对编程的效率一部分取决于两个程序员的熟悉程度,所以两个人刚开始结对编程时需要一段时间来适应。可以不断从别人那里学习,提高自己的水平。这次结对编程,我们互相学到了很多,比如良好的代码风格,清晰的编码思路,以及熟练的调试技巧等通过两个人的讨论,更好的解决问题。

结对场景照片

新增的需求

github连接
https://github.com/maxilong258/NM-L

考虑数据异常处理问题,如在输入题目生成范围的数据时,输入了“abc“等字符数据,程序如何处理。
增大算式生成数的范围(如整数存不下的数),程序如何处理。

异常处理,当输入非法字符时,报错,并告知用户,输入非法,然后将打印默认数据。
如果算术式增大范围,整数存不下,报错,并告知用户输入范围有误,然后改为最大范围

链接

在学习通上注明结对的成员对:

1班胡晓松-1班高健

结对成员的博客连接:
https://www.cnblogs.com/maxilong/p/11729323.html

代码复审

代码复审核查表(高健)   由一班胡晓松完成
1.概要部分    
1)代码符合需求和规格说明吗符合?  
2)代码设计是否考虑周全? 周全 功能和要求相符
3)代码可读性如何? 一般  
4)代码容易维护么? 容易  
5)代码每一行都检查过了吗?  
2.设计规范部分    
1)设计是否遵循从已知的设计模式或项目中常用的模式?  
2)有没有硬编码或字符串/数字等存在?  
3)代码有没有依赖于某平台,是否会影响将来的移植?  
4)4.开发者新写的代码能否用已有Library/SDK/Framework中的功能实现?在本项目中是否存在类似的功能可以调用而不用全部重新实现?  
5)5.有没有无用的代码可以清除?  
3.代码规范部分    
1)修改的部分符合代码标准和风格嘛?  
4.具体代码部分    
1)有没有对错误进行处理?对于调用外部函数,是否检查了返回值或处理了异常?  
2)参数传递有无错误,字符串的长度是字节的长度还是字符(可能是单/双字节)的长度,是以0开始计数还是以1开始计数? 0  
3)边界条件如何处理的?switch语句的default分支是如何处理的?循环有没有可能出现死循环? 在分支中填入跳转语句
4)有没有使用断言(Assert)来保证我们认为不变的条件真的满足?  
5)对资源的利用,是在哪里申请,在哪里释放的?有没有可能导致资源泄露(内存,文件,各种GUI资源,数据库访问的连接,等等)?有没有可能优化? 有些泄露的可能,但是没有必要过度的处理,因为这是生成一次性数据的程序
6)数据结构中有没有用不到的元素? 所定义的使用的数据均为实用数据不存在闲置的数据
5.效能    
1)代码的效能如何?最坏的情况是怎样的?   程序按照固定模式执行,不存在好坏情况
2)代码中特别是循环中是否有明显可优化的部分(C++中反复创建类,c#中string的操作是否能用StringBuilder来优化)?  
6.可读性    
1)代码可读性如何?有没有足够的注释?   代码的可读性不好,注释足够,能读懂代码的含义
7.可测试性    
1)1.代码是否需要更新或创建新的单元测试?针对特定领域的开发(如数据库,网页,多线程等),可以整理专门的核查表。   代码可以创建新的测试单元但是没有必要,代码的功能单一,无需过多的测试
代码复审核查表(胡晓松)   由一班高健完成
1.概要部分    
1)代码符合需求和规格说明吗符合?  
2)代码设计是否考虑周全? 周全 功能和要求相符
3)代码可读性如何? 清晰  
4)代码容易维护么?  
5)代码每一行都检查过了吗?  
2.设计规范部分    
1)设计是否遵循从已知的设计模式或项目中常用的模式?  
2)有没有硬编码或字符串/数字等存在?  
3)代码有没有依赖于某平台,是否会影响将来的移植?  
4)4.开发者新写的代码能否用已有Library/SDK/Framework中的功能实现?在本项目中是否存在类似的功能可以调用而不用全部重新实现?  
5)5.有没有无用的代码可以清除?  
3.代码规范部分    
1)修改的部分符合代码标准和风格嘛?  
4.具体代码部分    
1)有没有对错误进行处理?对于调用外部函数,是否检查了返回值或处理了异常?  
2)参数传递有无错误,字符串的长度是字节的长度还是字符(可能是单/双字节)的长度,是以0开始计数还是以1开始计数? 0  
3)边界条件如何处理的?switch语句的default分支是如何处理的?循环有没有可能出现死循环? 在分支中填入break
4)有没有使用断言(Assert)来保证我们认为不变的条件真的满足?  
5)对资源的利用,是在哪里申请,在哪里释放的?有没有可能导致资源泄露(内存,文件,各种GUI资源,数据库访问的连接,等等)?有没有可能优化? 有些泄露的可能,但是没有必要过度的处理,因为这是生成一次性数据的程序
6)数据结构中有没有用不到的元素? 所定义的使用的数据均为实用数据不存在闲置的数据
5.效能    
1)代码的效能如何?最坏的情况是怎样的?   数据控制在一定的范围内,按照固定模式执行,不存在好坏情况
2)代码中特别是循环中是否有明显可优化的部分(C++中反复创建类,c#中string的操作是否能用StringBuilder来优化)?  
6.可读性    
1)代码可读性如何?有没有足够的注释?   代码的可读性不好,由于从c平台移植到Java所有的功能均在主类中实现
7.可测试性    
1)1.代码是否需要更新或创建新的单元测试?针对特定领域的开发(如数据库,网页,多线程等),可以整理专门的核查表。   代码可以创建新的测试单元但是没有必要,代码的功能单一,无需过多的测试


结对编程

代码编写基本规范

  源代码文件以文件内容中的最顶层的Java类命名,而且大小写敏感,文件扩展名为 .java,同时,文件的编码格式统一为UTF-8。类的命名遵循大驼峰命名法UpperCamelCase,而方法名和变量名的命名遵循小驼峰命名法lowerCamelCase。常量名使用大写字母表示,单词之间以下划线分隔.jsp的文件名全部小写。、一个程序文件最好不要超过2000行。不用的代码和引用删除。请合理运用空行。空行可以用来隔开相对独立的代码块,有利于阅读和理解。为不容易理解类变量注释。注释代码段,注释逻辑选择。对成员方法,不要轻易采用public的成员变量。主要的修饰符有public, private,protected。避免过多的参数列表,尽量控制在5个以内,原则上关系密切的行应对齐,对齐包括类型、修饰、名称、参数等各部分对齐。另每一行的长度不应超过屏幕太多,必要时适当换行,换行时尽可能在","处或运算符处,换行后最好以运算符打头,常量命名全部大写,单词间用下划线隔开,力求语义表达完整清楚,不要嫌名字长。抽象类命名使用Abstract或Base开头;异常类命名使用Exception结尾;测试类命名以它要测试的类的名称开始,以Test结尾。


结对编程感受

  与一个人编程相比较,结对编程有很多优点。比如我自己写代码时不太注意编程规范,所以代码风格不是很优秀,再次读自己写的代码时就像看天书一样,可读性很差,但是两人结对编程的话两人可以互相商量变量命名等事宜,一个人也可以提醒代码规范的问题。结对编程时还能减少bug,“驾驶员”长期盯着屏幕,很容易疲劳而犯一些小错误,这时“领航员”便可轻松的指出错误以减少bug的产生,同样的,调试bug的速度也变快了。总之结对编程虽然降低了一些效率,但是写出的代码错误率更低,代码质量更高,也未尝不是一种补偿。但是结对编程并不是适合所有人,有的人就是喜欢一个人编程,两人结对编程的效率一部分取决于两个程序员的熟悉程度,所以两个人刚开始结对编程时需要一段时间来适应。可以不断从别人那里学习,提高自己的水平。这次结对编程,我们互相学到了很多,比如良好的代码风格,清晰的编码思路,以及熟练的调试技巧等通过两个人的讨论,更好的解决问题。

结对场景照片

新增的需求

github连接
https://github.com/maxilong258/NM-L

考虑数据异常处理问题,如在输入题目生成范围的数据时,输入了“abc“等字符数据,程序如何处理。
增大算式生成数的范围(如整数存不下的数),程序如何处理。

异常处理,当输入非法字符时,报错,并告知用户,输入非法,然后将打印默认数据。
如果算术式增大范围,整数存不下,报错,并告知用户输入范围有误,然后改为最大范围

Guess you like

Origin www.cnblogs.com/huguoguo/p/11730079.html