关于结构化程序设计与面向对象程序设计的简述
发布人:系统管理员  发布时间:2013-06-15   浏览次数:61
一、结构化程序设计
    它采用结构化技术(结构化技术分析 结构化设计 结构化实现)来完成软件开发的各项任务,并使用适当的软件工具或软件工程环境来支持机构化技术的运用。结构化程序中的任意基本结构都具有唯一入口和唯一出口,并且程序不会出现死循环。在程序的静态形式与动态执行流程之间具有良好的对应关系。
    1、优点
    结构化程序设计方法主要由三种逻辑结构组成,分别为:顺序结构、循环结构、选择结构。结构化程序设计的每种结构,只有一个入口和一个出口,这是结构化设计的一个原则。遵循结构化程序设计的原则,按照结构化程序设计方法设计出的程序具有明显的优点。如:
    其一,程序易于阅读、理解、排错和维护。程序员采用结构化编程方法,将一个复杂的程序分解成若干个子结构,便于控制、降低程序的复杂性,因此容易编写程序,同时便于验证程序。
    其二,提高了编程工作的效率,降低了软件开发成本。由于结构化编程方法能够把错误控制到最低限度,每个模块可以独立编制、测试,因此能够减少调试和查错的时间。
    2、缺点
    结构化程序设计主要有三点缺点;如:
    一、用户的要求难以在系统分析阶段准确定义,从而使系统在交付使用时会产生许多问题。
    二、用系统开发每个阶段的成果来进行控制,不能适应事物变化的要求。
    三、系统的开发周期长,结构化程度较低的系统,在开发初期难以锁定功能要求。
二、面向对象程序设计
    面向对象程序设计是一种计算机编程架构。面向对象程序设计的一条基本原则是计算机程序是由单个能够起到子程序作用的单元或对象组合而成。它达到了软件工程的三个主要目标:重用性、灵活性和扩展性。为了实现整体运算,每个对象都能够接收信息、处理数据和向其它对象发送信息。面向对象程序设计中的概念主要包括:对象、类、数据抽象、继承、动态绑定、数据封装、多态性、消息传递。
    1、优点
    面向对象程序设计的优点有好几个方面。如: 
    一、简单性:因为面向对象语言里面的对象都是反映的真实世界的对象,所以复杂性就降低了而且程序结构也更加清晰;
    二、模块性:每一个对象都来源于一个单独的实体,它内部的工作与系统的其他部分是分离的。
    三、易修改性:在面向对象程序中对数据表现层和工作过程进行小的改动是非常简单的,类内部的改动不会影响程序的其他部分,因为外边的程序与这个类的交互是通过一个公开的接口方法进行的,只要这个方法不改动就不会影响交互。
    四、可扩展性:在面向对象程序里面,添加新的功能只需要引入新的对象或者修改一下现存的对象。
    五、可维护性:对象可以进行分别维护,这样就使查找问题和修复问题变得简单了。
    六、重用性:对象可以在不同的程序里面重用。
    2、缺点
    面向对象程序设计的缺点主要有四点。如:
    一、初学者不易接受、难学。
    二、需要一定的软件支持环境。
    三、不太适宜大型的MIS开发,若缺乏整体系统设计划分,易造成系统结构不合理、各部分关系失调等问题。
    四、只能在现有业务基础上进行分类整理,不能从科学管理角度进行理顺和优化,执行速度会打折扣。
三、结构化程序设计与面向对象程序设计的联系
    面向对象程序设计主要克服了结构化程序设计中存在的问题。面向对象程序设计出现以前,结构化程序设计是程序设计的主流,结构化程序设计又称为面向过程的程序设计。在面向过程程序设计中,问题被看作一系列需要完成的任务,函数(在此泛指例程、函数、过程)用于完成这些任务,解决问题的焦点集中于函数。其中函数是面向过程的,即它关注如何根据规定的条件完成指定的任务。在多函数程序中,许多重要的数据被放置在全局数据区,这样它们可以被所有的函数访问。每个函数都可以具有它们自己的局部数据。这种结构很容易造成全局数据在无意中被其他函数改动,因而程序的正确性不易保证。面向对象程序设计的出发点之一就是弥补面向过程程序设计中的一些缺点:对象是程序的基本元素,它将数据和操作紧密地连结在一起,并保护数据不会被外界的函数意外地改变。