ABFrame项目设计与开发规范(7)

2019-01-10 11:48

ABFrame系统设计开发规范

3) 页面资源文件一律使用小写字母,命名一般采用主谓格式,各个单词之间使用下划线

“_”连接,如org_tree.jsp、dictionary.js

7.1.14. Java

? 概念

EOS6中所有JAVA文件(包括运算逻辑和JAVA构件将自动呈现在Java目录下),另外,允许通过该目录开发项目中其他的JAVA程序,包括工具类,测试类、Tag类、Filter类等。 ? 命名规范

1) 建议在开发环境中设置好格式,开发过程当中用快捷方式自动格式化。 2) Package 的命名

Package 的名字全部采用小写字母,命名规则如下:

“com.” +”企业名称”+应用代号+”.” +构件包名(不含前缀)+“类别”,例如:com.primeton.abframe.comm.bizlets

此外,对于包名我们做如下约定:

a) 工具函数类包名前缀为.util,如com.primeton.abframe.auth.util b) Servlet类包名前缀为.servlet,如com.primeton.abframe.auth.servlet c) test case类包名前缀为.test,如com.primeton.abframe.auth.test d) Tag类包名前缀为.tag,如com.primeton.abframe.auth.tag

e) Filter类包名前缀为.filter,如com.primeton.abframe.auth.filter

共61页 第31页

ABFrame系统设计开发规范

3) Class 的命名

Class 的名字必须由大写字母开头而其他字母都小写的单词组成,例如:DataFile或InfoParser。

4) Class 变量的命名

变量的名字必须用一个小写字母开头。后面的单词用大写字母开头,例如:debug 或 inputFileSize。

5) Static Final 变量的命名

Static Final 变量的名字应该都大写,并且指出完整含义,例如:MAX_UPLOAD_FILE_SIZE=1024。

6) 参数的命名

参数的名字必须和变量的命名规范一致。

7) 数组的命名

数组应该总是用下面的方式来命名: byte[] buffer; 而不是: byte buffer[];

8) 方法的参数命名

使用有意义的参数命名,如果可能的话,使用和要赋值的字段一样的名字: SetCounter(int size) {

this.size = size; }

7.1.15. 配置信息

? 概念

由于构件包在EOS6中是一个独立的部署单元,因此构件包提供的配置信息目录,允许定义异常、国际化资源文件、日志配置、Handler等 ? 命名规范

遵循相关配置规范。

7.1.16. 包

? 概念

EOS6允许在很多资源类型下创建包,用以构造项目的命名空间。

EOS6创建构件包时,会自动创建构件包同名的包,创建逻辑构件时,也会创建与逻辑构件同名的包。

共61页 第32页

ABFrame系统设计开发规范

? 命名规范

1) 包命名一律要求为小写

2) 在各个资源下创建包的规范参见各个资源的命名规范,例如逻辑构件、组合构件等

7.1.17. WEB目录

? 概念

WEB目录是针对整个项目的WEB配置目录,允许放置对整个应用有效的资源文件,包括公共的js、图片、页面、以及WEB-INF的配置等

? 命名规范

1) WEB目录下文件的命名规范。 目录结构

common -放置公共JSP文件

images - 存放项目中运用的图片资源,建议图片名称使用abf-前缀。 scripts - 存放项目中公共的JavaScript资源。 styles - 存放项目中运用的样式文件。

2) 构件包(功能)级资源严禁放在WEB目录下

7.1.18. 国际化资源文件

? 概念

页面的信息的国际化内容都存放在构件包的配置信息下的resources/i18n目录下的资源文件中

? 命名规范

1) 资源文件的命名规范。

资源文件的命名按照构件包和子构件包划分,每个构件(子)包对应一组资源文件,每组资源文件包括多个语种的对应信息,如机构维护的构件包为oganization则国际化资源文件为

oganization_en_US.properties,oganization_zh_CN.properties。。。。等。 国际化的标识为 语种_国别。

语种使用ISO639-2(w3c) 国别 使用ISO3166(w3c) 2) Key的命名

1、 全局使用的消息名:

固定名称、标题、按钮显示名称:以l_开头加上英文单词

例如: 选择 l_choose

确定 l_comfirm 取消 l_cancle

字段名: 实体名.属性名

例如:AcOrganization.orgid

共61页 第33页

ABFrame系统设计开发规范

提示信息:以m_+”开头加上页面操作信息”+”_”+”消息名称”

例如:删除时的提示信息m_delete_confirm 图片名称:以i_开始加上英文单词 例如:i_logo

2、 局部使用的消息名(构件包、页面流、JSP内使用)

局部使用的消息名称可在全局使用的消息命名规范基础上,在消息名前增加”页面流名称”+”_”

如 选择:EmployeeManager._ l_choose

字段名: EmployeeManager._ AcOrganization.orgid 删除时的提示信息EmployeeManager._m_delete_confirm

7.2. 设计开发规范 7.2.1.构件包

1) 设计时,合理规划项目中构件包的粒度,一个构件包相当于一个业务模块,避免构件

包太大,影响业务的复用;避免构件包太细,导致项目构件包数量太多,不利于管理 2) 构件包在设计阶段由设计人员确定

3) 每个构件包对应一个与其名称一致的web路径 4)

7.2.2.逻辑构件

1) ABFrame项目的业务处理一律通过逻辑构件中的逻辑流实现

7.2.3.逻辑流

1) 要求逻辑流尽可能做到简洁功能独立,简洁是指所实现的逻辑流条理清晰、业务算法

简单易于理解,要求在熟悉EOS体系架构和已有构件(可能是EOS提供的,也可能是自身的积累)的基础上,选择最佳的算法实现;功能独立是指在一个逻辑流中的业务处理是独立的,复杂的逻辑流考虑细分为多个小的逻辑流,以提高逻辑流的复用度。例如,某个功能要求查询获得多个数据表的结果,在编写逻辑流时不建议将所有查询处理放到一个逻辑流中实现,而是在不同的逻辑流中实现,再通过页面流调用多个逻辑流,这样,编写的逻辑流可能还能在别的功能中得到复用,充分利用到面向构件积累的优势。

以下是某项目中页面流的截图,该逻辑响应用户界面上查询某次培训的详细资料(包括培训基本信息、培训的课程安排、参与培训的人员列表)的动作,对应信息的查询完全可以在一个逻辑流中实现,也可以分为三个逻辑流实现(如图所示),然后通过页面流分别调用,这样分别实现的三个逻辑流除了满足此功能外,还可以在培训课程查询、培训人员查询等功能中得到复用。

共61页 第34页

ABFrame系统设计开发规范

2) 编写的逻辑流要求以业务的语义描述每个处理环节(避免使用程序语义描述或者不描

述),即更改逻辑流中调用的运算逻辑的显示名称,同时逻辑图形编排清晰,尽可能不出现交叉线,另外可以在逻辑流中增加注释图元,注明逻辑流的功能等,这样有利于别人的阅读和理解,也方便日后系统的维护,以下是某项目中的逻辑流截图:

共61页 第35页


ABFrame项目设计与开发规范(7).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:高中数学:椭圆知识点归纳总结及经典例题

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: