2、软件组件复用性与动态链接库的应用

软件组件复用性与动态链接库的应用

1. 组件复用性的起源

周五下午很晚了,原本没有会议安排,你花了大部分时间实现一个有创意的算法,项目进展顺利且按计划交付。然而,项目经理此时走进来,询问能否在应用程序中添加网页浏览支持。你开始思考,实现这个功能需要进行底层套接字编程、解析 HTML 文档、处理嵌入式脚本,还要考虑防火墙和代理服务器等问题。由于工作量大且资源和时间有限,你拒绝了这个请求,但经理对此不满。

你开始思考,像 Netscape 和微软这样的公司已经开发并维护了网页浏览技术,为何不能利用他们的工作成果呢?这就是组件对象模型(COM)的核心思想,即复用一个或多个软件组件,使它们无缝集成,并且在单个组件升级时不会出现问题。

组件复用并非新概念,硬件设备早就支持这一理念。例如,组装家庭娱乐系统时,不同品牌的放大器、电视、音箱、DVD 播放器和 DSS 接收器可以组合在一起正常工作,各组件制造商对其他组件的内部电路和功能了解甚少,但系统仍能作为一个整体运行。这让我们思考,能否将这种复用性应用到软件领域呢?

2. 传统软件复用方法

为应用程序添加网页浏览功能,传统上有两种方法:
- 获取完整源代码 :从第三方软件供应商处获取网页浏览的完整源代码,进行编译和链接以创建应用程序可执行文件。但大多数软件供应商不愿分享源代码,所以这种方法不太常见。
- 使用静态链接库 :供应商提供包含网页浏览类定义的 C++ 头文件(如 WebBrowser.h)和静态链接库(WebBrowser.lib)。将头文件包含在应用程序源代码中,编译源代码,然后与静态库链接以

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值