通俗地说,就是以 事 为中心,还是以 物 为中心 。
面向过程
面向过程的编程思想,聚集于解决问题的方法,也就是干了什么事(即上面所说的事) 。
采用这种思想进行编程时 , 重点是构建一个个函数 。
- 举例
文章插图
面向过程的思路多半是这样的,书写一个绘制鲜花函数(比如取名为 DrawFlower ),带两个参数,一个参数用于指定鲜花的颜色,另一个参数用于指定鲜花的大小 。
文章插图
函数写好后 , 每当需要画花时,就调用一次 DrawFlower 函数 。
现在,我们要在窗口绘制一朵红花,一朵黄花,那就分别调用 DrawFlower 函数两次 , 一次画红花 , 一次画黄花 。那么 , 如果要画 1 亿朵五颜六色的花呢,那就调用 1 亿次函数,并分别传入五花八门的颜色和大小 。
文章插图
面向对象
而面向对象的方法,则聚焦于实施动作的对象,也就是这事儿是谁干的(即上面所说的物) 。
采用这种思想进行编程时 , 重点是抽象提炼出一个个物对象,再根据需要构建一个个类 。
- 举例
- 颜色
- 大小
- 绘制
文章插图
【编程语言面向对象和面向过程的区别】
当我们要绘制鲜花时,需要首先实例化一个 Flower 鲜花对象(在创建鲜花对象时,我们为它指定颜色和大?。?。然后,当需要在窗口上绘制时,我们再调用这个鲜花对象的绘制方法 。
区别
- 当我们使用面向过程的思想时,由于需要编写处理事情的函数,所以我们要明确解决问题的过程和要素 。
- 当我们使用面向对象的思想时,由于首先需要构建类 , 所以我们要提取出来这个物类的共性 。例如,鲜花都有颜色,也都有一定的大小 。而且,我们构建该物类的最终目的是为了绘制鲜花,所以还必须创建一个绘制方法 。
面向过程的主要优点是性能好,省资源(因为无需构建对象),缺点是不直观 , 与日常生活中的观念相差较大,不易于理解,也不利于复用 , 工程复杂时管理起来难度颇大 。
文章插图
面向对象的主要优点是易于理解和维护、扩展方便(因为面向对象有继承、多态等),复用率高,可根据需要隐藏内部实现,仅暴露必要的接口,缺点是总的来说比面向过程占用略大,性能略低 。
利用面向过程的语言的结构体和指针完全可以模拟面向对象的过程 。而面向对象的语言就是把这部分代码抽象化了,提供了代码的利用率 。我个人觉得面向过程能解决的简单单次问题就面向过程解决 。如果要反复用,参数会有变化的代码,那就模块化 , 用面向对象 。
- 后悔和男友因彩礼分手 他迅速和相亲对象结婚了
- 网恋要照片怎么拒绝 怎么问网恋对象要照片
- 相亲找了个高富帅二婚男 相亲找对象二婚
- 女人再婚如何挑选对象 好人品才是婚姻的保障
- 相亲与谈恋爱的区别 相亲对象问你对婚姻怎么看
- 为什么一定要找个女人结婚 找个女对象
- 会让男人觉得是适合结婚的对象 男人眼中适合结婚的女人
- 农村男孩找对象难的四大原因 娶媳妇成为了父母的心病
- 4招教你灭掉男人身边的暧昧 怎样收拾老公的暧昧对象
- 如何灭掉男人身边的暧昧关系 如何击退老公暧昧对象