开发笔记[0] – 模糊需求是大敌

/ 0评 / 0

编程,尤其是现实世界编程,最大的敌人并不是技术上的不足或缺失,而是模糊的需求。模糊的需求,尤其是那些以「系统」为单位的需求,最容易让生产力耗散在无意义的事情上。

当需求模糊的时候,程序员只能先开始开发「可能需要用的组件」。这些组件的开发或许是有益的,但是更多时候这些多余的组件只不过是无意义的耗费时间的累赘。

然而程序员有时却的确会从造轮子中获得极大的乐趣和成就感,导致其不断地造新的轮子。由于没有一个明确的目标,这些轮子并不在意解决实际问题,而仅仅是涵盖可能需要解决的问题并寄托于其他人或者未来的自己来将抽象的部分实现。这样一种行为,我个人称之为「框架病」。不知道自己要做什么,于是肆意抽象,写一些看起来花哨实际上却并没有什么卵用而且后面很有可能再推倒重建或者干脆废弃的内容,并称其为「框架」。

治疗框架病的最好方案是把「系统」切割成功能的集合。关注到现实中需要解决的问题上,然后设计这类问题的解决方案。如果你还想拯救一下失去的人月,可以试着在解决方案里面尽可能多地利用之前造好的轮子。当然,最好的方法自然是从一开始就以问题驱动开发。

当然,当问题变得明确,大部分的代码就变成了所谓的「无聊代码」——繁琐却又不得不去做,而且千篇一律又没有挑战性。不过这确实也是应用开发的一部分。

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

Your comments will be submitted to a human moderator and will only be shown publicly after approval. The moderator reserves the full right to not approve any comment without reason. Please be civil.