我相信很多人都不能一次就写出整洁、漂亮的程序。 要编写整洁的代码,必须先编写肮脏代码,然后再逐步改进它。
估计大家都有过这种想法,首要任务是编写出能工作的程序。只要程序“能工作”,就转移到下一个任务上,而那个“能工作”的程序就在了最后那个所谓“能工作”的状态。其实,这是一种自毁行为。
毁坏程序的最好方法之一就是以改进之名大动其结构。因为很难让程序以“改进”之前的方式工作。
如何避免该状态发生?
可以采用测试驱动开发,这种方法的核心原则就是保持系统始终能运行。确保每次修改都能保证系统能像以前一样工作。
要知道,代码能工作还不够,能工作的代码经常会严重崩溃。不要满足于仅仅让代码能工作的状态。更不要拿没时间改进代码结构和设计来说话,因为进度可以调整,需求可以重新定义,团队可以动态调整。但糟糕的代码只会一直腐败发酵,然后拖团队的后腿。当然,糟糕的代码可以清理,不过成本比较高,随着代码的腐败,模块之间相互渗透,存在着大量的依赖,想找到它们清理出去,很难。所以解决之道,就是保持代码持续整洁和简单,不让腐败有机可乘。