组件技术03935.ppt
《组件技术03935.ppt》由会员分享,可在线阅读,更多相关《组件技术03935.ppt(45页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、组件技术组件技术 计算机科学的本质计算机科学的本质vv计算机的定义计算机的定义 冯冯-诺伊曼定义:诺伊曼定义:define a computer as a device define a computer as a device that accepts data,processes data,stores data,that accepts data,processes data,stores data,and produces output.and produces output.指令流处理方式指令流处理方式vv本质:本质:动态动态 计算计算 静态静态 存储存储软件领域的发展软件领域的发展
2、vv程序设计方法的发展vv软件需求的变化vv软件环境的变化vv软件开发模式的变化程序设计方法的发展程序设计方法的发展vv功能分解法 计算任务vv结构化程序设计 以数据为中心vv面向对象程序设计 以对象为中心vv组件程序设计 以组件为中心综合使用软件需求的变化软件需求的变化vv计算vv实用vv管理(MIS)vv分布式系统软件环境的变化软件环境的变化单任务多任务文字界面图形界面单线程多线程平台相关跨平台单机(本地)网络(分布式)单一语言多种语言软件开发模式软件开发模式机器码高级语言和脚本代码OS+Compiler+EditorOS+Compilers+IDEs+Libraries+Wizards+
3、Components+other inforstructures+经验发展变化的结果发展变化的结果vv软件学科的形成软件学科的形成vv不变因素:不变因素:计算机的基本运作模式计算机的基本运作模式vv探求新的计算模型探求新的计算模型 量子计算量子计算 软件学科怎么办?软件学科怎么办?生物信息学生物信息学(?)(?)回顾软件学科回顾软件学科10多年来的变化多年来的变化vv软件的产生过程:原始代码原始代码-编译编译-Link-Link-终代码、脚本终代码、脚本 混合混合vv软件的分发过程:文档、说明书、自动安装工具、培训、升级文档、说明书、自动安装工具、培训、升级vv软件工程:需求需求-分析分析-设
4、计设计-code-test-code-test-使用使用vv对象技术和组件技术的不断普及,与大环境发展相结合对象技术对象技术vv用一种新的思路来看待问题1010多年的发展证明了多年的发展证明了OOOO符合软件的规律符合软件的规律对象技术的发展需要开发工具和开发语言的支持对象技术的发展需要开发工具和开发语言的支持vv三大特性:封装性、继承性、多态性vv两种思想Object-BasedObject-BasedObject-OrientedObject-Oriented组件技术组件技术vv组件技术适合于现代的软件环境软件更新快、规模大、强调协作等软件更新快、规模大、强调协作等组件的概念、软件组件的概
5、念、软件ICICvv组件的可独立发布性要求“接口与实现分离”vv组件infrastructure,组件体系COMCOM、CORBACORBA(和(和JavaJava)vv中间件(middleware)市场国内的状况国内的状况vv在对象技术和组件技术方面,国内落后vv问题:好的技术没能及时引进来好的技术没能及时引进来(怎么引进来怎么引进来?)?)缺乏好的教材、技术杂志、技术书籍缺乏好的教材、技术杂志、技术书籍(?)(?)缺乏良好的教育环境和工业环境缺乏良好的教育环境和工业环境基础基础vv编译过程,程序产生的过程回归回归“冯冯-诺伊曼诺伊曼”模型模型vvC+之必要性:最能反映对象技术、组件技术的核
6、心概念最能反映对象技术、组件技术的核心概念存在的问题:存在的问题:vv缺乏好的书籍缺乏好的书籍(?)(?)vv国内的应用领域不够广泛国内的应用领域不够广泛(?)(?)概念:类、对象概念:类、对象vv类是定义,它封装了状态和操作vv对象是实例,它反映了具体的事物vv对象由类来定义vv一个对象可以与多个具有继承关系的类相联系概念:组件概念:组件vv定义:可独立发布的二进制单元vv有的地方称作“package”vv容易混淆:服务器服务器(server)server)、对象、对象vv例如:COMCOM组件、组件、Java AppletJava Applet概念:概念:reuse(重用、复用)(重用、复
7、用)vv软件设计的目标vv不同形式的reusevv不同层次的reusevv例子:类库、中间件类库、中间件概念:接口与实现分离概念:接口与实现分离vvInterface and implementationvv对象技术和组件技术都强调vv接口是对象或者组件的通信协议vv实现是对象或者组件的内部细节vv接口的发布vv客户只关心接口概念:概念:decouplevv去耦vv尽可能地消除软件之间或者软件的不同部分之间的联系vv是软件设计的重要手段,也是目标vv不同层次上的decouple概念:多态性概念:多态性(polymorphism)vv对象技术中的重要概念vv以一致的方式来看待不同的事物vv在C+
8、中,通过继承和虚成员函数来实现vv运行时刻绑定:runtime binding区分两个词:区分两个词:overload vs.overrideoverload vs.overridevv在组件技术中,通过接口来体现概念:概念:modulevv模块vv不同层次上有不同的定义vv在Windows和Linux中,指可独立装载的二进制代码单元vv有些操作与模块相关概念:模板概念:模板(template)vv函数模板和类模板vv抽象层次更高vv泛型技术(generic programming)vv已纳入C+标准之中vv例子:STLSTL、ATLATL概念:概念:C/S和多层结构和多层结构vv这是指软件的
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 组件 技术 03935
限制150内