面向对象与面向过程的区别
面向过程与面向对象,只是一种思维方式的划分
面向过程 | 面向对象 | |
区别 | 以分步骤的方式解决问题。 用方法组织代码。 | 以分类的方式解决问题。 用类组织代码。 |
共同点 | 细节上用面向过程解决,整体上用面向对象把控。 二者相辅相成,并不是对立的。 |
面向对象,Obeject Oriented,是一种编程术语。面向对象是当今软件开发方法的主流方法之一,他是把数据以及对数据的操作放在一起,作为一个相互依存的整体,就是我们所说的对象。
对同类对象抽象出其共性,就是类,类中的大多数数据,只能被本类的方法进行处理。类通过一个简单的外部接口与外界发生关系,对象与对象之间通过消息进行通信。
程序流程由用户在使用中决定,例如,站在抽象的角度,人具有身高,体重,年龄,血型等一些特征,人会劳动,会行走,会吃饭等这些方法,人仅仅是一个抽象的概念,它是不存在的实体,但是所有具备人这个群体的属性与方法的对象都叫做人,这对象人是实际存在的实体,每个人都是人这个群体的一个对象。
面向过程,Procedure Oriented,是一种以事件为中心的开发方法,就是自顶向下顺序执行,逐步求精,其程序结构是按照功能划分为若干个基本模块,这些模块形成一个树状结构,各模块之间的关系也比较简单,在功能上相对独立,每一个模块内部一般都是由顺序,选择和循环3种基本结构组成,其模块化实现的具体方法是使用子程序,而程序流程在写程序的时候就已经决定了。