zoukankan      html  css  js  c++  java
  • 面向过程和面向对象思维方式的区别?为什么需要面向对象编程?

    http://www.sxt.cn/u/328/blog/2410

    什么是面向过程? 

        面向过程(Proceduce Oriented)是一种面向过程的思维方式。当我们面临一个问题时,我们首先关注处理这个问题的流程(过程)。 

        比如,我们面临一个问题:“将大象装入冰箱”。最常用的思路就是直接关注过程,这样更加直接、更加有效,很快就可以完成问题。解决方案如下: 

        第一步、打开冰箱 

        第二步、装入大象(大象如何抱起?本步骤可能面临非常多的细节问题) 

        第三步、关上冰箱 

          通过上述事例,在日常生活中面临很多问题,我们都是采用面向过程的思维方式来处理。日常问题一般都可以使用面向过程来处理。但是,如果面临复杂的问题,面向过程可能无能为力,这时候就需要使用面向对象的思维方式。

    什么是面向对象? 

        面向对象(Object Oriented)就是以分类的方式进行思考和解决问题。面向对象的思维方式适合于处理复杂的问题。那么,什么叫做复杂的问题?  

        复杂,往往指的就是“数量相当庞大”。在哲学上,我们有句话叫“量变引起质变”。当数量达到一定级别,就会出现复杂的管理问题。比如:我约一个人晚上吃饭,这个事情很简单,我只要关注整个过程就可以了。但是,如果我今天晚上约了3万人共进晚餐。这时候,首要的问题不是每个人吃饭的问题,而是这3万人怎么处理的问题?最直接的想法就是首先对着3万人进行分类处理。3万人可以分为:不吃饭的、喝粥的、吃素的、吃荤的、吃烧烤的等等。这样,我就可以让员工分类对各种情况进行合理的处理。 

        这种简单的、朴素的分类思想,实质上就是面向对象的思维方式。依次我们发现,这种分类思想也是管理学的一个核心理念。 

    面向过程和面向对象的区别 

        面向过程适合处理简单的事情,直接关注流程,简单有效。 

        面向对象适合处理复杂的事情,先使用面向对象的方式对整体关系作出分类,然后,根据不同的类深入细节的处理。 

    面向过程和面向对象的联系 

        面向对象无法取代面向过程,他们是相辅相成的。面向对象关注于从宏观上把握事物之间的关系,在具体到如何实现某个细节时,仍然采用面向过程的思维方式。 

        面向对象如何离开了面向过程,就无法实现真正的落地,成为无源之水。

  • 相关阅读:
    ubuntu 安装QT 5.0出现错误:Failed to load platform plugin "xcb".
    Ubuntu手动编译GCC
    C++面试题集锦(一)
    C++排序系列(一) 插入排序之折半插入排序
    关于内存对齐的面试题
    C++中的static_cast, dynamic_cast和reinterpret_cast
    C++排序系列(二) 交换排序之简单排序
    Cannot open include file: 'iphlpapi.h': No such file or directory(最终解决方法)
    C++排序系列(一) 插入排序之直接插入排序
    ubuntu aptget update时出现W: GPG 错误
  • 原文地址:https://www.cnblogs.com/feng9exe/p/6771956.html
Copyright © 2011-2022 走看看