面向对象的分析方法是利用面向对象的思想进行建模,如实体、关系、属性等,同时运用封装、继承、多态等机制来构造模拟现实系统的方法。

什么是面向对象方法?

尽可能模拟人类习惯的思维方式,使开发软件的方法与过程尽可能接近人类认识世界解决问题的方法与过程。
object -> model现实世界的物 -> 计算机处理的模型
对象:具有相同状态的一组操作的集合
对象与传统的数据有本质区别:
对象是进行处理的主体。必须通过发送消息,使对象主动执行操作,处理它的私有数据,而不能从外界直接操作其私有数据。

面向对象方法4要点

(1)面向对象的软件系统中,任何元素都是对象(Everything is Object),复杂的软件对象由比较简单的对象组合而成。
(2)把所有对象都划分成各种对象类(简称:类,class),每个对象类都定义了一组数据(变量)和一组方法(函数)。
(3)按照子类(派生类)与父类(基类)的关系,把若干个对象类组成一个层次结构的系统。
(4)对象彼此之间仅能通过传递消息(方法调用)互相联系。
Object Oriented=Objects+Classes+Inheritance+Communication with messages
什么是消息?
消息(massage):要求某个对象执行某个操作的规格说明。
通俗地说就是方法调用,如:myDog.show(1);
接收消息的对象——myDog
消息名——show
参数——1

优点

大多数观察者相信,通过面向对象编程,开发效率至少提高了5倍,可靠性、理解程度,也大为提高。
1.与人类习惯的思维方法一致
面向对象方法学的基本原则是按照人类习惯的思维方法建立问题域的模型,开发出尽可能直观、自然地表现求解方法的软件系统。
传统的程序设计技术,忽略了数据和操作之间的内在联系
2.稳定性好,易修改
现实世界中的实体是相对稳定的,因此,以对象为中心构造的软件系统也比较稳定。
当需求变化时,并不会引起软件结构的整体变化,往往仅需要作一些局部性的修改。
3.可重用性好
对象固有的封装性和信息隐藏机制,使得对象的内部实现与外界隔离,具有较强的独立性。
有两种方法可以重复使用一个对象类:
创建该类的实例,直接使用(new);派生出一个满足当前需要的新类(继承)。
3.较易开发大型软件产品
可以把一个大型软件分解成一系列本质上相互独立的对象来处理,每个对象有自己的用途,从而降低开发的技术难度,开发管理也比较容易。
4.可维护性好
易修改、易重用、易理解易于测试、调试类的测试通常比较容易实现,如果发现错误也往往集中在类的内部,易调试。

对象的特点:

(1) 以数据为中心。操作围绕对其数据所需要做的处理来设置,不设置与这些数据无关的操作。
(2) 对象是进行处理的主体。不能从外部直接加工它的私有数据(private),必须通过它的公有接口(public)向对象发消息,请求它执行它的某个操作,处理它的私有数据。
(3) 数据封装。对象好像是一只黑盒子,它的私有数据完全被封装在盒子内部,对外是隐藏的、不可见的,对私有数据的访问或处理只能通过公有的操作进行。
(4) 模块独立性好。
高内聚:对象内部各种元素彼此结合得很紧密
低耦合:由于元素(数据和方法)基本上都被封装在对象内部,与外界的联系自然就比较少。
使用对象时只需知道它向外界提供的接口形式,而无须知道它的内部实现算法。这使得对象的使用变得非常简单、方便,而且具有很高的安全性和可靠性。