面向对象和面向过程
本质
- 面向过程:分析出解决问题所需的
步骤
,然后用函数把这些步骤实现,依次调用,实现特定功能; - 面向对象:把构成问题的事务按
功能
来分解成各个对象,指派对象们来实现特定功能;
优缺点
面向过程:
- 优点:
性能高
(面向对象中 类调用时需要实例化,开销比较大,比较消耗资源)使用场景:单片机、嵌入式开发、Linux/Unix 等一般采用面向过程开发,性能是最重要的因素。 - 缺点:不便于 维护、复用、扩展。
面向对象:
- 优点: 便于
维护、复用 、扩展
。由于面向对象有封装、继承、多态
的特性,可以设计出低耦合的系统,使系统更加灵活、更加易于维护。 - 缺点:性能低(相对面向过程)
示例说明:
- 国家系统
部落制度 - 面向过程;
三省六部 - 面向对象;
部落制度: 部落主带领部民一项一项地完成任务,没有明确分工和职责;(相较于后来的国家体系)
三省六部: 按功能划分;各司其职 ;一起来维持国家的运作;缺点:需要庞大的官员数量,占用资源;优点:每个部门都可以自行优化,系统分明,条例清晰,便于管理。 - 蛋炒饭 和 盖浇饭
蛋炒饭 - 面向过程
盖浇饭 - 面向对象
蛋炒饭 高耦合 蛋饭难分,换了需求要重新炒;
盖浇饭 低耦合 菜饭分离,便于随意搭配;
网友评论