预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共33页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

项目全称编码规范承建方全称2013年4月目录项目全称1编码规范11命名规范11.1常量命名11.2变量命名11.2.1域/类变量11.2.2局部变量21.2.3静态变量21.3方法参数命名21.4方法命名31.5类命名41.6包命名51.7配置Bean命名61.8文件命名61.9数据表命名71.10数据项命名71.11外键命名91.12索引命名92注释规范93编码规范103.1开发环境103.2编码风格113.3接口规范113.4目录规范123.4.1源文件目录123.4.2Web资源文件目录143.5UI前台编写规范153.6JAVA编写规范183.7JAVA集合类规范193.8Ajax应用规范193.9JSP编写规范193.10JS编写规范203.10.1文件名命名规范203.10.2命名空间(NameSpace)格式213.10.3命名规范223.10.4书写规范233.10.5对象创建说明233.10.6全局变量243.11SQL编写规范253.12编码最佳实践264异常规范265日志规范265.1系统日志265.2业务日志276Maven依赖构建规范286.1Maven依赖287流程规范287.1流程说明287.2相关工具287.3文档规范298版本管理规范298.1文档规范298.2代码规范30命名规范总原则:名称中不能以‘_’、‘$’等特殊字符开头和结尾;命名尽可能遵循术语表,尽可能符合标准的英文单词或缩写,缩写在术语表中需有说明;命名尽可能做到见名知意,含义清晰准确,同时注意避免产生二义性;常量命名常量统一大写;程序中的固定数字、字符串等,必须用常量来表示,并能正确表达其含义;常量尽可能写在相应的常量类中;【例子】STATUS_OF_START,STATUS_OF_END开始状态,结束状态PATTERN_OF_URL_FILTER变量命名自定义类型变量命名尽可能尽量保持和类名相同,只是首字母小写;UserRoleuserRole;当针对接口命名变量时,去掉变量前缀I,其他规则不变;IUserServiceuserService;除了循环内部,竟可能避免使用单个字符做变量;For(inti=0;i<length;i++){…};域/类变量以小写字母开头,单词之间以大写母分割;标识复数时尽可能以's'结尾,当's'无法表述时则以相应的集合类型做结尾;如果出现同类型的多变量声明,则应加业务单词前缀限定,避免直接在变量后加数字的方式区分;【例子】ListusersMappersonMapGradeExamgradeExam,GradeExamrefGradeExam局部变量以小写字母开头,单词之间以大写母分割;标识集合时应以相应的类型做些结尾,或者特殊类型的变量,通常使用其类型作为后缀,过长的特殊类型允许使用缩写;【例子】User[]userArrayListuserListMapuserMap;对于相同类型的多变量声明,加业务含义前缀限定Useruser;UsercheckedUser;静态变量静态变量统一大写;如果是一组静态变量,名称的开头应有类型限定词,词之间用下划线分割;【例子】ACTION_OF_ADD,ACTION_OF_UPDATE方法参数命名以小写字母开头,单词之间以大写母分割其他规则同局部变量避免出现使用arg0,arg1...argN类似的参数列表,参数命名需明确方法命名方法命名采用动宾结构+修饰词,其中动宾结构需要体现该方法的主要功能;【例子】getProduct(Stringid)单个产品getProducts(Stringid,…)按照参数列表取多个产品,优先级高getProductList(Stringid,…)同上,如果’s’表述不了,采用此方式getProductArray(Stringid,…)按照参数列表取得产品数组getProductMap(Stringid,…)按照参数列表取得产品MAPgetProductWithName(Stringname)根据名称取得产品getProductAll()非getAllProduct()取得所有产品getProductPage(…)普通的产品分页获取方法getProductPageWith**(…)特殊的产品分页获取方法动词说明:对于Service层或DAO层的方法名称,使用get**已经能够涵盖所有的业务方法,所以自定义方法中尽可能避免使用find**或其他的动词方式;属性方法需遵需get/set原则;【例子】Stringname;//属性getName(){…}setName(Stringname){…}对于表现层的主业务实体明确的Action层的常用业务方法定义;ProductActionlist()管理实体列表input()编辑实体(新