• 网络学院
  • IT资讯
  • 操作系统
  • 网络技术
  • 软件应用
  • 办公软件
  • 编程技术
  • 网站架设
  • 数据库类
  • 平面设计
  • 多媒体类
  • 游戏资讯
  • 教学论文
  • 认证考试
程序设计方法的演化及极限(2)
  站点:
  • 首 页
  • 最新软件
  • 文章教程
  • 国内软件
  • 国外软件
  • 绿色软件
  • 源码下载
  • 字体下载
程序设计方法的演化及极限(2)
软件发布 程序设计方法的演化及极限(2)
网络软件 系统工具 应用软件 联络聊天 图形图像 多媒体类 行业软件 游戏娱乐 编程开发 安全相关 教育教学 数码软件 绿软下载
热门软件: QQ 瑞星 pplive e话通 木马克星 千千静听 office2000 五笔字根 Photoshop 视频分割
返回文章教程首页 >> 文章首页 >> 认证考试 >> 程序员 >> 程序设计方法的演化及极限(2)

程序设计方法的演化及极限(2)

添加时间: 2007-4-9 0:26:43  作者: 程序员认证参考  阅读次数:18   来源: http://www.d9soft.com

       

3.面向对象程序设计

  20世纪90年代,由于计算机硬件的飞速发展,对软件系统在规模和性能方面的要求也在不断的提高。因此,传统的程序设计方法使得软件和硬件能力的差距迅速扩大。传统的软件工具、软件技术和抽象层次越来越难以适应大规模复杂软件系统的开发特点。因此,软件能力已成为制约软件发展的主要因素。

  OOP方法源于20世纪70年代中后期,在20世纪80年代逐步代替了传统的SP方法,成为最重要的方法之一,至今OOP方法被广泛应用于各个领域。面向对象的基本 思想 与结构化设计思想完全不同,面向对象的方法学认为世界由各种对象组成,任何事物都是对象,是某个对象类的实例,复杂的对象可由较简单的对象的某种方式组成。OOP的基石是对象和类。对象是数据及对这些数据施加的操作结合在一起所构成的独立实体的总称;类是一组具有相同数据结构和相同操作的对象的描述。面向对象的基本机制是方法和消息,消息是要求某个对象执行类中某个操作的规格说明;方法是对象所能执行的操作,它是类中所定义的函数,描述对象执行某个操作的算法,每一个对象类都定义了一组方法。

  OOP有3个重要特性:封装性、继承性和多态性。封装性是指对象是数据和处理该数据的方法所构成的整体,外界只能看到其外部特性(消息模式、处理能力等),其内特性(私有数据、处理方法等)对外不可见。对象的封装性使得信息具有隐蔽性,它减少了程序成分间的相互依赖,降低程序的复杂性,提高程序的可靠性和数据的 安全 性。 继承性(Inheritance)反映的是类与类之间的不同抽象级别,根据继承与被继承的关系,可分为基类和衍生类,基类也称为父类,衍生类也称为子类,正如“继承”这个词给我们的字面提示一样,子类从父类那里获得所有的属性和方法,并且可以对这些获得的属性和方法加以改造,使之具有自己的特点。继承性使得相似的对象可以共享程序代码和数据,继承性是程序可重用性的关键。多态性是指在形式上表现为一个方法根据传递给它的参数的不同,可以调用不同的方法体,实现不同的操作。将多态性映射到现实世界中,则表现为同一个事物随着环境的不同,可以有不同的表现形态及不同的和其他事物通信的方式。多态性使程序员能在一个类等级中使用相同函数的多个版本,程序员可以集中精力开发可重用的类和方向而不必过分担心名字的冲突问题。

  OOP方法是以“对象”为中心进行分析和设计,紧抓“模型化世界”的对象,使这些对象形成了解决目标问题的基本构件,即解决从“用什么做”到“要做什么”。其解决过程从总体上说是采用自底向上方法,先将问题空间划分为一系列对象的集合,再将对象集合进行分类抽象,一些具有相同属性行为的对象被抽象为一个类,类还可抽象分为子类、超类(超类是子类的抽象)。其间采用继承来建立这些类之间的联系,形成结构层次。同时对于每个具体类的内部结构,又可采用自顶向下逐步细化的方法由粗到细精化之。调试运行时通过向类对象发消息来完成,对象执行相应操作并返回结果,使对象集的初始状态变成了终态。故OOP总体来说主要是不断设计新的类和创建对象的过程。

  与传统的SP相比,OOP方法具有许多优点,如采用“对象”为中心的设计方式,再现了人类认识事物的思维方式和解决问题的工作方式;OOP方法以对象为唯一的语义模型,整个软件任务是通过各对象(类)之间相互传递消息的手段协同完成。因此,能尽量逼真地模拟客观世界及其事物;由对象和类实现了模块化,类继承实现了抽象对象,以及任一对象的内部状态和功能的实现的细节对外都是不可见的,因此很好地实现信息隐藏。由此建立在类及其继承性基础上的重用能力可应付复杂的大型的软件开发。面向对象方法使得软件具有良好的体系结构、便于软件构件化、软件复用和良好的扩展性和维护性,抽象程度高,因而具有较高的生产效率。目前,面向对象程序设计语言以 Java 、C++ 为代表。

 

