面向过程方法学开发软件的特点

面向过程方法学开发软件的特点:

1.程序=数据结构(模型)+算法(解决问题所需的一系列逻辑步骤)

2.数据结构作为模型,是对数据的封装

3.将程序分解为一系列相互之间独立(独立性强弱由开发者决定)的子程序(函数或过程),主程序按逻辑步骤调用各个子程序

4.以过程为中心,而非以事物为中心(面向对象方法学的关注点),严重依赖条件分支结构(if...else...或者switch...case),需求发生变动时,习惯于修改条件分支结构

5.数据结构的作用域通常很大,很容易与其他模块共享数据,修改时也很容易对其他模块造成影响

6.程序通常以函数库的形式进行组织,函数量巨大,很容易造成记忆负担(和面向对象相比,三千个函数可能只需对应大约三百个类)

7.面向过程方法通常用流程图来进行系统的分析与设计,当系统功能少,简单的情况下,流程图还可以胜任、但是当系统功能逐渐增加后,流程图复杂无比,流程很容易变的混乱不堪,在这种情况下,很容易出现潜在的设计缺陷。当然很多的系统分析和设计人员,尤其是业务人员都爱用它,因为它简单,学习不需要花成本。

8.尽管面向过程使用子程序来分解功能,但是不得不说面向过程方法仍是一种只想今天不想未来的短视设计和开发方法

9.使用面向对象的语言并不保证一定进行面向对象试的开发,如果你每天大部分时间都是在程序中用面向对象语言在固定位置编写相似的代码,每个任务都是用流程图。今天开发了功能,过几天再去无所顾忌的修改的话,那么恭喜你,你很可能是在进行面向过程的开发

待续...

 

你可能感兴趣的:(软件工程,设计模式)