PowerBuilder编程变量命名规范及开发注意事项
作者:流方 主页:http://liulee.myrice.com
任何控件都可以看作变量,主要包括对象,变量,及对应的作用域,每实体应能从名称上
看出在那个作用域内,是什么类型等基本信息。
1、 对象命名
PowerBuilder中,对象的命名一般采用如下前缀:
Prefix Object
---------------------------------------------------------------
dw_ DataWindows
dddw_DropDownDataWinows
f_Functions
m_Menus
p_Pipelines
s_Structures
u_UserObjects
w_Windows
2、 控件命名
在PowerBuilder的窗口中,控件的命名一般采用如下前缀:
Prefix Control
---------------------------------------------------------------
cbx_ CheckBox
cb_CommandButton
dw_DataWindow
ddlb_ DropDownListBox
em_EditMask
gr_Graph
gb_GroupBox
hsb_HScrollBar
ln_Line
lb_ListBox
mle_MultiLineEdit
ole_OLE 2 0
ocx_OCX
oval_Oval
p_Picture
pb_PictureButton
rb_RadioButton
r_Rectangle
rr_RoundRectangle
sle_SingleLineEdit
st_StaticText
uo_User Object
vsb_VScrollBar
3、 变量命名:
---------------------------------------------------------------
1)、作用域命名
PrefixScope
---------------------------------------------------------------
g_Global
s_Shared
i_Instance
l_Local
2)、变量类型前缀
PrefixDatatype
---------------------------------------------------------------
b_Boolean
blob_Blob
d_Double
date_Date
dec_Decimal
dt_DateTime
i_Integer
l_Long
s_String
t_Time
ui_Undisgned Int
ul_Undisgned Long
tr_Transaction object
do_Dragobject
dwc_DataWindowChild
nvo_NonVisulObject
4、 函数命名
PrefixScope
---------------------------------------------------------------
gf_Global Function
wf_Window Function
mf_Menu Function
uf_UserObject Function
一个有良好习惯的程序员编写出的程序,基本上具有下列特性:
1、结构清晰,逻辑清楚;
2、变量、代码、注释规范;
3、工程相关文件清楚、明确、分类合理;
4、最重要的一点是一年后能够自己看得懂。
从上面各要求出发,我整理几点如下:
1、 库文件分类及命名:
库文件(PBL,PowerBuilder Library)存放了所有的对象,因此首先这些对象的命名是规范的,清晰的。
一般存放于PBL中的对象是这样命名的:
前缀 _ 子模型编码 _ 对象描述串
如一个数据窗:
d_sys_statusbar_free
表明是一个数据窗,用于系统管理,是用来放置状态条的,是free类型的。
gf_cm_center_window
表明是一个global function,cm = common 表明是公用的函数,作用是用来 center window的。
再如 gf_cm_center_window_in_mdi
则更清楚表示该函数是用来在一个mdi frame中使某窗口居中的。
由此我们可以得出PBL文件的命名方式:
子模型编码 - 模型名称
如 sys_frame.pbl 表明是用于系统管理的,存放了关于程序框架的所有对象。其中任何对象的次前缀都以 sys_ 来表示
如 d_sys_statusbar_free
再如 cm_utility.pbl 表明是公用工具库的,存放了各个对象可能调用的各种工具。如 cm_center_window等等。
当然,简单的应用可以直接放在一个库文件中而不需要再分类。
另外一种分类方式是类似于PB Example中的分类方法,即同一对象类型存放于同一库文件中,如数据窗统统放在 datawindow.pbl中。
2、编程注意点:
·先规划,后实现是必须的步骤,在了解基本算法后再实施编程,心中就会有一个比较清晰的认识而不是做到哪儿算哪儿。在软件工程中
称为系统设计;
·用好PFC编程技术,可以将应用开发时间大大缩短,特别是对复杂的应用;
·如果涉及数据库开发,则必须首先做好数据库设计(功能规格说明书);
·脚本不要太长,多用松耦合的函数及事件以增强重用性;
·写好注释,特别是比较复杂的逻辑更是如此。我常用的格式是:
/**************************************************************************************
功能:
参数:
逻辑:
适用:
编程:
创建: 1999.09.21
修改: 2000.09.21
版本: 1.0
***************************************************************************************/
------------------------------- 未完,待续 -------------------------------