Chinaunix首页 | 论坛 | 博客
  • 博客访问: 354776
  • 博文数量: 90
  • 博客积分: 847
  • 博客等级: 准尉
  • 技术积分: 1373
  • 用 户 组: 普通用户
  • 注册时间: 2012-08-02 10:54
个人简介

跌打滚爬中的小菜鸟...

文章分类

全部博文(90)

文章存档

2015年(5)

2013年(47)

2012年(38)

我的朋友

分类: 系统运维

2012-10-31 19:41:04

一、注释

a) 用注释说明代码

b) Program或者Procedure开头添加Summary

c) 用注释将代码分块

二、声明

a) 程序中用到的所有的变量都在D表声明

b) DS定义时使用缩进

c) DS定义时使用Length Notation而不要用Positional  Notation

三、命名惯例

a) 名字要有描述意义

b) 使用大小写区分单词分割

c) 尽量不使用特殊字符(@#$

四、指示器

a) 尽量少使用指示器,尽量使用Build-in函数,如%EOF,%ERROR,%FOUND

b) 尽量用EVAL *INXX = *ON/*OFF代替SETON/SETOFF

c) 给指示器加个注释。。。

五、结构化编程技术

a) 不使用GOTO, CABxx, COMP

b) 不使用过时的IFxx, DOUxx, DOWxx, WHxx操作符

c) 多分支逻辑用SELECT  WHEN OTHER ENDSL实现

d) ENDxx要成对出现

六、模块化编程技术

a) Use RPG IVs prototyping capabilities to define parameters and procedure interfaces

b) Store prototypes in /COPY members

c) Use IMPORT and EXPORT only for global data items

七、字符串操作

a) 尽量将字符串放在常量中而不是Array或者Table

b) 尽量避免使用ArrayDS去操作字符串

c) 尽可能的使用EVAL操作字符串

八、不要退化!!!

a) 不要在1-5填写序号

b) 不要使用program-described File

c) 不要使用过时的操作符

d) 如果Build-in函数提供某一操作符的功能,那么尽量使用Build-in函数

e) 尽量使用CALLP来代替CALLCALLB

九、其他

a) 在所有表中使用Keyword时尽量分行,一个Keyword写一行

十、建议

a) Make it right before you make it faster.

b) Keep it right when you make it faster.

c) Make it clear before you make it faster.

d) Do not sacrifice clarity for small gains in efficiency.





参考A Sorcerer’s Guide to System Access and More.pdf

Chapter 2. Programming RPG IV with style

阅读(1747) | 评论(0) | 转发(1) |
给主人留下些什么吧!~~