面向对象的开发方法把软件系统看成各种对象的集合,对象就是最小的子系统,一组相关的对象能够组合成一个更复杂的子系统。这种开发方法有以下几点优点.
(1)把软件系统看成是各种对象的集合,这更接近于人类的自然思维方式。
(2)软件需求的变动往往是功能的变动,而功能的执行者---对象一般不会有大的变化。这使得按对象设计出来的系统结构比较稳定。
(3)对象包括属性(数据)和行为(方法),对象把数据以方法的具体实现方式一起封装起来,这使得方法和与之相关的数据不再分离。提高了每个系统的相对独立性,从而提高了软件的可维护性。
(4)支持封装,抽象,继承和多态,提高了软件的可重用性,可维护性和可扩展性。
我们一般的软件开发从需求分析开始到绘制类图的一般思维。先从<问题领域的事物>中抽取与问题领域相关的事物的属性和行为,抽象出来为------>对象。在从<对象模型中的对象>中把具有相同属性和行为的对象抽象为------>类(class).再从<对象模型中的类>中把具有相同属性和行为的类中抽象出来为<对象模型中的父类>(abstract class)。
从上面的分析一步一步的抽象,我们可以看出面向对象的开发过程中主要运用了抽象思维。
(1)把软件系统看成是各种对象的集合,这更接近于人类的自然思维方式。
(2)软件需求的变动往往是功能的变动,而功能的执行者---对象一般不会有大的变化。这使得按对象设计出来的系统结构比较稳定。
(3)对象包括属性(数据)和行为(方法),对象把数据以方法的具体实现方式一起封装起来,这使得方法和与之相关的数据不再分离。提高了每个系统的相对独立性,从而提高了软件的可维护性。
(4)支持封装,抽象,继承和多态,提高了软件的可重用性,可维护性和可扩展性。
我们一般的软件开发从需求分析开始到绘制类图的一般思维。先从<问题领域的事物>中抽取与问题领域相关的事物的属性和行为,抽象出来为------>对象。在从<对象模型中的对象>中把具有相同属性和行为的对象抽象为------>类(class).再从<对象模型中的类>中把具有相同属性和行为的类中抽象出来为<对象模型中的父类>(abstract class)。
从上面的分析一步一步的抽象,我们可以看出面向对象的开发过程中主要运用了抽象思维。