面向对象与面向过程
一、面向过程
1、定义:
1.过程为中心的编程思想。没有独立体的概念。简称OP。
2.注重的是因果关系。
3.以面向过程的编程方式关注点不 在“事物”上,而是做这件事分几步,先做什么,后做什么。
2、优缺点:
优点:对于业务逻辑开发比较简单的程序,可以达到快速开发,前期投入成本较低
缺点:开发过程中难以解决非常复杂的业务逻辑,没有独立体的概念,无法达到组件复用。
耦合程度高,扩展性比较低。
二、面向对象
1、定义:
以对象为中心的编程思想。在描述事物的过程中,通常把一个事物描述成不同的单元。简称 OO。
2、优缺点:
优点:耦合度比较低,扩展性高。复用性比较高。
面向对象将对象作为程序的基本单元,将程序和数据封装其中,以提高软件的重用性、灵活性和扩展性。
缺点:前期投入成本比较高,需要进行独立体的抽取,大量的系统分析与设计。
3、开发周期:
使用面向对象编程思想开发系统,在现代开发中会将面向对象贯穿整个过程。
1、OOA:面向对象分析(Object-Oriented Analysis)
2、OOD:面向对象设计(Object-Oriented Design)
3、OOP:面向对象编程(Object-Oriented Programming)
4、面向对象的三大特征:
封装、继承、多态
三、区别
1、c语言是面向过程的,C++是面向对象的,JAVA纯面向对象的。
2、面向对象更符合人的思维方式。
3、面向过程就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候一个一个依次调用就可以了;面向对象是把构成问题事务分解成各个对象,建立对象的目的不是为了完成一个步骤,而是为了描叙某个事物在整个解决问题的步骤中的行为。