开发者学堂课程【PHP 进阶教程-由浅入深掌握面向对象开发-第一阶段:面向对象编程思想介绍】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/711/detail/12655
面向对象编程思想介绍
内容介绍:
一、面向对象编程思想
高级编程语言里有两种面向过程和面向对象。面向过程是基于过程进行拆分,然后封装成函数,缺点是少操作的人。
一、面向对象编程思想
1、目标
理解面向对象编程思想与面向过程编程思想的区别,了解面向对象编程思想的核心,建立面向对象编程思想
2、概念
面向对象编程思想:面向对象编程也叫做 OOP 编程(Obiected Oriented Programming),是一种基干面向过程的开发思想。与面向过程强调分解事务步骤相似,(谁来做是一定要规范这件事情,如果不能确定就把它叫做面向过程,如果确定是面向对象)面向对象更需要追求事务操作的“主体”,也就是对象
面向对象编程是一种编程思想,不是一种具体技术
面向对象是在面向过程基础之上发展而来,因此也是一种模块化编程思想(有函数)
面向对象能够更加方便的实现代码的重复利用(适用于大型项目)
在面向对象思维中,任何动作的执行或者数据都属于对象(一切皆对象)
面向对象编程是编程思想不是一种具体的技术,用这种方式来指导、设计程序、来实现这种思想,面对对象是在面向过程的基础之上发展,所以面向过程有的一些特性在面向对象里基本存在,也可以把面对象称之为模块化的编程思想,因为里面肯定有函数。面向对象的一个方式能够更加方便的去实现代码的重复利用,适用于大型项目,面向过程也能做大项目,只是模式稍微不一样,在面向对象的思维中任何动作的一个执行、数据或者数据的操作都属于对象,一切皆对象。
3、原理
(1)面向过程编程思想原理
实现商品购物功能
面向过程
拆分步骤
显示商品
加入购物车
生成订单
支付
物流
收货确认
面向过程
将各个过程使用函数实现,然后顺序调用函数即可
整个过程都是通过函数节点实现,调用也是顺序调用,数据必须是通过函数的参数或者返回值来实现传递。看到商品再去查看商品,也能查看加入购物车,再调用一个函数生成订单,再调用的函数支付,调用函数就按照这种方式一步步去调动就行按照顺序,顺序不能乱,因为乱无法完成整个流程。
(2)面向对象编程思想原理
①拆分步骤
显示商品
加入购物车
生成订单
支付
物流
收货确认
②细分步骤
谁在购买?
谁在提供?
面向对象将各个过程使用函数实现,而且要找到功能对应的操作主体并进行归并,然后由操作主体调用
面向对象的核心就是在面向过程之上,找到谁是这些函数和数据的操作者,即操作主体(对象),然后代码实现方式就是主体调用内部函数或者数据
买家->function 显示商品()->function 加入购物车()->function 生成订单()->function 支付()
卖家->function 物流() 买家->function 收货确认()
基于面向过程,但不同的是要确定是谁在做这件事情。买东西要确定谁买谁卖,有了东西之后把这些过程用函数来实现,此时要确定多两个东西,买家跟卖家。把这些功能是谁的就把它放到哪里去,相当于又多包了一层,原来是function包层现在还有一层结构包含,包含好之后去调用谁来做这件事情按照顺序来做,买家要支付商品就让买家来支付商品,做某件事情之前一定有操作的主谁来做这件事情,所以比面向过程更复杂,但是更符合人类的思维逻辑,因为做任何事情都有一个责任人,谁来做这件事情是面向对象的编程思想。以后会在函数的基础上再加一些东西,把它再包起来归属做好,利用归属去调用对应的它所拥有的功能去实现操作。
4、小结
(1)面向对象编程是一种编程思想,与技术无关
(2)面向对象编程的本质是增加数据和功能的操作主体,即对象
(3)面向对象中所有的数据和功能都是由主体(对象)来调用和操作
面向对象编程只是一种思想,是指导怎么去做跟面向过程是一样的,具体怎么去做,用什么样的语言才是技术。面向对象编程的本质是增加数据和功能,面向过程就多一个买家和卖家,把东西归属好做这件事情,把买家卖家可以称之为对象。面向对象中所有的数据和功能都由对象来调用和操作,所有的显示商品、加入购物车都有对应的对象,买家显示商品,买家加入购物车,买家生产订单,买家支付,卖家做物流,买家做收货确认,最终实现的过程差不多,会有便捷性。