面向过程、基于对象、面向对象、分析

简介: 面向过程、基于对象、面向对象、分析

一:基础概念

1.1 面向过程

“面向过程”(Procedure Oriented)是一种以过程为中心的编程思想。这些都是以什么正在发生为主要目标进行编程,不同于面向对象的是谁在受影响。与面向对象明显的不同就是封装、继承、类。简写为POP。


1.2 面向对象

面向对象编程(Object Oriented Programming,OOP,面向对象程序设计)的主要思想是把构成问题的各个事务分解成各个对象,建立对象的目的不是为了完成一个步骤,而是为了描叙一个事物在整个解决问题的步骤中的行为。


1.3 基于对象

基于对象的编程语言没有提供象抽象、继承、重载等有关面向对象语言的许多功能。而是把其它语言所创建的复杂对象统一起来,从而形成一个非常强大的对象系统,以供使用。


二:三者对比对比

面向过程 面向对象 基于对象
产生时间 1965 1967 -
代表语言 C C++,JAVA BASIC(VB4-VB6)
基本特征 自顶向下,逐步求精 抽象、封装、继承、多态 封装
性能 较差 较好
维护难度 巨大 容易 较大
适用程序 一般用于小型 大型 -

三:具体例子

有人这么形容OP和OO的不同:用面向过程的方法写出来的程序是一份蛋炒饭,而用面向对象写出来的程序是一份盖浇饭

盖浇饭的好处就是“菜”“饭”分离,从而提高了制作盖浇饭的灵活性。饭不满意就换饭,菜不满意换菜。

用软件工程的专业术语就是“可维护性”比较好,“饭”和“菜”的耦合度比较低。

蛋炒饭将“蛋”“饭”搅和在一起,想换“蛋”“饭”中任何一种都很困难,耦合度很高,以至于“可维护性”比较差。

目录
相关文章
|
1月前
|
算法 Java
java面向对象和面向过程分析
java面向对象和面向过程分析
38 0
|
7月前
|
程序员
如何理解面向过程和面向对象?
有人说:“如果上帝是程序员,他怎么创造世界上的所有动物。”,理解这个问题就理解了面向对像。
|
1月前
|
Java 物联网 测试技术
Java面向对象程序设计3面向对象基础
Java面向对象程序设计3面向对象基础
169 0
|
1月前
面向对象编程的理解,面向过程和面向对象有什么区别
面向对象编程的理解,面向过程和面向对象有什么区别
15 0
|
6月前
面向对象和面向过程的区别
面向对象和面向过程的区别
|
9月前
你真的知道面向对象与面向过程的区别吗?
你真的知道面向对象与面向过程的区别吗?
61 0
|
9月前
|
Linux C语言 C++
面向对象与面向过程最本质的区别
面向对象与面向过程最本质的区别
52 0
|
9月前
面向过程和面向对象区别
面向过程和面向对象区别
77 0
|
9月前
面向过程与面向对象的区别与联系
面向过程与面向对象的区别与联系
|
9月前
|
存储 设计模式 算法
03-📝C++核心语法|面向对象1【 C++编程规范、类和对象、面向对象程序设计案例、对象的构造和析构、C++面向对象模型初探】
复习`C++核心语法`,且适当进行汇编探索底层实现原理,进一步夯实基础,为以后的`底层开发`、`音视频开发`、`跨平台开发`、`算法`等方向的进一步学习埋下伏笔。
03-📝C++核心语法|面向对象1【 C++编程规范、类和对象、面向对象程序设计案例、对象的构造和析构、C++面向对象模型初探】