编写Linux实用程序的艺术( 五 )


结束语
如果您发现自己在重复执行某个任务,可以考虑编写一个程序来完成这个任务 。如果事实证明该程序更通用化一点是合理的,那就通用化它,这样您就编写了一个实用程序 。
不要在您第一次需要某个实用程序的时候设计它 。要等到您具有一些经验之后才着手设计 。请随意地编写一两个原型;优秀的实用程序比糟糕的实用程序更能证明所花的时间和研究工作的价值 。如果原先设想的出色实用程序最终却在您编写它之后成为无用之物,不要感到遗憾 。如果您发现自己对新程序的缺点感到沮丧,您只需再执行另外一个原型化阶段 。如果结果证明它是无用的,不奇怪,有时会发生这样的事情 。
您要寻求的是这样一个程序,它查找您的最初使用模式之外的通用应用 。我编写 unsort 是因为,我希望找到一种从旧的 X11“rgb.txt”文件中获得随机颜色序列的容易途径 。从那以后,我将它用于令人难以置信的大量任务中,这些任务都不是为了生成用于调试和基准排序例程的测试数据 。
【编写Linux实用程序的艺术】优秀的实用程序能够为您在所有不很理想的作品上所花的时间带来回报 。要做的下一件事情是使它对其他人可用,以便他们能够试验它 。也要使您失败的尝试对其他人可用,也许其他人对某个实用程序具有您所不需要的用途 。更重要的是,您的失败的实用程序也许是其他某个人的原型,从而给每个人带来一个美妙的实用程序 。

推荐阅读