Golang 面向对象基本概念
优质
小牛编辑
141浏览
2023-12-01
面向对象思想
面向对象(Object Oriented,OO)是软件开发方法
面向对象是一种对现实世界抽象的理解,是计算机编程技术发展到一定阶段后的产物
Object Oriented Programming-OOP ——面向对象编程
面向对象和面向过程区别
- 面向对象是相对面向过程而言
- 面向对象和面向过程都是一种思想
- 面向过程
- 强调的是功能行为
- 关注的是解决问题需要哪些步骤
- 回想下前面我们完成一个需求的步骤:
- 首先搞清楚我们要做什么
- 然后分析怎么做
- 最后我用代码体现
- 一步一步去实现,而具体的每一步都需要我们去实现和操作
- 在上面每一个具体步骤中我们都是参与者, 并且需要面对具体的每一个步骤和过程, 这就是面向过程最直接的体现
- 面向对象
- 将功能封装进对象,强调具备了功能的对象
- 关注的是解决问题需要哪些对象
- 当需求单一, 或者简单时, 我们一步一步去操作没问题, 并且效率也挺高。 可随着需求的更改, 功能的增加,
发现需要面对每一个步骤非常麻烦, 这时就开始思索, 能不能把这些步骤和功能再进行封装,
封装时根据不同的功能,进行不同的封装,功能类似的封装在一起。这样结构就清晰多了, 用的时候, 找到对应的类就可以了, 这就是面向对象思想
- 示例
- 买电脑
- 面向过程
- 了解电脑
- 了解自己的需求
- 对比参数
- 去电脑城
- 砍价,付钱
- 买回电脑
- 被坑
- 面向对象
- 找班长
- 描述需求
- 班长把电脑买回来
- 面向过程
- 吃饭
- 面向过程
- 去超市卖菜
- 摘菜
- 洗菜
- 切菜
- 炒菜
- 盛菜
- 吃
- 面向对象
- 去饭店
- 点菜
- 吃
- 面向过程
- 洗衣服
- 面向过程
- 脱衣服
- 放进盆里
- 放洗衣液
- 加水
- 放衣服
- 搓一搓
- 清一清
- 拧一拧
- 晒起来
- 面向对象
- 脱衣服
- 打开洗衣机
- 丢进去
- 一键洗衣烘干
- 终极面向对象
- 买电脑/吃饭/洗衣服
- 找个对象
- 面向过程
- 现实生活中我们是如何应用面相对象思想的
- 包工头
- 汽车坏了
- 面试
面向对象的特点
- 是一种符合人们思考习惯的思想
- 可以将复杂的事情简单化
- 将程序员从执行者转换成了指挥者
- 完成需求时:
- 先要去找具有所需的功能的对象来用
- 如果该对象不存在,那么创建一个具有所需功能的对象
- 这样简化开发并提高复用
类与对象的关系
面向对象的核心就是对象,那怎么创建对象?
现实生活中可以根据模板创建对象,编程语言也一样,也必须先有一个模板,在这个模板中说清楚将来创建出来的对象有哪些属性
和行为
Go 语言中的类相当于图纸,用来描述一类事物。也就是说要想创建对象必须先有类
Go 语言利用类来创建对象,对象是类的具体存在,因此面向对象解决问题应该是先考虑需要设计哪些类,再利用类创建多少个对象