统一建模语言UML
--软件建模概述
面向过程还是面向对象?
面向过程
结构化程序设计
DFD图、ER模型、UC矩阵等
面向对象
继承、封装、多态、复用等
Grady Booch :
我对面向对象的目标从来就不是复用。
对我来说,对象提供了一种处理复杂性问题的方式。这个问题可以追逐到亚里士多德:您把这个世界视为过程还是对象?
在面向对象兴起之前,编程以过程为中心,然而系统已经达到了超越其处理能力复杂性极点。
有了对象,我们能够通过提升抽象级别来构建更大更复杂的系统,这才是面向对象编程运动的真正胜利。
面向过程的世界观
世界是由一个个相互关联的小系统组成。
每个小系统都有着明确的开始和明确的结束,开始和结束之间有着严谨的因果关系。
只要将系统中的每一个步骤和影响这个小系统走向的所有因素都分析处理,就能完全定义系统行为。
面向过程的分析方法
首先将过程描述出来,定义其中的因果关系,
通过结构化的设计方法,将这些过程进行细化,
找到过程的起点,依次分析安排每一个部份,知道过程的终点。
面向过程--传统的商业过程
过程中的数据
面向过程中,数据是很重要的,必须保证数据的完备性和正确性。
催生了关系数据库的一系列理论。
主键、外键、关系理论、范式
ER分析模型也被广为使用。
面向过程的困难
随着需求越来越复杂,系统庞大化,功能点越来越多,数据被多个过程共享,且其创建和读取方式也越来越复杂多样,经常出现矛盾的数据需求。
因此分析和设计也变得困难。
疑惑
当过程不再稳定,结果无法预设时,面向过程方法如何进行分析?
当数据量大,且频繁变化时,以数据为基础的面向过程方法如何保持程序的稳定性?
统一建模语言UML1软件建模概述 来自淘豆网www.taodocs.com转载请标明出处.