从方法论上将面向对象方法和结构化方法进行区别:
面向对象方法——本质上描述的是事物之间的一种关系,最主要的一种关系因果关系,代表的是事物之间的独立、平等关系。从而在同一抽象层次上(代表了不同的功能层次)形成相互平等的对象群,进而在整体上形成纵向的层次结构。由于面向对象方法可以在不了解系统内部状况和解析结构的情况下,仅仅依据外部功能和反应进行模拟,所以,它的适应范围和适应能力是很强的。——从方法论的角度看,面向对象方法在分析问题时是遵守黑箱原理的,在理解系统时是以系统论为依据的(以功能实现为限),在构建系统时是以模仿或者说是仿真为基本实现方法的,构建系统时是自下而上的进行的。面向对象方法本质是模仿,人们总是可以一定程度理解系统的,所以系统总是可以被模仿的。
结构化方法——本质上描述的是事物之间的另一种关系,从属关系,代表的是事物与其组成部分之间的统治、管辖、依附、服从等关系。从而在同一事物范围内通过自上而下形成具有树形分枝结构的解析结构,下级事物构成上级事物,并仅实现上级事物的功能。同一解析深度的事物不一定在宏观上位于同一抽象层次,因而不同解析深度的事物可以跨越解析深度属于同一模块。——从方法论的角度看,结构化方法在分析问题时是遵守传统解析原理的,不断分解直到最小的功能单元(以函数能实现为限),分析问题时是自上而下的。在构建系统时是遵循传统综合方法的,是自下而上的。结构化方法的实质是解析,如果系统无法解析则不能理解,也就不能很好实现系统。
在实际使用中,两种方法适用的系统不同,而并无优劣之分。一般地,对于典型的事务处理系统,用面向对象方法要优于结构化方法,而对于科学计算系统结构化方法优于面向对象方法。从系统规模来看,对复杂的大系统用面向对象方法有一定的优势,用解析方法则存在困难。相反,对于规模和复杂程度适中的系统,使用结构化方法则更有效果。原因在于,对于复杂的大系统很难建立其解析模型——数学模型,如果不能建立其解析模型则结构化方法基本上无法应用。但是,对于复杂的大系统建立物理模型,进行仿真则相对较容易,从而利用面向对象的优势,仿真大系统的物理模型。