面向过程:
分析解决问题的步骤过程,用函数一一将过程实现,在使用的时候一一调用。具体的实现和开发和开发过程中,各代码模块之间存在紧密的逻辑关系或者说是因果关系。性能较高,主要实用于,单片机开发,嵌入式开发。
面向过程:
是将构成问题的事务分解为各个对象,而建立对象的目的并非是为了完成一个个步骤,而是描述某个事务在解决整个问题过程中发生的行行为。并且这种编程风格,使得程序易于维护,易于扩展,可以设计出低耦合度的系统,但是性能上低于面向过程。
用两个简单的图示来描述一下的话
面向过程
面向对象
面向对象和面向过程的区别
面向过程 | 面向对象 | |
优点 | 因为各模块之间关联紧密,具有良好的上下逻辑关系,对于业务逻辑简单的程序能够很快的实现,前期开发投入的成本较低 | 各模块之间耦合度较低,因而具有较好的拓展性,因为对象思想要求对现实生活对应的进行抽象,因而更加符合人的思维方式,适用于解决业务逻辑复杂的程序,具有较强的代码复用性,因为耦合性低,也便于代码的维护和修改 |
缺陷 | 因为模块关系紧密,拓展性较差,不存在组件的重用性,逻辑关系紧密,也不利于代码的维护管理和修改,开发出来后几乎相当于一次性代码 | 前期投入成本较高,需要在开发前进行对象的提取以及大量的分析和设计 |
同时面向对象有三大特征:
封装,多态和继承(所有语言面向对象的共性)
面向对象的生命周期为三个部分
面向对象的分析:OOA
面向对象的设计:OOD
面向对象的编程:OOP