欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

PB之——编码规范

程序员文章站 2024-02-13 20:42:22
...

这是2010年写的一个规范给公司内部使用的。  PB毕竟是一个老语言了,命名规范和java,c# 差别很大

其实代码规范见仁见智吧,良好的书写规范对自己没坏处的,当然对公司也大大的有好处,毕竟谁看到写的乱糟糟的代码心里都不爽。 但是真正能按照规范写代码的人毕竟不是太多,特别特别是代码的注释,更特别特别的是修改注释。 在看到蛋疼代码有蛋碎感的同时,还有一种想爆粗口的念头, 想想别人看到咱们的代码会不会也有同样的感觉 , 所以大家尽量书写规范的代码 , 共勉。。。。

 

变量命名规范 (这样命名的变量很容易看明白 这是实例,全局还是局部,已经变量的类型,变量的意义 为修改代码带来方便)

         变量作用域 + 变量类型 + _ + 变量意义说明串

 

一、变量作用域

全局变量 g_

共享变量 s_        //不推荐使用,共享变量不依赖于对象的实例存在

实例变量 i_

局部变量 l_

注意:四种作用域前缀字母都为小写

 

二、变量类型 (以局部变量为例)

 

数据类型

类型声明

前缀

整形

Integer

li_

字符型

String

ls_

日期

Date

ld_

日期时间

DateTime

ldt

布尔

Boolean

lb_

浮点

Decimal

ldec_

Double

Double

ldou_

注意:以上是主要的数据类型 ,前缀都是小写

 

三、变量意义说明串

变量说明字符串可以有2中写法

  1. 推荐使用 英文字符串做说明串,每个单词的首字母都要大写, 如:ls_CheckedDate
  2. 在英文不好表达时 ,可以使用中文全拼代替,前两个中文汉字使用全拼,首字母大写,后面汉字使用全拼的首字母,都要大写      如: lb_DianJiLBTPX  点击列标题排序

    可能有人会说用拼音不好,要用英文 。相对于用词霸翻译过来的英文我更只是用中文拼音。 其实pb也支持直接用中文 ,呵呵

 

四、变量声明

1.  变量类型使用全称,如:整类 使用Integer 而不是 Int

2.  变量类型首字母大写,其余字母全小写 如: String

3.  变量声明尽量不要在一行中声明太多变量,分行处理,在变量不多时可以每行声明一个变量

4.  变量名称要具有一定的实际意义 ,做到见其名知其意,在比较难理解时在变量后面添加必要的注释文字

 

程序注释 [可以使用pbhelper来辅助完成]

         程序注释可分3种注释

  1. 函数、事件的说明注释 。 主要说明函数的作用,创建日期,创建人。 当然在修改时最好也好加上修改备注,时间,修改人。
  2. 一段程序的注释  。 这个主要是方便代码的查看。 写代码我更倾向于分段写好注释,然后插入代码,这样注释也就当做一个提纲 ,对代码的书写好处很大

注意:

  1. 代码注释是为了更好、更快捷的阅读代码,所以注释并不是越多越好,要有度,感觉很明了的东西就不要添加注释 ,对难懂代码添加必要的注释 。
  2. 原则上对代码的任何修改都要有注释 ,但是也是要注意具体情况 ,业务逻辑的更改和重大变更是必须有注释的

 

代码书写规范

  1. 代码各层次使用 tab键缩进 ,差不多4个空格位置 , 注意缩进的美观,层次感,这样可以很好的辅助阅读代码,特别是多层If 、循环嵌套

      形如: (见过一个200行左右的代码,很多 if ,else 怎么缩进的都有 ,找到if根本就找到那个end 是对应他的 ,这样的代码谁看谁难受)

If ls_Name = 'ABC' Then
    MessageBox("恭喜" , "字符串相等了!" , Information! ) 
End If

  

  2. 系统关键字 使用首字母大写的方式 如: If 、 For 、Update

  3. 系统提供的函数也要各单词首字母大写 如: GetItemString() ,SetItemStatus()

     4. 每个单词相隔一个空格 ,不要写的太紧密 ,有些情况为了美观可以由多个空格。

     5. 事件或者函数中,有多行代码时 ,可以为多行代码进行分小组,使用一个空行,按照功能分不同的小块,使代码看起来有段落感 ,不要添加无谓的空行 ,也不要一下添多个空行 。

     6. 程序中直接使用 Update ,Insert ,Delete SQL语句时,每个关键字右对齐,并且另起一行书写 ,且关键字首字母大写 ,形如:

 

Select user_name 
   Into :ls_MyName
   From sys_users
 Where id = 88888 

  

注意 :不要把一个SQL语句放在一行中,以增加程序的可读性

     7. 当一行代码很长时 ,需要使用换行书写的方式 ,使用换行连接符 & 。 一般情况下尽量不要让别人使用水平滚动条去看你的代码

     8. 当一个事件或者函数中的代码过多时 ,超过百行 ,那么请考虑把处理逻辑分开成几个函数来处理 ,对函数进行必要的功能注释  ,增加阅读程序的效率。 形如:

   

-- 保存事件 的大致处理 ,很多时候写到一个事件里代码太长了 ,就分到几个事件/函数中。

-- 判断是否需要保存
Wf_Check_Changed()

-- 数据有效性检查
Wf_Check_Vai()

-- 保存数据
Wf_Update()
-- 保存后续处理
Wf_Post_Update()

-- 事物处理
Wf_Trans()

 

转载于:https://www.cnblogs.com/powerbuilder/archive/2012/03/11/2390756.html