提高编写PL/SQL代码数量及质量的四个简单易行指导方针
我从1990年就开始编写PL/SQL代码。这意味着我已经编写了几万行的软件代码,但我确信,其中的绝 大多数代码都非常拙劣,而且难以维护。
幸运地是,我发现找到并遵循编写出更好代码的新方法还为时不晚。就是在去年,我的代码质量有了 显著改进;这些改进主要是由于制定了一些简单的规则,并像纪律一样加以遵守。
本文为PL/SQL新手及有经验的开发人员提出了四条建议;遵守其中任何一条,你的代码质量都会有提 高。这四点建议都采纳,你可能会惊奇地猛然发现:你竟然是一个非常好的程序员,要远远超乎你的想象 。
所有工作都独自完成
我们很少有人是孤立工作的;大多数PL/SQL开发工作是在相对较大的机构中进行的。但我们基本上还 是在自己的小隔间里用自己的设备独自工作。几乎没有PL/SQL开发小组进行正规的代码复查或系统测试。
我不可能通过这篇文章改变你们开发小组的基本状态。因此,我仔细地选取出以下几点建议。实施其 中任何一点并不需征得管理人员同意。不论你的小组是大是小,都不必让其中的每个人都赞同这些编码规 则。你只需按以下建议来改变你的本人的编码方式:
1. 严格遵循命名约定,好像它们就是你的生命支柱。
2. 戒除编写SQL的嗜好:编写的SQL越少越好。
3. 使执行部分短小:告别"意大利面条式的代码"。
4. 找一位伙伴:非常赞同找个人来监督你的工作。
1. 遵循命名约定
如果你建立并严格遵循一套命名约定,特别是对于应用程序组件的,你就可以节省很多时间。
当然,遵循命名约定的想法并没有什么新意,你可能已经听烦了。所以我并不提出什么宏伟的命名计 划,而是给出一些非常具体而明确的约定,然后证明这些约定会多么有用。
前几个月我一直在为PL/SQL开发人员设计、构建一种新工具。它名为Swyg(可以在www.swyg.com中找 到),可以帮助程序员完成代码的生成、测试及重用的工作。它具有几个独特的组件。我为每个组件指定 了一个由两个字母组成的缩写名称,如下所示: SF-Swyg的基础部件
SM-Swyg的元数据
SG-Swyg的生成程序
SL-Swyg的 代码库
ST-Swyg的单元测试
于是,我便遵循表1中的命名约定,同时使用这些缩写。遵循这些约定有什么好处呢?一般来讲,如果 我要求一致的命名规则,我就可以更流畅更高效地编写代码。
明确地说,这些约定具有可预测性,意思是说我编写的SQL程序能生成有用的脚本。例如,通过使用表 1中的约定,可以生成Swyg中所有基础包的安装脚本。执行这些工作的SQL*Plus脚本如清单1所示。这类脚 本非常有用,因为它意味着我不必手动维护安装脚本。当我向Swyg方案中增加另一个表,并生成一组相关 包时,我只要运行我的脚本,更新后的安装脚本便会跳出来。