早期的计算机编程是基于面向过程的方法,例如实现算术运算1+1+2 = 4,通过设计一个算法就可以解决当时的问题。随着计算机技术的不断提高,计算机被用于解决越来越复杂的问题。一切事物皆对象,通过面向对象的方式,将现实世界的事物抽象成对象,现实世界中的关系抽象成类、
继承,帮助人们实现对现实世界的
抽象与数字建模。通过面向对象的方法,更利于用人理解的方式对复杂系统进行分析、设计与编程。同时,面向对象能有效提高
编程的效率,通过封装技术,消息机制可以像搭积木的一样快速开发出一个全新的系统。面向对象是指一种
程序设计范型,同时也是一种程序开发的方法。对象指的是
类的集合。它将
对象作为
程序的基本单元,将程序和
数据封装其中,以提高软件的重用性、灵活性和扩展性。
[2]
面向
对象的思想已经涉及到
软件开发的各个方面。如,面向对象的分析(
OOA,Object Oriented Analysis),面向对象的设计(
OOD,Object Oriented Design)、以及我们经常说的面向对象的编程实现(
OOP,Object Oriented Programming)。
[2]
面向
对象的分析根据
抽象关键的问题域来分解系统。面向
对象的设计是一种提供符号设计系统的面向对象的实现过程,它用非常接近实际领域术语的方法把系统构造成“现实世界”的对象。面向对象程序设计可以看作一种在程序中包含各种独立而又互相调用的对象的思想,这与传统的思想刚好相反:传统的程序设计主张将程序看作一系列
函数的集合,或者直接就是一系列对电脑下达的指令。面向对象程序设计中的每一个对象都应该能够接受数据、处理数据并将数据传达给其它对象,因此它们都可以被看作一个小型的“机器”,即对象。
[2]