面向过程与面向对象的区别
一、概念
面向过程和面向对象是两种不同的重要的 编程思想。
1、面向过程
面向过程:以事件(过程)为中心的编程思想。
分析解决问题所需要的步骤,再用函数把步骤一步一步实现,使用的时候,依次调用这些函数
举个栗子—下五子棋
分析解决该问题的步骤
1开始游戏-2黑子先走-3绘制画面-4判断输赢-5轮白子-6绘制画面-7判断输赢-8返回步骤2–输出最后结果
函数实现上面一个个步骤,在【下五子棋】主函数中依次按顺序调用上面函数。
2、面向对象
面向对象:以“对象”为中心的编程思想,把解决的问题分解成各个对象。通过建立对象描述某个对象在整个解决问题的步骤中的属性和行为(不是为了完成某一个步骤)。
对象:属性+方法
对象间通过方法调用
举个栗子—下五子棋
将五子棋游戏分为3个对象
1、黑白双方–行为相同
2、棋盘系统–绘制画面
3、规则系统–判断输赢
给上述三个对象定义【属性】&&【行为】
对象1:接收用户输入并告知对象2棋子布局变化
对象2:接收棋子变化并在屏幕显示,利用对象3对棋局判定
对象3:棋局判定
面向对象以功能划分问题,不是以步骤解决
优缺点比较
面向过程:
优点:性能好。类调用时需要实例化,开销大,比较消耗资源
缺点:代码重用性低,扩展性能差,后期维护难度大。
面向对象
优点:易复用、易扩展、易维护
缺点:性能比面向过程低。
思考
1、面向过程性能比面向对象高,为什么?/
编程机制