- 1、本文档共55页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
西南交通大学经济管理学院:何耀琴 第一章 面向对象技术及.NET环境 1.1 组件及组件技术COM+编程 1.2 对象及面向对象的软件开发技术 1.3 .NET的概念 1.4 .NET的操作环境和操作指南 1.1 组件及组件技术COM+编程 软件的变革COM+编程 作为面向对象的编程语言,其封装性可隐藏一个对象的实现细节,其继承性可在创建更特殊的对象时重用已经存在的对象的方法,其多态性可以使不同对象接收到相同信息时有自己不同的实现,因而C++拥有大量的追随者,以致出现了为C++服务的第三方类库市场。 但是,受编译器功能的限定,C++在建立可重用的类库时仍然存在许多障碍,很难进行跨不同编译器的类库进行链接,这给开发可重用组件的C++类库带来很多技术性问题。新的应用环境对应用程序提出了新的要求: 一个应用程序中,能否加入网页浏览功能? 通过网络,一个应用程序如何跨越不同的硬件、不同的操作系统平台进行通信,并且能够进行多数据库的更新? 如何减少开发、维护这种大型复杂的难度和时间? 能否重用现有的程序代码? 能否购买第三方开发的程序模块并入自己的系统? 软件能否像家庭娱乐系统一样由各种组件组装而成? 编程中要解决的技术问题 应用程序与web站点之间的网络接口; 如何从语法上分析HTML文档,显示出按钮、编辑框等用户组件; 如何在HTML文档中插入脚本程序; 如何处理防火墙、代理服务器的问题; 如何跟上浏览器技术的发展,如HTML→DHTML →XSL,而技术的发展永无止境! 传统的软件重用性 用以下两种方法可解决给一个应用程序添加网页浏览功能的问题: 1.从第三方软件厂商处获取支持网页浏览的源代码,但通常软件厂商都不愿意源代码共享; 2.将第三方软件厂商以静态链接库方式存在的预编译代码(如对网页浏览类定义的C++头文件WebBrowser.H和一个静态链接库WebBrowser.lib)中的头文件包含进自己的源代码文件。 问题: 如果用户已将自己的应用程序打包后给了自己的客户应用,第三方软件生产商才发现提供的代码有缺陷并愿意提供更新后的代码,但用户已经无法实现现场更改; 用户如果有多个应用程序与静态链接库相接,会重复装入代码并占用大量内存空间。 硬件组合实例 解决方法—硬件组件模型 只要VCR有一个视频输出插口,而这个视频插口是遵照同一个定义的“视频”协议来发送信号,那么任何品牌的VCR都可以同电视机连接在一起。 而TV工作时并不关心VCR的品牌,关心的是“视频”协议。事实上任何一台带有这种视频输出插口并使用这种协议的播放器设备都可以同TV相联。 组件:将接口与实现的细节分离。 开发组件的过程:先定义接口并能让开发者能使用这些接口写出正确的代码,然后创建一个COM组件来实现所定义的接口。 为此专门成立了COM协会,COM协会定义了一种专门用于定义接口的语言IDL,使开发者容易定义接口并能使用自己喜欢的语言编程 。 1.2 对象及面向对象的软件开发技术软件开发技术的重要趋势对象技术 过去的软件开发技术—面向过程式编程,由面向过程的编程语言支持(FORTRAN、PASCAL、C等) 缺点:每个语句描述一个动作、重点放在动作上、创建的程序单元不能重用,编程效率低 对象技术—一种打包方案,将对象、操作、所需数据组合在一起,用打包的方式创建成一个可重用的软件单元 优点:编程员重点放在对象的交互和行为等“大局”上,不必关心包内“细节”,对于软件的编写、理解、管理、维护、修改、调试都更容易,避免重复劳动。 什么是对象? 对象是行动或思考时作为目标的人或事物。 我们生活在对象构成的环境里,汽车、楼房、飞机、人、动物等都可以看成对象。对象也可以是一个概念,如数学定理; 现实世界中的对象有两大特性:状态(state)和行为 (behavior)。 狗的状态:狗名,颜色,种类,是否饥饿等; 狗的行为:吠,取物,摇尾等; 汽车的状态:品牌,排量,颜色、速度等; 汽车的行为:开或停,换档、加油、刹车等。 软件对象 软件对象也由状态和行为组成。 软件对象的两个要素:1. 属性:用来描述对象特性的一组数据。 属性值存放在域或字段(fields)中, 某些语言中亦称为变量(variables) 2.方法:用来操作对象特性的若干动作。 通过方法(methods,某些语言中亦称为函数(functions))对域进行操作,并显示对象的行为。 方法是对象与对象之间通信的主要机制。 面向对象程序设计的基本理论: 隐藏对象的内部状态并要求对象与对象之间所有的交互都需要通过对象的方法来进行,被称为数据封装(data encapsulation)或打包方案。 类(父类和子类) 类(Cl
文档评论(0)