日历

September 2020
M T W T F S S
 123456
78910111213
14151617181920
21222324252627
282930  

top-down vs bottom-up

Home Forums 《冒号课堂》讨论区 top-down vs bottom-up

  • This topic is empty.
Viewing 1 reply thread
  • Author
    Posts
    • #1035
      Todd
      Member

      在重读本书的过程中对top-down和bottom-up有了一些新的认识。命令式侧重top-down的设计方式,即模块的分解(decomposition);对象式侧重bottom-up的设计方式,即模块的合成(composition)。

      通过top-down方式分解获得的模块不一定易于在其它地方进行合成复用,而bottom-up方式获得的模块更易被其它地方合成复用。

      另外,top-down和bottom-up在命令式和对象式都是有的,只是侧重不同。在OO中也有top-down设计,比如框架设计就是典型的top-down设计;命令式也有bottom-up,比如的c std library。

      不知道上面的理解是否正确?

    • #1161
      hui
      Keymaster

      你的理解是正确的。正如数学证明中不可能有绝对的分析法或综合法一样,软件设计中也不可能有纯粹的top-down或bottom-up。

      此外,top-down、bottom-up与抽象也是紧密相关——top-down是从高层抽象走向低层抽象的过程,bottom-up则反之。

      还有一个有趣的地方:人的右脑善于宏观思维,左脑善于微观逻辑,top-down和bottom-up的结合使用也正是左右脑结合使用的过程。

      最后,不得不说,你的问题又问在了点上——它正是我预备深入挖掘的主题之一。

Viewing 1 reply thread
  • You must be logged in to reply to this topic.
 请您评分1星(很差)2星(不行)3星(一般)4星(不错)5星(很棒)