PB开发项目技术规范
作为一名学习、并从事过多年PB开发的“老兵”来说,深深感受到在学习和研发PB项目过程中,编程技术规范是多么的必要,而这些规范往往令初学者摸不着方向,感到众多而模糊,一致总是被忽略。为此,我把我总结的PB开发项目技术规范一文贴上来和大家共同学习和分享。
1统设计规范
1.1界面设计规范
屏幕分辨率:800 * 600
字体及字号:中文简体,宋体/黑体,9号字。一般情况下,建议界面使用9号宋体(使用中文Win95中文字库 , 与Microsoft 公司Win95系统所使用的字体一致.),如果出于界面布局考虑可灵活变通。但原则上不支持使用外部字库,以免制做安装盘或安装到其它机器时,找不到相应字库。
颜色约定: 所有按钮、窗口背景为灰色;所有输入栏目为白底黑字。
屏幕布局:屏幕第1行是系统菜单,使用统一的系统框架;屏幕第2、3行是工具条,调用公用的工具条对象;屏幕底部为状态行或提示信息行。由于可调用公用工具条,数据编辑窗口原则上不得再出现与工具条功能相同的按钮。
1.2窗口命名规范
系统内主要存在三类窗口,分别为编辑窗口、查询窗口和报表窗口。三类窗口的命名规范分别为:
w_zzmm_xxxx
其中:
zz —— 子系统代码
mm —— 模块名缩写
xxxx —— 窗口标示名称
1.3子系统命名规范
系统调研后,应列出所要开发的子系统数目、名称,并且对每一个子系统给予一个英文简称。
1.4设计规范
为使本系统在界面风格上保持高度的一致性,子系统的所有对象均由界面风格一致的父类对象继承生成,从而保证在窗口的布局、画面的转换、以及菜单按钮、颜色、字体、对话框等方面都能达到高度的统一。编码第一步是将公用界面写出,然后所有window、datawindow、菜单均从基库中继承后再编写代码。
所有查询窗口均采用grid格式,并提供split功能。所有查询窗口均不可修改。
原则上,所有dropdown datawindow 应该排序。
为清晰起见,功能树的层次关系最多不得超过5层。
2数据库开发规范
2.1数据库子段命名规范
字段名不得超过30个字符,最好是在5~15个字符之间,最好用英文单词(如姓名用name表示等),以易于理解为标准。同时对有普遍意义的字段采用统一命名,如××姓名这类字段均统一采用name-××方式命名;
每个字段必须加注释,注释包括label、header、comment,其内容为此字段之中文名称,≤15个汉字;
2.2数据库表命名规则
所有的库表名均按以下方式命名
T_ZZMM_XXXX
其中 : T —— 表示是库表
ZZ —— 子系统代号
MM —— 模块代号
XXXX —— 库表标识名
注意:时间类型字段显示格式:YYYY-MM-DD
2.3视图命名规则
所有的视图名均按以下方式命名:
V_ZZMM _XXXX
其中 : V —— 表示是视图
ZZ —— 子系统代号
MM —— 模块代号
XXXX —— 视图标识名
2.4库表、视图的注释
每个库表/视图必须加注释,其内容为:
库表中文名称
此库表/或视图的基本用途
主键字段,外键字段
3 PowerBuilder开发规范
3.1开发用文件目录的设置及命名规范
各子系统的开发,在如下样式的目录树上进行:
驱动器号: /JXC/PUBLIC --------- 存放基库和公用.PBL
/JXC/XX/pbl --------- 存放子系统.PBL
/ JXC /XX/art --------- 存放*.bmp及*.ico文件
/ JXC /XX/doc --------- 存放设计开发文档
/ JXC /XX/help --------- 存放帮助文件
/ JXC /XX/Database --------- 有关数据库的文件
原则上每一个功能模块放在一个应用库中即 *.PBL文件, 若模块太小可合并。应用库的命名规范为: ZD_ZZMM.pbl
其中: ZD ——系统名
ZZ ——子系统名
MM——模块名
例: ZP_SCTJ.pbl 漳平电厂MIS生产子系统生统计模块库文件
3.3对象及控件的命名规范
3.3.1对象命名规范:
Application 应用 ZD_xxxx_
Window 窗口 w_xxxx_
Menu 菜单 m_xxxx_
UserObject用户对象 u_xxxx_
Structure结构 s_xxxx_
Pipeline 管道 p_xxxx_
query 查询 q_xxxx_
Project 项目 Proj_xxxx_
3.3.2数据窗口的命名规范:
自由格式或标签 d_xxxx_
下拉式数据窗口 dd_xxxx_
图形式数据窗口 dg_xxxx_
3.3.3函数的命名规范
Global Function全局函数 gf_xxxx_
Window Function窗口函数 wf_xxxx_
Menu Function 菜单函数 mf_xxxx_
User Object Function 用户对象函数 uf_xxxx_
Global External Function全局外部函数 gef_xxxx_
Local External Function局部外部函数 lef_xxxx_
3.3.4控件命名规范:
CheckButton cb_
CommandButton cb_
DataWindow dw_
DropDownListBox ddlb_
DropDownPictureListBox ddplb_
Eidt Mask em_
Graph gr_
GroupBox gb_
HScrollBar hsb_
ListBox lb_
line ln_
ListView lv_
MultiLineEdit mle_
OLE object ole_
Oval oval_
PictureButton pb_
PictureListBox plb_
RadioButton rb_
Recentangle r_
RoundRecentangle rr_
RichTextEdit rte_
Static Text st_
SingleLineEdit sle_
Tab tab_
TreeView tv
UserObject uo_
VScrollBar vsb_
说明:若以上述对象为基础设计标准的用户定义对象,则前缀前加 'u'。
3.3.5变量的命名规范
变量的命名规范为:
#$_*******
# 的取值为:
g Global (全局变量)
s Share (共享变量)
i Instance(实例变量)
l Local (局部变量)
a Argument (参数变量)
$的取值由下表决定:
数据类型 $的值
Any a
boolean blob
double d
date date
date date
decimal dec
datetime dt
integer i
long l
real r
string s
character ch
time t
unsigned int ui
unsigned long ul
3.3.6系统对象数据类型
DataStore ds
DataWindow dw
DataWindowChild dwc
MailSession ms
Menu m
Structure str
Transaction trans
User Object uo
以上列举的只是PB开发项目技术规范中的一部分重点内容,更多更为详尽的规范还需个人在编写、开发PB程序时慢慢摸索,逐步总结。当然,你也可以有自己的编程规范,但一定不要忘记,你编写的程序不止只有你一个人在看(我们鼓励资源共享),为了后来人学习、改善、继续开发你编写的程序,请从开始便培养好良好的编程习惯,尊重大多数人多年来编程的经验总结。