项目:中小学数学卷子自动生成程序
具体需求:请看文档
源码:yyq
说明:分析顺序为编码规范的顺序,其中不乏有交叉的部分
具体分析:
1.文件名以其最顶层的类命名,要是能从命名了解主要功能就更好了
2.文件编码格式为GB 2312,不是utf-8,不符合要求
3.转义序列使用符合规范
4.源文件结构顺序正确,符合规范:有版权信息且放在最前面;package语句写在一行里;
import语句没有使用通配符,单语句没有换行,但是组间没有空行分隔。
5.每个顶级类都在与它同名的源文件中,通过程序运行逻辑排列类成员。
6.有些语句没有使用大括号。
7.switch换行缩进不符合规范,与其它块状结构一致,内容缩进应为2个空格。
8.类内连续的成员之间有垂直空白,水平空白符合规范。
9.c语言式的变量声明,而且是组合声明,正确的做法是每次声明一个变量,需要时才声明,并尽快初始化。
10.switch语句的default语句组没有写,即使什么都没有也要写。
11.包名、类名、方法名符合规范;有些非常量字段命名不符合规范,在Google其它编程语言风格中使用的特殊前缀或后缀,如 name_ , mName , s_name 和 kName ,在Java编程风格中都不再使用,应使用lowerCameCase风格编写;参数应该避免用单个字符命名。
12.代码中有大量捕获异常的代码,值得表扬,捕获的异常不能忽视。
13.静态成员最好使用类进行调用,类名.strIsNumber。
总结:我们两一个用c++,一个用java,最后两个文档都要看。虽然是有点累,但也学到了很多。同一个项目,用两种语言,两种思想去实现同一个功能,再横向对比,相互学习。属于是各展风采又殊途同归。
原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/289280.html