频道直达 - 专题 - 新闻 - 技巧 - 组网 - 开发 - 安全 - web编程 - 图像 - 操作系统 - 数据库 - 教育 - 旅游 - 健康 - 时尚 - 驱动 - 软件 - 游戏 - 多媒体 - ERP - 讨论组

关于软件复用的思考

来源:CSDN 作者:sam1111 出处:巧巧读书 2005-11-09 进入讨论组
下一页 1 2 

  由于最近接手了一个有关于ActiveX的产品的维护工作,使得我有机会重拾已丢下一年多的COM技术,同时也有机会重新审视技术的变迁历程,以及蕴含在其中的某些思想,这种感觉就好像回过头来看自己走过的道路。所不同

的是,回首自己的人生路,成败得失一幕了然;而技术的发展虽然依然遵循优胜劣汰的法则,但优劣之间的界限好像并不那么明显,反而有些使人迷茫。比如说复用。

  软件复用一直被视为改善软件工程的重要手段,人们期望通过复用以前的代码或组件,来提高生产率,改善产品的质量。软件复用一般又分为源码级复用和二进制级复用。对于源码级复用,现在已经发展出很多重要的设计范式(paradigm)从各个不同的方面提供支持。比如OO通过对数据与处理数据的函数进行封装来达到class的复用,而GP通过分离数据结构以及处理这些结构的方法与数据的类型之间的联系,来使数据结构和方法得到复用。对于二进制级的复用,目前也有非常成熟的组件模型,比如COM、CORBA等。而且,现在也有了一些非常优秀的指导软件复用的理论,如Design Patterns等。以上这些都说明,软件复用勿庸置疑是软件设计中一种非常重要的思想,我们每个人在写代码的时候都应当充分考虑我们的代码的复用性,这一直是我遵循的信条之一。但是,现在我有些迷茫了。

  还是先说说我最近接手的工作吧。我接手维护的产品是一组写于数年前的ActiveX controls(代码中最早的注释可以追溯到公元1997年,看到这行注释时,我首先想到的竟然是那首叫做“我的1997”的歌曲),由于年代久远,除了产品的使用手册之外,没有任何关于代码的文档,我只能靠源码和其中零零碎碎的注释来揣摩前辈们的意图。我得承认,这些代码中虽然夹杂了许多不同的人由于各种原因而做的修改,但代码的整体结构还是很好的。

  为了从最大程度上满足复用的要求,这些前辈们从ATL2.1上发展出一套自己的ActiveX control库(暂且叫做BLib吧),来负责处理control的属性、接口、事件以及消息等,这套库简化了ATL窗口编程的复杂程度,修正了当时存在于ATL2.1中的某些错误,这个库在当时应该很好用(我只是猜测,因为其中的大部分代码我还没看懂L)。基于BLib库的产品的逻辑与UI是分开的,大部分的逻辑错误并不需要改动库代码。
URL查看 http://www.qqread.com/itlife/d012742010.html 更多文章 更多内容请看常用软件加密宝典杀毒软件专栏软件插件专题,或进入讨论组讨论。

下一页 1 2 
收藏此文】【 】【打印】【关闭
相关图文阅读
频道图文推荐
健 康 咨 询
时 尚 咨 询
巧巧读书宗旨
相关专题
讨论组问题推荐
站内各频道最新更新文档
站内最新制作专题
热门关键字导读
Photoshop教 程照片处理 照片制作 PS快捷键 抠图
计 算 机 故 障XP系统修复
艺 术 与 设 计设计 流媒体 设计欣赏 边框
计 算 机 安 全ARP
站内频道文章精选
巧巧电脑频道编辑信箱  告诉我们您想看的专题或文章