Java零基础-面向过程和面向对象的区别

C 语言是纯面向过程的、C++ 半面向对象、Java、C# 纯面向对象、JS 基于对象

面向过程

  • 关注点
    • 实现的具体过程,因果关系【集成显卡的开发思路】
  • 优点
    • 对于业务逻辑比较简单的程序,可以达到快速开发,前期投入成本较低
  • 缺点
    • 很难解决非常复杂的业务逻辑;
    • 耦合性高,扩展性差;
    • 没有独立体的概念,无法达到组件复用

面向对象

  • 关注点
    • 主要关注对象【独立体】能完成哪些功能【独立显卡的开发思路】
  • 优点
    • 耦合度低,扩展性强;
    • 容易解决现实世界中更复杂的业务逻辑;
    • 组件复用性强
  • 缺点
    • 前期投入成本较高;
    • 需要进行独立体的抽取,大量的系统分析与设计

面向对象 更符合人的思维方式

面向对象的三大特征【所有面向对象的编程语言都有这三大特征】

  • 封装
  • 继承
  • 多态

采用面向对象的方式开发一个软件,生命周期当中:【整个生命周期中贯穿使用 OO 面向对象方式】

  • 面向对象的分析:OOA
  • 面向对象的设计:OOD
  • 面向对象的编程:OOP