1.面向对象的特征
结构化程序设计简介
结构化程序设计方法主张按功能来分析系统需求,其主要原则可概括为自顶向下,逐步求精,模块化等。结构化程序设计首先采用结构化分析(Structrued Analysis,即SA)方法对系统进行需求分析,然后使用结构化设计(Structrued Design,即SD)方法对系统进行概要设计、详细设计,最后采用结构化编程(Structrued Program,即SP)方式来实现系统。使用这种SA、SD和SP的方式可以较好的保证软件系统的开发进度和质量。
因为结构化程序设计方法主张按功能把软件系统逐步细分,因此这种方法也被成为面向功能的程序设计方法;结构化程序设计的每个功能都负责对数据进行一次处理,每个功能都接受一些数据,处理完后输出一些数据,这种处理方式也被称为面向数据流的处理方式。
结构化程序设计里最小的程序单元是函数,每个函数都负责完成一个功能,用以接受一些输入数据,函数对这些输入数据进行处理,处理结束后输出一些数据。整个软件系统由一个个函数组成,其中作为程序入口的函数被称为主函数,主函数依次调用其他函数,普通函数之间依次调用,从而完成整个软件系统的功能。
结构化软件的逻辑结构示意图
结构化程序设计的局限性
1、设计不够直观,与人类习惯思维不一致。采用结构化程序分析、设计时,开发者需要将客观世界模型分解成一个一个功能,每个功能用以完成一定的数据处理。
2、适应性差,可扩展性不强。由于结构化设计采用自顶而下的设计方式,所以当用户的需求发生改变,或需要修改现有的实现方式时都需要自顶而下地修改模块结构,这种方式的维护成本相当大。
程序的三种结构
结构化程序设计非常强调实现某个功能的算法,而算法的实现过程是由一系列操作组成的,这些操作之间的执行次序就是程序的控制结构。1996年,计算机科学家Bohm和Jacopini证明了这样的事实:任何简单或复杂的算法都可以由三种结构组成:顺序结构、选择结构、循环结构,这三种结构就被称为程序设计的三种基本结构,也是结构化程序设计必须采用的结构。
顺序结构
选择结构
循环结构
面向对象程序设计
面向对象是一种更优秀的的程序设计方法,它的基本思想是使用类、对象、继承、封装,消息等基本概念来进行程序设计。它是从现实世界中客观存在的事物(即对象)出发