持续创作,加速成长!这是我参与「掘金日新计划 · 6 月更文挑战」的第2天,点击查看活动详情
1. 基本介绍
与面向对象相对的一个概念就是面向过程,面向对象与面向过程是两种不同的编程方式。
如果需求简单,使用面向过程编程没有什么问题。但是需求复杂的话,会导致代码也变得很复杂。
所谓过程:
- 过程是早期的一个编程概念
- 过程类似于函数,只能执行,但是没有返回值
- 函数不仅能执行,还可以返回结果(通过return返回一个结果)
2. 面向过程
面向过程(侧重于怎么做?):
- 把完成某一个需求的所有步骤从头到尾逐步实现
- 根据开发需求,将某些功能独立的代码封装成一个又一个函数
- 最后完成的代码,就是顺序地调用不同的函数
面向过程的基本特点:
- 注重步骤与过程,不注重职责分工
- 如果需求复杂,代码会变得很复杂
- 开发复杂项目,面向过程编程没有固定的套路,开发难度很大
3. 面向对象
面向对象(侧重于谁来做?):
- 在完成某一个需求时秒首先确定职责(职责就是要做的事情-方法)
- 根据职责确定不同的对象,在对象内部封装不同的方法(多个)
- 最后完成等代码,就是顺序地让不同对象调用不同的方法
由于明确了职责,很少出现不同对象之间相互调用方法。
相比于函数,面向对象就是更大的封装,根据职责在一个对象中封装多个方法。
功能独立的代码封装到方法内部,多个相关的方法封装到一个对象中。
面向对象的基本特点:
- 注重对象和职责,不同的对象承担不同的职责
- 更加适合应对复杂的需求变化,时专门应对复杂项目开发,提供的固定套路
- 需要在面向过程的基础上,再学习一些面向对象的语法