面向对过程与面向对象

来源:互联网 发布:域名多少钱 编辑:程序博客网 时间:2024/06/06 20:53
面向过程:面向过程方法认为我们的世界是由一个个相互关联的小系统组成,构成这个系统的各个部分之间有着密不可分的因果关系。

  面相对象:面向对象方法将世界看做一个个相互独立的对象,相互之间并无因果关系。只有在摸个外部力量的驱动下,对象之间才会依据某种规律相互传递信息。这些交互构成了这个世界的一个“过程”。

  面向对象和面向过程的根本不同,就是面向对象不再把世界看做是一个紧密关联的系统,而是看做一些相互独立的离散的小零件,这些零件依据某种规则组织起来,完成一个特定的功能。

  面向对象的三个要点问题:

  1、Why,即为什么对象是这样被抽象出来?

  2、How,即怎样将对象组合起来?

  3、What,即一个对象组合的含义是什么?

例子:   如果你的分析习惯是在调研需求时最先弄清楚有多少业务流程,先画出业务流程图,然后顺藤摸瓜,找出业务流程中每一步的参与部门和岗位,弄清楚在这    一步参与者所做的事情和填写表单的结果,并关心用户如何把这份表单传给下一个环节的,那么,你还在做面向过程的事情。

      如果你的分析习惯是在调研需求时先弄清楚有多少部门、岗位,然后找到每一个岗位的业务代表,问他们类似的问题:你平时做什么?这件事交个谁办?那么

   你已经OO了。

  现实世界中:人驱动系统,事体现过程,物记录结果,规则是控制。

  业务模型中:人用“参与者”的元模型作为信息来源提供者,采用“用例”来表示驱动者的业务目标,对应现实中的事,而事是怎么做的,依据什么规则,成为业务场景

      和用例场景,“业务对象模型”对应现实世界的“物”。