为什么要采用面向对象
- 解决问题更加简单
编程的目的是为了解决生活中的问题。将一个复杂的问题拆分成一个个小的模块,解决每个模块,再将每个小模块的处理结果汇集在一起,就能解决一个复杂的问题。例如处理一个买苹果的问题:
1、苹果这种东西存在不。答案:存在
2、商场能否有苹果买。答案:能
3、能否到达商场。答案:能
4、商城又没货。答案:有
5、又没钱购买。答案:有
6、支不支持手机在线支付。答案:支持
- 模块化
将一个复杂的问题分解成小问题,这一过程就是模块化的过程。小问题能够直接、容易的处理。
类与对象
模块化将将一个复杂的问题拆分成小问题,需要一种方法组织各个模块协同工作来解决复杂问题。这种方法是将模块看成是函数的集合,也就是模块就是一个类。类有成员变量和方法,成员变量是不同类型的数据变量(object,array,int…等),成员方法是处理这些数据的函数。
- 单一职责原则
类是具有相同特征的对象集合,相同特征指的是解决的问题是类似的。类解决的是一个复杂问题的某一方面。单一职责原则指的是,每个类只负责一个职责。
一个类可以有多个职责,但是我们将一个复杂的问题拆分成一个个模块(也就是类),目的就就是为了能够容易的解决和组织每个小模块,如果一个模块职责越多,越难处理。
顺序编辑与过程式编程有什么问题
- 顺序编程
程序由一系列语句编写,没有使用函数、类进行封装 - 过程式编程
将某些语句使用函数封装起来,调用函数就能执行函数里面的一些列语句。使用函数能将程序分割成多个模块,结构清晰,模块可以重用。类和对象能够处理自己的数据结构。模块间很难进行关联。