编程范式分析(一)面向过程和面向对象

本文探讨了编程中的面向过程思想,强调了面向过程关注代码和函数,数据组织依赖输入输出参数。接着分析了面向对象设计思想的出现,特别是多态的概念,解释了多态如何降低代码耦合性和增强动态性。文章还提到了面向对象编程的开闭原则,并指出面向对象适合大规模程序编写,但对于初学者可能存在入门难度。
摘要由CSDN通过智能技术生成
程序=数据结构+算法
数据结构可以看成 data ,算法就是所谓的code;程序就是代码和数据串接起来的一个逻辑体:

面向过程:

data和code没有特别的亲疏关系
data独立,code独立;数据通过独立的变量或者函数参数在传递或者流动;
虽然有局部变量和全局变量,但是变量和代码没有聚合绑定;


程序是平坦的去组织,需要数据就定义数据变量,需要方法就定义函数,二者之间没有绑定;
面向过程的编程重点考虑的是流程,其写程序的方式更符合人的天然逻辑思考:
我的输入有哪些,我想要的结果是哪些,我要怎么的处理过程
输入->[处理过程]->输出

通过再进一步分析整个处理过程,把[处理过程] 再拆分出许多个 输入->[处理过程]->输出  子过程。

编程中关注点是code或者function,数据的组织是被动的,通过输入和输出参数来组织;

面向过程的编程中变量数据有四个需要思考的问题 :生存期,可见性,存放位置,初始值;

至于过程需要思考的问题是:输入,输出和算法。

为什么会出现面向对象的设计思想:

随着程序规模的扩大,数据和逻辑的复杂性越来越大,面向过程往往是线性的分析问题域,随着程序的参与实体越来越多,这其中的线性关系越来越复杂,线性路径也来越多,
程序的组织也就越来越困难;那为何不换一种思路:
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值