面向过程和面向对象的区别:
面向过程: 主要关注点是:实现的具体过程,因果关系(集成显卡的开发思路)
优点: 对于业务逻辑比较简单的程序,可以达到快速开发,前期投入成本较低。
缺点:采用面向过程的方式开发很难解决非常复杂的业务逻辑,另外面向过程的方式导致软件元素之间的“耦合性”非常高,只要其中一环出问题,整个系统受到影响,导致最终的软件”扩展力“差。另外,由于没有独立体的概念,所以无法达到组件复用。
面向对象:主要关注点是:主要关注对象【独立体】能完成哪些功能。【独立显卡的开发思路】
优点:耦合度低,扩展力强。更容易解决现实世界当中更复杂的业务逻辑。组件复用性强。
缺点:前期投入成本较高,需要进行独立体的抽取,大量的系统分析与设计。
c语言是纯面向过程的、c++半面向对象、java纯面向对象
现在出现的一些新的编程语言多数都是面向对象的,人在认识现实世界的时候以面向对象的方式。
面向对象更符合人的思维方式。
类和对象的概念
什么是类?
类在现实世界当中是不存在的,是一个模板,是一个概念,是人类大脑思考抽象的结果。
类代表了一类事物。
在现实世界当中,对象a与对象b之间具有共同特征,进行抽象总结出一个模板,这个模板被称为类。
什么是对象?
对象是实际存在的个体。现实世界当中实际存在。
描述一下整个软件开发的过程
程序员先观察现实世界,从现实世界当中寻找对象
寻找了多个对象之后,发现所有的对象都有共同特征
程序员在但闹钟形成了一个模板【类】
java程序员可以通过java代码来描述一个类
java程序中有了类的定义
然后通过类就可以创建对象
有了对象之后,可以让对象直接协作起来形成一个系统。