JAVA开发规范.ppt

合集下载

java开发规范

java开发规范

自定义java开发规范

2 设计规范

2.1 系统设计规范

当有需求变化的时候,开发经理必须遵守一个顺序,第一先修改概要设计、

设计设计,数据库设计等接着再修改代码的原则;

对于每一 次修改,都必须编写

changelog;

系统的设 计文件需要放到版本控制文件当中,以便对不同的版本进行控制;

2.2 数据库设计规范

数据库的 设计必须放到

PowerDesinger的

Repository当中;

每一个项 目只有系统架构师,开发经理有权限去修改物理数据模型,其他人

只有只读取权;

按数据库 脚本的命名规范编写数据库脚本与初始化数据脚本;

数据库的 设计只能由系统架构师,开发经理或由开发经理指定的高级工程师

进行修改;

需求变更 需要修改到数据库的时候,必须先修改物理数据模型,再到数据库

修改;

任何人没 有经过系统架构师或开发经理的授权,不得私自修改数据库;

对修改内 容需要修改

changelog,并编写修改数据库的脚本;

修改数据 库的脚本需要在测试机上做过测试,并提供项目部经理;

3 文件命名规范

3.1 页面文件命名规范

页面文件的命名是由小写英文字码,下划线,数字组成;

user_list.html;

index.jsp;

index_cn.jsp;

503.jsp等;

页面文件最好以英文单词组成,以便提高文件的可读性;例如:

permission_list.jsp

对于一个 模块的操作页面,以模块名

+下划线

+动词组成,例如:

permission_list.jsp

对于有些模块使用英文单词命名比较麻烦的,在不得已的情况下,可以使用

拼音的简写来进行命名,但是,必须在页面文件的最前面加上注释,注释以

下所示:

<%--

用户列表, yflb是用户列表的简写 .

@version $ Date 2005-7-19 $

@author gsh XXXXXXXX公司 /信息化应用中心 /平台产品部

--%>

Java编程开发规范

Java编程开发规范

Java编程开发规范

目录

前言

一、编程规约 ......................................................................... 1

(一) 命名风格 ................................................................... 1

(二) 常量定义 ................................................................... 3

(三) 代码格式 ................................................................... 4

(四) OOP 规约 ................................................................... 6

(五) 集合处理 ................................................................... 9

(六) 并发处理 .................................................................. 12

(七) 控制语句 .................................................................. 14

(八) 注释规约 .................................................................. 16

(九) 其它 ...................................................................... 18

JAVA开发规范

JAVA开发规范

JAVA开发编码规范

广州从兴电子开发有限公司

软件开发编码规范(JAVA)

第 2 页 共 19 页 历史版本

版本 类型 日期 作者 说明

V00.00.001 新建 2012-8-1 苏寒

软件开发编码规范(JAVA)

第 3 页 共 19 页

目录

1. 引言 ........................................................................................................................................... 4

2. 排版 ........................................................................................................................................... 4

3. 注释 ........................................................................................................................................... 7

4. 命名规则 ................................................................................................................................. 12

5. 可读性 ..................................................................................................................................... 14

java开发规范文档

java开发规范文档

一千零一夜产品部

系统开发规范V1.0

一千零一夜途遇科技有限公司

2015-11-03

修改记录

版本号 修改人 修改内容

V1.0 刘伟 规范第一版

目录

1 前言 ........................................................................................................................ 4

2 开发管理 ................................................................................................................ 4

3 项目周期 ................................................................................................................ 4

4 命名规范 ................................................................................................................ 5

4.1 项目编号命名规范 .................................................................................................... 5

4.2 文档命名规范 ............................................................................................................ 5

Java项目组开发规范33页

Java项目组开发规范33页

目 录

第一章 概述 ............................................................. 3

1.1 编写目的 .......................................................... 3

1.2 面向读者 .......................................................... 3

1.3 名词解释 .......................................................... 3

第二章 程序结构 ......................................................... 4

2.1 包结构 ............................................................ 4

2.2 相关类 ............................................................ 5

第三章 JAVA规范 ........................................................ 6

3.1 核心原则 .......................................................... 6

3.2 命名规范 .......................................................... 6

3.2.1 包、类和接口 .................................................. 6

3.2.2 方法 .......................................................... 7

Java开发规范(公司规范)

Java开发规范(公司规范)

Java开发规范

第1章 序言

本规范的目的在于:建立一个可行可操作的编程标准、约定和指南,以规范公司java代码研发工作。

