举个栗子说明面向过程与面向对象的区别

本文通过一个具体的排序算法应用实例,对比了面向过程与面向对象两种编程思维的不同之处。前者注重详细步骤,后者强调对象能力利用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

        有一道算法题:请用写出程序对下列数组进行排序(从小到大),输出将结果。数组如下:[1,100,22,33,41,3,0]。

 

         面向过程是这么做的:1.选择一种编程语言。2.选择一种排序算法。3.打开电脑。 4.打开编辑器。 5.开始码代码。 6.编译运行,输出结果。(即:问题 -> 步骤-> 结果)

 

         面向对象是这么做的:1.找个一个程序员。 2.让程序员去编程。 (即:问题–> 调用对象的方法–> 结果)

 

         以上面向过程的做法是倾向于一个员工思考问题的方式,即将自己的工作分隔为若干执行步骤,然后一个个去解决。该方式的特点是所有的执行步骤和实现细节(过程)都是你的关注点。同时该特点也是该方式的缺点,例如,除了要你写简单的算法外,还要让你去设计网站的界面,网站前端的开发,网站后端的开发,软件的测试等等工作时,你所要关注的点就很多很多了,这时,你该怎么划分步骤,然后逐个实现?


        而面向对象的做法则像是一个管理者思考问题的方式,即找一些有能力解决该问题的人(对象),让他们去使用的他们能力(属性和方法)去解决问题。该方式的特点是你不需要关心问题的解决步骤和具体实现,你的关注点就只是找到能解决问题的人(对象),并管理他们,使其为你工作。而同样在面对设计网站的界面,网站前端的开发,网站后端的开发,软件的测试等等工作时,面向对象的做法就是招一些美工,web前端,后端等人,管理他们,让他们去发挥他们的专业特长就好。然而,面向对象也有缺点。举个栗子:当你要吃香蕉时,你却招来了一只猴子。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值