编写代码大致如写散文。先从大纲开始。可以是一些要点或伪代码,或许已经胸有成竹,亦或是记录在笔记本上,这都不重要。写完了初稿。这是能运行的最 短、最简单的东西。它可能不是很漂亮,但已把要点表达清楚。你可能注意到了它的不足之处,更为重要的是,知道为什么会有(不足之处)。你只想让它能跑起 来。它可以稍后再精炼。
而这正是下一步要做的:终稿成品。成品将打磨、审查、编辑、调试。处理特殊问题(“edge case”),提供来源,匹配户型,并正确格式化。这类型的东西,就是一篇出色散文或一段代码之类的样例。
故而散文和代码相似。它们的开发方式亦相似。为什么“软件开发人员”对你重要?因为你能用作家所使用的策略来提升改善你的代码。
虽然同行评审实际上是书面作品的评审标准形式,但我感觉有点不适用于代码。所有程序员往往只专注于他们的程序输出。除了展示项目,有一个不错方法可以抵消这个,自公布代码。(A good way to counteract this is is to publish the code itself in addition to showcasing the project.)Github 的出现,使这个屡见不鲜了。
但成为一个更出色的程序员,甚至比这还容易。要做事情就是阅读更多的代码。优秀的作家大量阅读,优秀的程序员亦当如此。你阅读的代码不一定非常实用,可以只是非常有趣。可能稍后就能派上用场。
幸运的是,这两个建议相辅相成。通过公布你的代码,你给了其他开发人员提供阅读材料。他们的代码将会提高改善,期望他们也将公布代码。如此一来,你也能从中学习。
英文原文:Taylor Fausak 编译:伯乐在线 – 黄利民