2013年为公司的质量年,为了提高公司研发能力,该规范的制定是为了规范java代码开发,提高java开发质量,从代码的层面规范并提高java项目的研发水平。该规范由运营中心技术小组制定,运营中心技术小组将结合PMD检查工具以及相应的检查工具,组织技术监控人员对重点项目以及新的java项目定期检查,对代码质量进行评估,对代码质量较差限期整改,并报运营中心备案作为项目考核依据。

本规范适用于2013年公司java代码研发规范。本规范的内容包括两个方面:java开发一般规范,以及java代码开发安全性规范。Java代码开发一般规范主要从java基本语法,代码格式,耦合性以及设计方面,以及代码质量因子等进行描述;java代码开发安全性规范主要从sql注入,资源注入,跨站脚步,安全边界违例,系统信息泄露进行描述。

为了方便并配合PMD检查工具等相应检查工具,方便开发者针对违规代码进行调整,本规范中java一般开发规范描述形式将结合PMD,并提供示例代码,其形式如下:

 规范描述:

 PMD规则名称:

 PMD级别(注1):

 违规示例代码:  合法示例代码:

本规范中java安全开发规范部分将结合具体项目,对出现安全隐患的代码进行分析,以及相应的解决办法和思路上进行分析,其具体格式如下:

 风险及危害:

 应对措施:

 非安全代码示例

 安全代码示例

本规范解释权归运营中心技术小组,属于运营中心为了提供公司研发水平以及质量的一系列措施中的一部分,在后续的版本中将根据具体需要进行修改以及调整。

注1:PMD级别分为5级

Error high 必须修改

Error 不修改的项需要进行说明

Warning high

JAVA开发规范 2

JAVA开发规范

本篇规范基于阿⾥巴巴、华为的开发⼿册,添加了我们团队的开发风格规范,补充了⼀些细节。感谢前⼈的经验和付出,让我们可以有机会站在巨⼈的肩膀上眺望星⾠⼤

海。

规范不是为了约束和禁锢⼤家的创造⼒,⽽是为了帮助⼤家能够在正确的道路上,尽可能的避免踩坑和跑偏。

规范可以让我们⽆论单枪匹马还是与众⼈同⾏的时候都能得⼼应⼿。

规范可以让我们在⾯对⽇益变态的需求和做代码接盘侠的时候,更优雅从容。

规则并不是完美的,通过约束和禁⽌在特定情况下的特性,可能会对代码实现造成影响。

但是我们制定规则的⽬的:为了⼤多数程序员⼩伙伴可以得到更多的好处,如果在团队实际运作中认为某个规则⽆法遵循或有更好的做法,希望⼤家可以共同改进该规范。

⼀、编程规范

1、好代码的原则

我们参考 Kent Beck 的简单设计四原则来指导我们的如何写出优秀的代码,如何有效地判断我们的代码是优秀的。

通过所有测试(Passes its tests):强调的是外部需求,这是代码实现最重要的

尽可能消除重复 (Minimizes duplication):代码的模块架构设计,保证代码的正交性,保证代码更容易修改

尽可能清晰表达 (Maximizes clarity):代码的可阅读性,保证代码是容易阅读的

更少代码元素 (Has fewer elements):保证代码是简洁的,在简洁和表达⼒之间,我们更看重表达⼒

以上四个原则的重要程度依次降低, 这组定义被称做简单设计原则。

2、项⽬命名规范

全部采⽤⼩写⽅式, 以中划线分隔。正例:mall-management-system / order-service-client / user-api反例:mall_management-system / mallManagementSystem / orderServiceClient

3、TODO/FIXME 规范TODO/TBD(to be determined) 注释⼀般⽤来描述已知待改进、待补充的修改点,并且加上作者名称。

java软件开发规范-V0.1

软件开发规范

第1章 命名规范

系统中的命名一概不要出现首字母缩写的命名方式,如:

/visit/hardware/info/findById 不要写成 /visit/hardware/info/fbi 这种毫无可读性的方式

又如:updateByPrimaryKeySelective(Entity entity);不要写成

updateByPKS(Entity entity);

以此类推„„

1.1. 包命名规则

com/公司名(dashu)/子系统名称(项目名)/模块名/

各系统必备模块描述:

base:系统基础模块,各系统都共用的模块,提供系统最基本的运行环境,如日志操作管理,系统配置管理,公共工具类,公共字典管理

core:各子系统的核心模块,协调该系统中各模块之间相应的调用

其他模块根据系统再进行具体划分

各模块下各包的命名

包名称 说明

