黑马程序员技术交流社区

标题: 什么是面向过程?什么是面向对象? [打印本页]

作者: xgjyjy    时间: 2016-3-17 12:56
标题: 什么是面向过程?什么是面向对象?
完成需求1
       将大象放进冰箱.
       a. 把冰箱门打开.
       b. 把大象放进去.
       c. 把冰箱门关上.
       这是面向过程的思路.


       找1个冰箱,要求这个冰箱可以自己开门,自己把大象放进去,自己关门.


   2).完成需求2
      完成买电脑的需求.
      a. 根据自己的需求和预算来初步确定电脑的种类.
      b. 格局自己的需求和预算查找资料 确定电脑的型号.
         9288 MacBookPro 10000
      c. 坐地铁去华强北.
      d. 找到Apple专卖店.
      e. 砍价成功
      f. 愉快的回家.
     
      有可能会出的问题,就是在买电脑的时候被坑.非常不愉快.
      强调的是步骤, 我自己是整个事情的主体.
      我就是1个彻头彻尾的执行者.
      -----------



      解决方案: 找1个电脑高手跟你一起去.
      a. 我什么都不用做.
      b. 只需要带上电脑高手,然后带上钱就可以了.
      c. 完可以后,请电脑高手吃个河粉.


      电脑高手? 精通电脑,并且对电脑的行情非常的熟悉.
      强调的是电脑高手,电脑高手是整个事情的主体.
      我是1个扬眉吐气的指挥者.
      ------

      很明显,下面这种方式是更好的.专业.


      解决同1个问题的两种思路.

      1). 解决这个问题的每1个步骤,都是我自己亲自去实现. 像这样的解决问题的思路,我们叫做面向过程的解决思路.


      2). 自己不要去亲自做,而是找1个专门做这个事情的人来帮我做.像这样的解决问题的思路,我们叫做面向对象的解决思路.


      面向过程与面向对象是解决同1个问题的不同的思路而已.

      1). 面向过程的解决问题的思路.

          解决这个问题的每1个步骤,都是我自己亲自去实现

      2). 面向对象的解决问题的思路.
         
          自己不要去亲自做,而是找1个专门做这个事情的人来帮我做.
          找专门的人做专业的事情.


2. 代码世界中的面向过程与面向对象.

    1). 要实现1个需求.实现这个需求的每1个步骤,都是由我自己写代码1步1步的来实现的.
        这样的解决问题的思路,我们就叫做面向过程的解决问题的思路.


    2). 实现1个需求,不是自己写代码1步1步的去实现,
        而是找1个专门做这个事情的人来帮我们去做.
        像这样的解决问题的思路,我们就叫做面向对象的思路.



3. 面向对象与面向过程的优缺点分析.

     
    1). 面向过程:
        C语言就是1门面向过程的语言.
        缺点: 一旦需求发生变化.就要重新来. 就要把代码推倒重新来.

        C语言中有函数.函数与函数之间是相互独立的. 没有人的概念.


    2). 面向对象:
        OC语言就是1门面向对象的语言.
        优势: 后期的维护和修改非常的方便 需求变化,大不了我重新换人.
        人: 1个人可以有与之相关的很多的功能.







欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2