且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

《设计原本—计算机科学巨匠Frederick P. ***s的反思》一一3.3 (设计树上的)节点实际上不是设计决策,而是设计暂定方案

更新时间:2022-09-16 12:53:04

3.3 (设计树上的)节点实际上不是设计决策,而是设计暂定方案
事实上,特定的设计树自身只是在树形结构中搜索的简化模型。如图2-1所示,有并列的属性分支,也有备选分支。在一个分支中的各个备选方案彼此紧密联系—或彼此相斥或相辅相成或平分秋色。我们在《Computer Architecture》一书中给出的大块头设计树其实还是过分简化了;那样的一个设计树中所展示出来的“计算机众生相”对于阐明决策之间的联系是必不可少的。2 这意味着,在设计树的每一个节点处,设计师所要面对的不仅仅是为单独一个设计决策准备的若干简单备选方案,而是为多个设计暂定方案准备的备选方案。 此外,设计树中的决策排列顺序事关重大,可以参见Parnas在其经典论文“Designing software for ease of extension and contraction”中所阐述的真知灼见。3 以树型结构表示的设计模型,其复杂性带来的组合爆炸是思维难以承受之重。(这情形就像是国际象棋中的棋子移动所构造出来的状态空间树。)该困境在第16章会有进一步的探讨。