entity 物理实体,与物理表相对应

vo 视图类实体

web(controller/action/servlet) 控制层,需要返回页面才用,返回json数据的用其他包webservice

webservice 开放接口,返回json数据的控制层,可根据实现的框架去命名子层包名,如:rest/axit2/cxf/jmx

service spring服务层,子层包名impl

repository(mapper/dao) 数据操作层

util 该模块的一些工具类存放包

api 内部调用接口包,由于各模块功能要求相应独立,所以不建议直接注入其它模块的service类,最好统一在此提供本模块的所有service类

common 存放公共类

interceptor 本系统中所有的拦截器存放包,该包只在core模块中

listen 本系统中所有的监听器存放包,该包只在core模块中

filter 本系统中所有的过滤器存放包,该包只在core模块中

1.2. 请求地址命名:

java代码开发规范

java代码开发规范

⼀ 编码规范

1.1 命名规范

1. 代码中的命名均不能以特殊字符(如下划线、$#符号)开始或结束。

反例: _name / #Object

2. 代码中的命名严禁使⽤拼⾳与英⽂混合的⽅式,更不允许直接使⽤中⽂的⽅式。

反例: toubao / lipei。3. 类名使⽤UpperCamelCase风格,必须遵从驼峰形式。

正例:CommonUtils / BaseVo4. ⽅法名、参数名、成员变量、局部变量都统⼀使⽤lowerCamelCase风格,必须遵从驼峰形式。

正例: orderService / getOrderService()5. 常量命名全部⼤写,单词间⽤下划线隔开,⼒求语义表达完整清楚,不要嫌名字长。

正例: ZK_CONFIG_ROOTNODE6. 抽象类命名使⽤Abstract或Base开头;异常类命名使⽤Exception结尾;测试类命名以它要测试的类的名称开始,以Test结尾。

7. 包名使⽤com.hetai.服务名.分层名。

正例: oauth系统的DAO, com.hetai.oauth.dao8. 如果使⽤到了设计模式或具有明确职责,建议在类名中体现出具体模式或职责。

正例:ExecutorFactory / AbstractProducer 9. 各分层都需要接⼝和实现类,实现类⽤Impl作后缀与接⼝区别。

正例:OrderServiceImpl实现OrderService接⼝。 10. 枚举类名建议带上Enum后缀,枚举成员名称需要全⼤写,单词间⽤下划线隔开。

正例:枚举名字:PolicyIdTypeEnum,成员名称:ID_CARD/ PASSPORT。11. 各层⽅法命名规范: 1) 查询的⽅法⽤get/ query做前缀。

2) 插⼊的⽅法⽤add 或insert做前缀。

3) 删除的⽅法⽤remove 或delete做前缀。

4) 修改的⽅法⽤modify/ update做前缀。

java 开发规范

java开发规范

(一)java命名规范

1、变量、成员、方法名统一采用驼峰命名(lowerCamelCase),做到见语知其义

例子:变量——用户数据(userList)、方法——getUserData(int type)等。

说明:正常变量定义使用驼峰命名,特殊的如DTO\VO\DO等除外。

2、类名的定义

(1)普通类名采用大写字母开始;

(2)抽象类采用Abstract或Base开头。 例子:普通类——class

UserModel,抽象类——abstract class AbstractUserDefinition等。

3、常量、类型、接口、子类的定义

(1)常量使用全大写且单词之间用"_“隔开; (2)boolean变量不能使用is开头;

(3)接口尽量不要修饰符、子类紧跟接口追加Impl。

例子:常量——SORT_TYPE,布尔类型——flag,接口——UserService,实现类——UserServiceImpl等。

说明:常量不可组装,需要原子性定义,不能出现"KEY”+SORT_TYPE这种内部出现。

4、包名、异常、枚举、方法名称的定义

(1)包名一律采用小写; (2)异常都采用_Exception结尾; (3)枚举都是以Enum结尾;

(4)方法名称——根据方法内容采用如插入insert-*。

例子:异常——UserException,包名——com.test,枚举——UserEnum,方法名称——insertUser等。

5、领域模型定义规范:主要是以VO\DTO\DO等结尾

例子:用户数据——UserDTO等 (1)数据对象:xxxDO,xxx 即为数据表名。

(2)数据传输对象:xxxDTO,xxx为业务领域相关的名称。 (3)展示对象:xxxVO,xxx一般为网页名称。

(4)POJO是DO/DTO/BO/VO的统称,禁止命名成xxxPOJO。

(二)代码格式规范

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档