EAS命名规范.docx
- 文档编号:11579233
- 上传时间:2023-03-19
- 格式:DOCX
- 页数:15
- 大小:76.83KB
EAS命名规范.docx
《EAS命名规范.docx》由会员分享,可在线阅读,更多相关《EAS命名规范.docx(15页珍藏版)》请在冰豆网上搜索。
EAS命名规范
EAS命名规范
修订历史
版本号
发布日期
编制人
审核人/批准人
修改的章节号
1.0
2004-12-05
华道清
初始版本
1.1
2005-05-16
华道清
根据EAS开发流程重新修订
1.简介
1.1目的
本文档的目的是规范EAS设计开发过程中的命名。
1.2范围
本文档适用于EAS设计阶段和开发阶段。
1.3约束
本文档约定设计阶段采用的工具为Together和BOSStudio,开发阶段基于BOS和应用框架的编程模型进行,对MDA模式下的设计开发进行命名规范。
2.设计阶段的命名
2.1. Together工程及文件命名
请参见《项目文件组织规范》。
2.2. Together建模命名
2.2.1. 子系统命名
子系统的命名在ERP系统中通常具有固定的术语,EAS中使用到的子系统名都可以从EAS术语数据库中检索,检索方法请使用“术语管理工具”进行检索。
命名格式:
大写英文缩写
举例:
总账GL
应收AR
应付AP
固定资产FIX
人力资源HR
组织架构ORG
基础资料BD
企业战略管理SEM
2.2.2. 系统接口图命名
系统接口图从架构的高度,展现当前子系统与所有其他子系统的接口依赖关系,体现当前系统的边界。
系统接口图的命名格式:
固定为architecture,采用全小写样式。
系统接口图中的包必须命名别名(alias栏),命名格式为:
大写英文缩写+"("+中文名称+")"
举例:
2.2.3. 接口交互图命名
接口交互图用于展现当前子系统与某一具体子系统的相互调用关系。
命名格式:
当前子系统缩写_+相关子系统缩写
举例:
gl_botp
gl_base
2.3. 数据库建模命名
2.3.1. 数据库对象命名列表
通用命名规则与名称长度(应据KSQL的最新规范进行调整):
类型
命名规则
最大长度
例子
数据表
T_+子系统名+具体名称
30
T_HR_CompenItem
视图
V_+子系统名+具体名称
30
V_ORG_Company
字段
F+具体名称
30
FID,FNumber,FVerifier
主键
PK_+子系统名+具体名称
18
PK_HR_CompenItem
外键
FK_+子系统名+具体名称
18
FK_HR_ComColl_Emp
约束
CR_+子系统名+具体名称
18
CR_Sys_CodeRule
普通索引
IX_+子系统名+具体名称
18
IX_BA_FunctNum
唯一索引
唯一约束
UX_+子系统名+具体名称
UK_+子系统名+具体名称
18
UK_BA_FunctNum
关系图
子系统名_+顺序号_+具体名称
255
HR_3_Compute
用户定义类型
具体名称
32
Name,Name_Unicode,Number
2.3.2. Field字段命名
n 以大写字母F开头,接下来的每个单词的第一个字母大写;
n 一般字段名(Bool字段除外)要以名词、名词词组、形容词+名词、分词+名词来命名;
n 所有的标识字段用大写的“ID”(如FID,FUserID等);
n 对于Bool类型的字段命名使用F+Is+形容词(名词、分词);
举例:
?
名字:
FName;
?
编码:
FNumber;
?
顺序号(序号):
FSeq;
?
描述:
FDescription;
?
备注:
FComment;
?
组织类型:
FOrgType;
?
组织单元:
FOrgUnit;
?
金额:
FAmount;
?
数量:
FQty;
?
创建人:
FCreatorID;
?
创建日期:
FCreatedDate。
2.3.3. Constraint约束命名
主键:
PK_+子系统名+具体名称
外键:
FK_+子系统名+具体名称
约束:
CR_+子系统名+具体名称
普通索引:
IX_+子系统名+具体名称
唯一索引:
UX_+子系统名+具体名称
唯一约束:
UK_+子系统名+具体名称
2.3.4. 数据库脚本命名
请参见《EAS数据库管理规范》。
2.4. BOS元数据命名
序号
元数据
命名格式
路径
1
异常
XxxException
根(app上一层)
2
枚举
XxxEnum
根(app上一层)
3
数据表
T_XX_Yyy
XX为子系统简称,大写;Yyy为Pascal格式
app
4
实体
具体名称
app
5
关系
R_[ClientEntity]_[SupplierEntity]_[ClientLinkProperty]
app
6
Facade
XxxFacade
app
7
规则
XxxRule
app
8
查询
XxxQuery
app
9
用户界面
XxxUI
client
10
资源
XxxResource
client(客户端使用,通常情况)
app(服务端使用,特殊情况)
根(共用,特殊)
11
业务功能
XxxFunction
app
12
业务流程模板
XxxTemplate
app
13
业务流程
XxxProcess
app
2.4.1. 异常命名
命名格式:
XxxException
举例:
CurrencyException
2.1.1子异常命名
命名格式:
XXX_XXX_……(以下划线分隔的有明确语义的大写英文单词)
举例:
NAME_NOT_NULL(“名称不能为空!
”)
2.4.2. 资源命名
命名格式:
XxxResource
举例:
AccountResource
2.4.2.1. 资源项命名
命名格式:
xxxXxxxXxxx……(有明确语义的英文单词组合)
举例:
notAllowChangeParent(“不允许更改科目的父科目!
”)
2.4.3. 枚举命名
命名格式:
XxxEnum
举例:
SystemEnum
2.4.3.1. 枚举项命名
命名格式:
XXX_XXX_……(以下划线分隔的有明确语义的大写英文单词)
举例:
FIXED_ASSETS(固定资产)
2.4.4. 查询命名
2.4.4.1. 普通查询
命名格式:
XxxQuery
举例:
CurrencyQuery(币种查询)
2.4.4.2. F7查询
命名格式:
F7XxxQuery
举例:
F7CurrencyQuery(F7币种查询)
2.4.4.3. 查询字段
2.4.3.1自有字段
命名格式:
xxx(查询绑定主对象属性名称)
举例:
number(编码)
2.4.3.2连接字段
命名格式:
连接对象名.连接对象名.…….属性名
举例:
company.name(公司名称)
图例:
2.4.5. UI命名
2.4.5.1. 基类继承自ListUI
命名格式:
XxxUI
举例:
VoucherListUI(凭证序时薄界面)
2.4.5.2. 基类继承自EditUI
命名格式:
XxxUI
举例:
VoucherEditUI(凭证编辑薄界面)
2.4.5.3. 向导界面
命名格式:
XxxWizardUI
举例:
VoucherExpWizardUI(凭证引出向导界面)
2.4.5.4. 其它
命名格式:
XxxUI
举例:
VirtualCompanySumBalanceUI(虚体公司余额汇总界面)
2.4.6. 业务功能命名
命名格式:
XxxFunction
举例:
VoucherBizFunction(凭证业务功能)
2.5. BVT测试案例命名
设计阶段的BVT测试主要用于外部接口或者重要算法的测试。
命名格式:
Bvt+被测试的接口类名
举例:
BvtIVourcher凭证接口BVT测试类
3. 开发阶段的命名
3.1. JAVA工程及文件命名
请参见《项目文件组织规范》。
3.2. JAVA编码命名
3.2.1. 大小写
3.2.1.1. Pascal样式大小写
将标识符的首字母和后面连接的每个单词的首字母都大写。
可以对三字符或更多字符的标识符使用Pascal大小写。
例如:
BackColor
3.2.1.2. Camel样式大小写
标识符的首字母小写,而每个后面连接的单词的首字母都大写。
例如:
backColor
这是在Java编码中默认的方式。
3.2.1.3. 大写
标识符中的所有字母都大写。
主要针对常量的定义。
例如:
publicstaticfinalintMAX_VALUE=100;
3.2.1.4. 小写
标识符中的所有字母都小写。
这个主要是针对包的命名。
例如:
com.kingdee.eas.xxx;
大小写规则使用参考表
标识符
大小写
示例
备注
类
Pascal
AccountBalance
包名
小写
com.kingdee.eas
方法
Camel
toString
参数
Camel
typeName
常量
大写
MAX_VALUE
枚举值
大写
FIXED_ASSETS
3.2.2. 缩写
为了避免混淆和保证跨语言交互操作,请遵循有关区缩写的使用的下列规则:
1、不允许将缩写或缩略形式用作标识符名称的组成部分。
例如,使用getWindow,而不要使用getWin。
2、不允许使用计算机领域中未被普遍接受的缩写。
3、在适当的时候,使用众所周知的缩写替换冗长的词组名称。
例如,用UI作为UserInterface的缩写,用OLAP作为On-lineAnalyticalProcessing的缩写。
3.2.3. 包命名
命名包名时的一般性规则是公司性质.公司名称.产品名称.功能细分;全部小写;
例如:
com.kingdee.bos.xxx;
com.kingdee.eas.xxx;
3.2.4. 类命名
类的命名采用Pascal大小写,英文单词也可为缩略词(全部大写)。
举例:
BOSObjectFactory.javaBOS对象工厂类
3.2.4.1. 工具类的命名
命名格式:
模块或对象名+Util
举例:
AccountUtil科目工具类
DateTimeUtil日期时间工具类
3.2.4.2. 事件处理器类的命名
基于BOS和应用框架的编程模型不建议自己写事件处理器,绝大多数的事件处理都可以在UIDesigner中指定。
如果要编写事件处理程序,在事件处理器(类)的命名中,采用如下命名格式:
事件名+EventHandler
例如:
FocusEventHandler
3.2.4.3. 设计模式相关类的命名
命名格式:
类名+模式名称
常用的模式有“Factory”,“Delegate”,“Adapter”,“Mediator”等。
举例:
LoginHelper登录帮助类
EventMediator事件协调器
3.2.5. 方法命名
使用动词或动词短语命名方法。
使用Camel大小写。
举例:
removeAll()
getCharArray()
invoke()
3.2.6. 参数命名
1、使用描述性参数名称。
参数名称应当具有足够的描述性,以便参数的名称及其类型可用于在大多数情况下确定它的含义。
2、对参数名称使用Camel大小写。
3、使用描述参数的含义的名称,而不要使用描述参数的类型的名称。
开发工具将提供有关参数的类型的有意义的信息。
因此,通过描述意义,可以更好地使用参数的名称。
少用基于类型的参数名称,仅在适合使用它们的地方使用它们。
4、不要使用保留的参数。
保留的参数是专用参数,如果需要,可以在未来的版本中公开它们。
相反,如果在类库的未来版本中需要更多的数据,请为方法添加新的重载。
5、不要给参数名称加匈牙利语类型表示法的前缀。
举例:
TypegetType(stringtypeName)
stringformat(stringformat,object[]args)
3.2.7. 属性命名
1、使用名词或名词短语命名属性。
2、使用Camel大小写。
3、不要使用匈牙利语表示法。
3.2.8. JNDI命名
3.2.8.1. JDBCConnectionJNDI
连接池的JNDI命名采用小写jdbc+/+名称(小写),如:
jdbc/eas401
3.2.8.2. EJBJNDI
EJB的JNDI命名:
l remote:
ejb/eas/+模块限定名+_+类名+Home;
l local:
ejb/eas/+模块限定名+_+类名+LocalHome。
举例:
ejb/eas/com_kingdee_eas_base_uiframe_app_MainFunctionMenuControllerRemoteHome
ejb/eas/com_kingdee_eas_basedata_master_account_app_AccountViewControllerLocalHome
3.2.8.3. JMSDESTATIONJNDI
对于JMSconnectionfactory的JNDI命名为:
jms/名称+connectionfactory(小写)
JMSdestation的JNDI命名,如果为queue,则为jms/名称+queue(小写);如果为topic,则为jms/名称+topic(小写)
3.2.9. 局部变量的命名
不允许使用中文对命名空间、类、类成员、变量命名。
局部变量的命名采用Camel大小写。
例如:
DataTabledataTable;
对于for循环的变量名,继续使用i、j、k。
for(inti=0;i<10;i++)
{
for(intj=0;j<20;j++)
{
}
}
3.2.10. 数组变量的命名
数组应该总是用下面的方式来命名
byte[]buffer;
而不是bytebuffer[];
3.2.11. 布尔类型的命名
布尔类型的方法、属性或者Field,使用is前缀来命名。
例如:
publicboolisEmpty
publicboolisEmpty(objecto)
{
//dosomething...
}
3.2.12. 控件命名
控件的命名,以前缀作为标识某种类型的控件。
具体如下:
控件
前缀
说明
KDButton
btn
KDButtonGroup
grp
按钮组
KDBizMultiLangBox
mlt
多语言编辑框
KDBizPromptBox
prmt
F7
KDCheckBox
chk
KDComboBox
combo
KDContainer
cont
KDCurrencyTextField
txt
币别编辑框
KDDatePicker
pk
日期
KDEditorPane
pane
KDFormattedTextField
txt
格式化编辑框
KDFilterTextField
txt
KDLabel
lbl
KDLabelContainer
cont
标签容器
KDList
list
KDMaskTextField
txt
KDPanel
pnl
KDPasswordField
pwd
KDProgressBar
bar
进度条
KDRadioButton
btn
KDScrollPane
pane
KDSeparator
sep
KDSlider
sld
滑块
KDSplitPane
pane
KDSpinner
spin
KDTabbedPane
pane
多页签
KDToggleButton
btn
KDTextArea
txt
KDTextPane
pane
KDTimePicker
pk
时间
KDTree
tree
KDTreeView
trview
KDWorkButton
btn
工作区按钮
3.3. 单元测试案例命名
开发阶段的单元测试主要用于外部接口或者重要算法的测试。
命名格式:
Test+被测试的接口类名
举例:
TestICurrency币别接口单元测试类
3.4. 性能测试脚本命名
性能测试脚本通常是利用ORMRpc 工具进行录制的,为了满足性能测试的要求,需要统一命名。
命名格式:
子系统名+业务对象名+操作类型的方式命名
举例:
BasedataAccountAddnew.java科目新增
BasedataAccountUpdate.java科目修改
BasedataAccountDelete.java科目删除
BasedataAccountQuery.java科目查询
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- EAS 命名 规范