一个朋友告诉我他写程序的时候习惯于在为一个函数定义一个标准名称后,再为这个函数起一个简单的名字给自己用,这种习惯不仅可以提高他的工作效率,而且别人在调用他写的函数后也可以选用标准的函数名称而不至于困惑。比如他写了一个名为template()的函数,同时他也定义t()作为该函数的简写,那么他在调用这个函数的时候,就可以使用t()来代替template()。 这个t()就是template()的别名。
其实在其它场合我们也都接触过别名,比如linux操作系统就有一个alias命令。使用alias我们也可以把linux环境下一些常用的命令用dos命令来代替, 这样能方便熟悉dos命令的用户使用linux。这种别名思想也大量存在于现在的很多软件中,比如cad中很多命令都可以定义使用别名,让用户自己订制熟悉的操作习惯,最大程度地方便自己使用。
只不过,真正将别名思想应用在编程习惯里,这种方式我以前并没有看到过。我们熟悉的各类版本各种语言的编程规范里,从变量名声明到函数名命名,以及面向对象语言中的类名称定义,都有着极为讲究的规则。我们遵循着这些规范,在遇到变量、函数、方法和类时分外小心,不惜让其变得越来越长,仅仅是为了让别人能够望名知义,却忘了自己也是这些变量、函数、方法和类的最经常的使用者;我们在不断探索利用各种开发工具来提高编写代码效率的同时,却忽略了通过代码自身来改善自己的编程方式。先不说他这种方式对软件质量和管理有何影响,就他能将这样的习惯融入自己的工作而言,却让我在自己曾认为熟悉的专业领域看到了更为广阔的空间,感受到了一种孜孜以求才能终有所获的执著。