上下文章:

 

上一篇文章: 程序员级考试大纲 下一篇文章: 高级程序员级考试大纲

相关文章:

  • vista隐蔽的注册表垃圾清理方法
  • 在局域网中配置Vlan的基本方法
  • 常见问题诊断方法---(常见错误篇)
  • 常见问题诊断方法---(SQL*NET篇)
  • Oracle联机日志文件丢失处理方法

相关软件:

  • 学习方法宝典 2006 新春贺年版
  • 东方法律宝典 2005 Ⅲ
  • 极限音乐网全站程序
  • 极限娱乐网
  • Apc001.Com 极限音乐探索 免费版
  • 极限音乐网全站程序 v7.0

 

快速导航

  • 网络学院
  • 精品汇聚
  • 字体下载
  • 教程下载
  • ASP源码
  • PHP源码
  • Net源码
  • JSP 源码

认证考试分类导航

  • 微软认证
  • 计算机等级考试
  • 软件水平考试
  • 思科认证
  • Oracle认证
  • Linux认证
  • JAVA认证
  • 网络工程师
  • 系统工程师
  • 程序员

本类经典文章推荐

  • 软考系统分析师考试须知
  • C++箴言:绝不在构造或析构期调用...
  • 数据结构:判别是否为二叉排序树的...
  • 一个程序员的成长的六个阶段
  • 程序员英语试题常见硬件名和设备名
  • 从一个程序出发详细研究DataReader
  • 如何判断程序处于运行环境还是调试...
  • 程序高手必读:写好C程序的10条秘...
  • 程序员介绍:程序员的“素质”是什...
  • C++箴言:让=返回一个*this的引用

程序员阅读排行

  • 数据结构:判别是否为二叉排序树的...
  • VC++动态链接库(DLL)编程深入浅出...
  • VC++动态链接库(DLL)编程深入浅出...
  • 程序员考试:证书样本
  • 补码加、减运算规则及溢出判断
  • 数据结构:栈和递归求两顶点所有简...
  • DirectX8.0简介(8)
  • 水滴石穿·C语言之代码检查工...
  • 数据结构:打印线索二叉树的中序遍...
  • DirectX8.0简介(3)

认证考试阅读总排行

  • 全国计算机等级考试一级模拟试题01
  • 全国计算机等级考试一级模拟试题10
  • 全国计算机等级考试一级模拟试题08
  • MCSD简介
  • 全国计算机等级考试一级考试最新模...
  • 全国计算机等级考试一级模拟试题07
  • 全国计算机等级考试一级模拟试题02
  • 全国计算机等级考试一级模拟试题06
  • 全国计算机等级考试一级模拟试题03
  • 一级(WINDOWS)试题解析-Word篇

广告位置

字母检索 A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 回到顶部

关于我们 | 版权声明 | 免责条款 | 广告联系 | 软件发布 | 下载帮助 | 下载排行 | 网站地图 | 特别鸣谢 | 友情连接

copyright; 2005-2008 D9soft.com 第九软件网 版权所有