面向过程是具体化的,流程化的。解决一个问题,需要一步一步分析需要怎样,然后需要怎样,一步一步实现的。面向对象是模型化的,抽象出一个类,这是一个封闭的环境,在这个环境中有数据有解决问题的方法,你如果需要什么功能直接使用就可以了,至于是怎么实现的,你不用知道。 从代码层面来看,面向对象和面向过程的主要区别就是数据是单独存储还是与操作存储在一起。在类的里边,实现具体的功能还是需要流程化、具体化的代码去实现的,在类里还是需要具体的算法来实现的。总结来说面向对象的底层还是面向过程,面向过程抽象成类,然后封装,方便使用就是面向对象。 如果想学习其中的一门语言作为入门的话,C语言是个不错的选择。学习C语言的时候,看的是“如鹏网”的《C语言也能干大事》系列视频教程,讲的挺不错的,课程体系的设置可以极大的激发对编程的兴趣,通过开发超级玛丽,飞机大战,汤姆猫,用C语言开发网站,开发校园一卡通系统等来讲解C语言的基础知识点,学起来不枯燥,没想到C语言还可以这么学。
面向过程是相对于过程而言,你完成一件事需要哪些步骤你心里要有数,在敲代码时,你敲得一个个函数代表完成一件事所需要的一个个步骤,完成调用函数解决这件事情,也就是面向过程的体现。它强调的是功能行为。而面向对象是相对于面向过程而言,它将对象封装进对象里,强调具备功能的对象。 我们以“把大象放进冰箱”为例,简洁明了的说明二者之间的区别。 面向过程,具体步骤入下: 1. 把冰箱门打开; 2. 把大象放进去; 3. 把冰箱门关上; 对应的伪代码如下: 面向对象,是以关联的事物为线索: 1.人的属性:有打开冰箱、操作(将大象放入冰箱)、关闭冰箱的动作。 2.大象的属性:进入冰箱 3.冰箱的属性:开门、关门 面向对象乍一看写了很多, 但是换个角度,如果现在又来了个需求,要求放入冰箱的是其他动物,,面向对象仅仅是加入这个动物的类即可,整个流程不需要做任何修改,但是如果是面向过程,里面要添加一个逻辑的判断,后续代码的维护会越来越困难。
|