我几乎是一个从“Java 世界”到“PL/SQL 世界”的新手,使用“遗留”存储过程,我有一个问题。Java 命名的最佳实践包括诸如“变量、方法、类等的名称应该是有意义的和自动记录的”之类的提示(我在 Clean Coder 书中阅读过)。默认情况下,Oracle 的标识符长度为 30 个字符,但我发现缩写命名并不总是“易于翻译”,我不知道这是考虑到应用程序性能还是“只是一种不好的做法”。
假设我发现了这样的东西:
PROCEDURE PROCCALCTAXES(vVarNamTax VARCHAR2(2)) IS
vVarNamCouCalTax VARCHAR2(20);
nVarCouId NUMBER;
vVarNamTax VARCHAR2(20);
vVarValTax VARCHAR2(10);
nVarCouTaxTimPaid NUMBER;
vVarExa30Cha VARCHAR2(10);
BEGIN
--business logic
END PROCDOSTH;
如果我像这样重构该代码,有什么需要注意的吗?
PROCEDURE P_CALCULATE_TAXES(vVarNamTax VARCHAR2(2)) IS
vCountryName VARCHAR2(20);
nCountryId NUMBER;
vTaxName VARCHAR2(20);
vTaxValue VARCHAR2(10);
nCountOfTimesPaid NUMBER;
vAnExampleWith30CharactersLong VARCHAR2(10);
BEGIN
--business logic
END P_CALCULATE_TAXES;
应用程序的性能是否有所下降?如果所有变量都像最后一个一样,有 30 个字符怎么办?函数/过程/触发器/等的名称何时会影响性能?有这方面的标准吗?
谢谢!