编程中的自顶向下设计思想
目录
自顶向下设计是一种软件设计过程方法,是一种总到分的设计思路。
我们设计软件实际上是一种问题求解的过程,复杂的问题如果从问题本身去解决,难度是相当大的,所以我们需要将问题不断拆分,拆分成一个个小问题,当小问题被逐个解决的时候,那么整个问题就会被解决。
提到自顶向下设计就会有自底向下实现,一个是从整体到局部,一个是局部到整体。我们在问题求解的时候,需要将问题拆分细化,这样问题的难度就会被逐步分解,整个大的困难问题就变成了许多小的困难。
以现实举例,我们的一项伟大工程全面实现小康社会,这项工程本身是很复杂的,但是通过自顶向下设计我们可以进行拆分,小康社会的标准是什么,要实现它的话我们可以采用开源节流的方法,进一步拆出了开源和节流两个方法,开源如何开源,有增加就业岗位,提高居民收入,拓展更广阔的市场交易渠道等,在节流方面可以减少税负,稳定房价,杜绝铺张浪费等等。
这样的的拆分把原本一个看似复杂的问题就分解成了诸多小问题,当一个一个小问题解决了,那么全面实现小康社会这个大问题也就解决了。
这就是自顶向下设计的思想,我们可以把这个思想运用在我们的日常程序设计工作中。比如我们要实现一个功能,我们可以先把这个功能的大体实现思路想清楚,然后再去实现这个功能的细节,这样就可以很好的实现这个功能。