结构化程序设计(SP)和面向对象程序设计(OOP)是两个面向大程序的经典设计方法。
SP将系统视为一个大功能模块,常用“自顶向下逐步求精”策略,将之分解为一系列的小模块、小程序,组装这些小程序,即可获得大系统。由于设计时需求难以确定,导致功能易变,因此,建立在功能分解基础上的系统,可维护性较差,重用性也不好。
OOP认为软件系统就是对现实世界系统的模拟。它以对象(即数据)为核心,系统的可维护性、重用性较好,核心成分变动小,系统当然也比较稳定。此外,OOP中的抽象、封装、继承、多态等核心机制对提高大程序的可维护性、可重用性十分有益。
结构化程序设计(SP)
优势:以功能为核心构建系统,目标明确,方法简便易行。
有十分有效的开发策略:“自顶向下逐步求精”。
面向对象程序设计(OOP)
核心思想:OOP认为软件系统本质是显示系统的模拟,即现实系统中有的,软件中也应有对应成分;现实系统中应该如何做,软件中也应该如何做。在面向对象的开发过程中,开发者的主要任务就是抽象出这些对象,并用其构建模拟客观世界的对象模型,继而编写代码实现此模型。
基本概念:类和对象 封装 继承 多态 抽象