面向对象与面向过程的简单比较(说明)

          近期刚刚把《软件工程》的视频和书都大致的看了一遍,对面向对象以及面向过程的设计思想有了一些感性的认识。搞清楚了软件开发的大致流程。现在对于上一篇文章的图进行一下说明:

           面向过程和面向对象都是对“软件”的一种认识思想,对于一个将要开发的软件,首先要看我们从什么样的角度进行认识和分析了。从不同的角度、以不同的思想去分析软件那当然做出来的软件是截然不同的。

           首先面向过程的思想是从功能的角度讲软件分解开来,将每一功能都定义成一个和其他功能不太相关的模块。没完成一个功能,那么这个功能就相当于我们所了解的函数,是用来具体完成某一功能的过程。所以这样的分析方法(思想)叫做面向过程。

          为什么要利用面向过程的思想去分析“软件”呢? 一开始接触编程的时候我们大多都是那些比较小的功能,所要考虑的功能比较少、要处理的数据也非常的少,那么我们想要处理这些数据,完成这样的功能,我们就会很自然的就会将数据作为我们思路的向导,从数据的输入处理到输出。数据的处理过程都是我们首先要考虑的。所以说是面向过程的。

         而面向对象思想是由于我们要开发的软件逐步变大,需要处理的数据非常的多,我们如果还是按照数据的处理过程来开发程序。显然是非常困难的事。

        而怎么就是面向对象了?给我的感觉是这样的,面向对象就像是我们把现实搬进了电脑。我们现实生活中有医院,有饭店,有理发的…………  非常多非常多的行业,我们需要什么样的服务了我们就去什么样的地方。并且这些提供服务的场所都是公共的,谁都可以使用,这样就达到了复用,我们的程序也不就是为了达到这样吗?

         什么叫做类呢?类是某些联系紧密的功能的集合体。也就是说我们在面向过程的基础上,将功能进行分类,然后进行封装,这样就形成了一个类。然而一个类具有什么样的服务(或是操作、方法)都是他所包含的功能。为了使用这些操作,我们可以直接调用,或是再在此基础上定义一个接口类,这样会更加有效的提高了软件安全性!