PB命名规则及软件开发规范
PB命名规则及软件开发规范2011-01-05 11:34PB命名规则及软件开发规范
软件的编写、维护和测试都是由多人协同完成的,这样在工作中就需要一些约定和规范来协调工作人员的工作。PB虽然吸收了很多RAD工具的优点,但工具只是设施、基础,还需要优秀的
方法
快递客服问题件处理详细方法山木方法pdf计算方法pdf华与华方法下载八字理论方法下载
指导。这就需要我们制定软件书写
标准
excel标准偏差excel标准偏差函数exl标准差函数国标检验抽样标准表免费下载红头文件格式标准下载
以规范我们的程序开发。使程序具有很好的可读性、可维护性。
下面就pbl库划分、命名规范、注释规范、代码格式规范及界面规范进行约定。
一、应用程序pbl组成(假设应用名为app)
我们将对象进行分门别类存放,以便于查找和管理
1、share.pbl:存放应用、菜单、公用函数、公用结构。或者命名为public.pbl。
2、app_win.pbl:存放窗口。
3、app_dat.pbl:存放数据窗口对象。
4、control.pbl:存放公用的用户对象(这些对象可以直接移植到其他的项目中使用)。
注:鉴于目前我们PB开发系统状况--【窗口】、【数据窗口对象】都比较多,第2点,3点规范不采纳,我们将对【窗口】、【数据窗口对象】都按系统大菜单的功能来命名pbl并存放在一起。
二、应用程序中对象命名规范
1、窗口命名规范
窗口的名字以w_开头,后面加以描述其功能的英文单词。如w_label
表
关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf
示此窗口为标引窗口。如果A窗口为B窗口(w_label)的弹出窗口,则A窗口应命名为w_label_pop(pop为弹出窗口功能的英文名称)。(注:不做强制要求,直接w_模块功能名也可以)
2、数据窗口对象命名规范
数据窗口对象以d_开头,后面加上作为其数据源的表名。如以表stv_class为数据源建立的数据窗口对象应命名为d_stv_class。如果对d_stv_class进行了修改,如更改其显示风格、增加计算字段或检索参数等,则将其命名为d_winname_label(winname为窗口名,label功能名)。
注:对【数据窗口对象】再详细说明一下,按其功能作用再分命名方式。
报表:d_模块功能名
子报表:dwc_模块功能名
查找条件datawindow:dwf_模块功能名
Windows窗口里:dw_模块功能名
Datastore对象:ds_模块功能名
下拉列表框datawindow:dddw_模块功能名
3、变量命名规范
全局变量命名:以gt_开头,其中t表示数据类型的第一个英文字母,后缀为变量功能名。
依次类推实例变量以it_开头,局部变量以lt_开头。
例如:存储xml文件ip地址的全局变量可定义为:string gs_xmlip。
存储窗口中ddlb当前选择的索引的实例变量可定义为integer ii_index
在dw_1:clicked~中存储dw_1行数的变量可定义为long ll_rownum
注:对于功能意义不大,如做循环用的临时变量i,j等可以直接定义不做额外要求。
4、函数命名规范
全局函数以gf_开头,后缀为能表示其功能的英文名称,如gf_connectdb表示连接数据库的全局函数。
窗口函数以wf_开头,后缀为能表示其功能的英文名称,如wf_insertlb表示往listbox中添加数据。
用户对象中的函数以of_开头,后缀为能表示其功能的英文名称,如
of_expandchild表示扩展子节点。
鉴于目前我们PB开发系统状况--基本上用户对象中的函数都以ue_开头,所有此处我们用ue_开头。
5、用户对象命名规范
用户对象以uo_开头,后面加其功能名,如uo_treeview示此对象具有树的功能,是通用对象的命名规则。如果对uo_treeview进行特定功能的扩展,则在其后加上应用的名称,如uo_treeview_app。
如果窗口中的控件是继承可视化的用户对象,则在此控件的property的tag
中应注明其父类的名字。
6、菜单命名规范
菜单名称以m_开头,后缀为其所挂靠的窗口名称。如挂靠w_main窗口(mdi)
的菜单名为m_main。
7、结构命名规范
结构名以str_开头,后缀为其功能名。
8、控件的命名规范
窗口上控件的命名以PB提供的缺省前缀为前缀,后缀为此控件的功能名称。 三、注释
1、窗口注释
在窗口的注释中说明窗口的实现的主要功能。
2、数据窗口对象注释
在数据窗口对象的注释中说明其主要功能及所应用的窗口名称。 3、程序注释
在程序中说明代码块实现的主要功能。
例如:
//如果当前的行号无意义,则退出
if row 0then return end if 注:对于不少人用{if row then return}这种简略试写法,我们不提倡。
这种漏写{end if}写法,对于多个{if块}时不易阅读和调试,所以尽量避免。 4、变量注释
对于全局变量和实例变量要注释说明其所要存储对象的意义。 例如:
String gs_xmlip//用于存储xml文件的ip地址
5、函数、事件注释 在函数和事件的开始都要写上其所完成的功能,对于函数来说如果有参数
的则要对参数进行说明。 例如:
事件注释:
//==
//事件:.()
//--
//描述:
//--
//参数:
//--
//返回:(none) //--
//作者:limin日期:2010年11月29日
//==
函数注释:
//==
//函数:.()
//--
//描述:
//--
//参数:
-- //
//返回:(none)
//--
//作者:limin日期:2010年11月29日
//==
6、日常修改注释:
//==
//修改:
//--
//作者:limin日期:2010年11月29日
//==
注:为节省代码空间,当然也不一定要求日常修改注释要多行,也可以只
写一行注释语句。但是要求必须包括三部门:【修改人】、【修改日期】、
【修改内容】。修改其他同事的代码时,原代码内容尽量保留并注释掉。 对于大块功能代码可以用{//begin功能名}和{//end功能名} 例如:
//begin功能名
….
….
//end功能名
四、代码格式规范
代码格式规范包括代码对齐,代码布局。
1、根据功能或功能完成步骤将脚本用空行分隔成段。 例如:
dw_1.settransobject(sqlca) dw_1.retrieve()
insert_ddlb()
insert_lb()
2、条件或循环语句中的代码要缩进。
例如:
if li_label=3 then gb_2.text="未审校"
end if 3、代码缩进一律使用tab键。默认tab值为3个空格 4、变量全部用小写。
五、界面规范
1、窗口、菜单、控件的布局和风格要统一,控件布局要准确 窗口中的控件文字包括字体、颜色、大小、字体大小、字体粗细、背景颜
色要一致,同一应用中的窗口和控件采用一种风格,而且在不同窗口中,功能
相近的按钮最好设置在同样的位置。按钮控件需要进行细致布局,作到大小相等、行列对齐。
推荐用9号宋体最为屏幕显示字体,这是中文Windows中提供一种的适合屏幕显示的最小字体,这种字体没有毛刺,很自然。注:我们不一定要求是9号字,但是要和整套系统字体格式统一,一些标
题
快递公司问题件快递公司问题件货款处理关于圆的周长面积重点题型关于解方程组的题及答案关于南海问题
等客户要求字体除外。
2、窗口标题文字描述统一规范
统一使用窗口功能名加上当前登录人。
例如:目前焦点窗口为标引管理,登录人为超级用户,则窗口标题应为:
标引管理==》超级用户。(注:该处不做要求,因为我们系统一般主界面的任务栏有显示登录用户)
3、窗口中隐藏控件不要太多
窗口中隐藏控件太多的话,会导致窗口内布局比较混乱,并且会给合作人造成理解上的困难。
4、图片文件的管理
图片文件要存放在一个统一的文件夹内,并将其命名为images。程序中图片的路径都取相对路径。针对目前我们pb开发系统有images,pic,sign三种文件夹命名,故以后都必须集中在pic文件夹下,以前的都不在处理。
六、数据库操作
在程序中利用SQL语句或数据窗口对数据库进行插入、删除、修改更新时,都要判断操作结果,如果成功则commit using sqlca;否则的话rollback using sqlca;
提醒:对于以前pb开发代码我们不再讨论,也不要去计较。这里写的规则只针对我们新开发脚本做要求。以前的代码,大家有兴趣可以安新要求改回来;如果忙不改,也没关系。
本文档红色字体为需特别注意的,蓝色是必须的要求,如有不足或其他问
题希望大家多多指教。