我的工程实践选题是关于智能仓库管理系统的设计与实现,后端开发目前是SpringMVC+Spring+Mybatis框架模式进行开发,而我在github上摘取的本项目是基于SSM的商品秒杀高并发项目。
结合工程实践选题相关的一套源代码,根据其编程语言或项目特点,分析其在源代码目录结构、文件名/类名/函数名/变量名等命名、接口定义规范和单元测试组织形式等方面的做法和特点。
代码的目录结构图:
文件的命名方面,包名统一使用小写,类名全部是开头大写的驼峰命名法。
函数名和变量名是使用开头小写的驼峰命名法。
对于接口的定义,一方面返回值的格式要统一,输入参数要统一等等。
列举哪些做法符合代码规范和风格一般要求。
本项目package命名符合常规基于ssm项目的层次划分,包括entity、service、dao等等。对于变量、函数、类等等都符合常规命名方法,名称主要英文或者英文简写,没有汉语拼音这种情况。注释也比较详细,增强代码的可读性。
列举哪些做法有悖于“代码的简洁、清晰、无歧义”的基本原则,及如何进一步优化改进。
在初始化变量时候等号前后有些地方有空格,有些地方没空格。一般idea自动生成的是有空格的,不利于代码美观。其他没有大问题,整体代码可读性还是可以的。
总结同类编程语言或项目在代码规范和风格的一般要求。
在命名格式方面:
大驼峰:类名。
小驼峰:方法名,变量名,参数名。
全大写:常量名,单词之间下划线。
代码书写方面:
使用4个空格做缩进而不使用tab。
运算符左右两边必须加空格。
注释双斜线必须与注释内容之间有且仅有一个空格。
方法参数在定义和传入时,多个参数逗号后边必须加空格。
左右小括号与括号内容之间不要出现空格。
单个方法不超过80行,单行字符不超过120。
控制语句必须使用大括号。
条件表达式中不能有赋值操作。
多层嵌套不能超过三层。
避免取反运算符。
注释方面:
方法注释/****/。
方法内使用//。