《梦断代码》阅读笔记(二)
我一直认为, 读书最大的功用之一, 就是能激发我们的思考, 是打开思维源泉的阀门; 这本书很好的起到了这一作用, 它让我们去思考软件开发的过程、 方法、 管理…, 为我们思考这些提供了真实生动的案例,也对现实的工作有些指导和警示作用。
为什么好软件如此难做?这是我本人, 我想也是很多软件都在苦苦思索的一个问题, 虽然无人能有完全确定的答案,但通过书中的记述和个人思考,还是可以获得一些启示:
计算机严格的逻辑性和精确性,同人类不严密的逻辑,模糊多变的思维模式之间的矛盾,造成的人与机器之间沟通的障碍。
开发团队之间相互沟通协作的成本,导致产生《人月神话》作者布鲁克斯法则的悖论 - 往已延误的项目中补充人力,只会使其继续延误。
项目目标不明确,标靶变来变去,因此有时决定说什么,比怎么说更困难。
项目目标不切实际, 从一开始就想做一个适合所有人的, 能做所有事的系统, 造成就如要做永动机一样的结局。
我想人们大多都知道古老圣经中巴别塔的寓言, 软件工程难于成功的原因, 也许就蕴藏在这寓言启示之中,本质上在于沟通的问题:
软件使用者与软件的沟通, 软件需求者与开发者的沟通, 程序员与程序员的沟通, 程序员与机器的沟通。
所有这些层层累叠起来,构筑了一道道通往成功彼岸的屏障。
也许有一天所有这些沟通的障碍都能被消除, 人们能轻易的相互理解, 软件工程的巴别塔真的就能轻易的建造起来了。