自顶向下的方法(TOP DOWN APPROACH) 和自底向上(BOTTOM UP APPROACH)的方法是软件工程中常用的设计方法。

但是这只是软件开发的方法,这些方法和编程语言没有直接关系。但是在实际开发过程中往往需要遵循一些规则。

面向过程的语言,比如C语言,一般遵循自顶向下的开发方法; 同时面向对象的语言,比如C++或者Java一般遵循自底向上的方法。

自上而下 的方法始于高层次的设计,然后才是底层代码的设计实现。 同时, 自下而上 的方法则相反,先有底层设计和开发的模块,然后组成高层设计。

自上而下 方法中: 会首先实现main()函数,以及所有的子函数以及调用逻辑关系。 然后根据需求实现子函数的功能。 自下而上 的方法中,会首先实现子函数或者功能模块,之后再集成为完整的软件。

在现代软件开发中,无论是自顶向下还是自底向上,都不会单独使用,大多数情况是需要结合在一起使用的。