`
java-mans
  • 浏览: 11742462 次
文章分类
社区版块
存档分类
最新评论

WTL for MFC Programmers, 中文版序言

 
阅读更多

WTL for MFC Programmers, Chinese Version Prologue

我一直在寻找这样一个类库:他对Windows的窗口提供面向对象的封装,有灵活的消息响应机制和比较完备的界面框架解决方案,对标准控件提供简练实用的封装,支持操作系统的新特性,支持功能扩充和二次开发,有代码自动生成向导机制,生成的程序使用较少的系统资源,最后是有完全的代码支持和文档支持。

你会说那就用MFC吧!

是的,我一直使用MFC,但我对MFC已经越来越厌倦了。陈旧的类库使得它无法支持操作系统的新特性(MFC的类库从4.21版之后就没有更新了,而那时是1998年,人们使用Windows 95和windows NT4),臃肿的消息映射机制和为了兼容性而保留下来的代码使得程序效率低下,面面俱到的框架结构使得生成的应用程序庞大并占用过多的系统资源。当一个功能简单的程序使用动态链接也超过200K,占用3%-4%的系统资源时,我决定放弃MFC,寻找一个新的功能类似的类库。我研究过很多类似的代码,不是过于简单,无法用于应用程序的开发就是缺乏代码和文档的支持。在CodeProject上有一个名为Class的类库,我也研究过它的代码,具备了基本的界面框架,对控件也有了简单的封装,但是不实用,庞大的虚函数机制使得对象非常臃肿,无法减少对资源的占用。我甚至仿照MFC做了一个简单的类库miniGUI,形成了基本的框架解决方案,但是最后放弃了,原因很简单:无法用于应用程序的开发。一个应用程序界面框架错综复杂,要考虑的事情太多,开发者不可能在应用程序和界面框架两线作战。就在我即将绝望的时候,我遇到了WTL。

由于工作的需要经常开发一些COM组件,在要求不能使用MFC的场合就是用ATL。ATL提供了对窗口的面向对象地封装和简单的消息映射机制,但是ATL过于简单,用它开发应用程序几乎不可能。要想让ATL具备界面框架解决方案的功能还需要做很多事情,幸运的是WTL就做了这些事情。WTL是个很奇特的东西,它由微软公司一群热情的程序员维护,它从未出现在微软的官方产品名单上,但可以从微软的官方网站下载最新的WTL。它没有正式的文档支持,用WTL做关键字在MSDN中检索只能得到0个结果,但是全世界的开发网站上都有针对WTL的讨论组和邮件列表,任何问题都会得到热情的解答。我认真地对比了MFC和WTL,发现二者有很多相通之处,MFC的功能几乎都能在WTL中实现,只是方法不同而已。我几乎不费吹灰之力就将以前写的一个MFC程序用WTL改写了,使用静态链接的WTL程序比使用动态链接的MFC程序还要小,资源占用只有MFC程序的一半。

但是一时的热情不能解决文档缺乏的困扰,虽然网上有很多使用WTL的例子和说明文章,几乎把MFC能实现的各种稀奇古怪的效果都实现了,但都是着眼于局部问题得解决,缺乏系统地全面地介绍WTL的文章。就在这个时候我看到了迈克尔.敦(Michael Dunn)的“WTL for MFC Programmers”系列文章,我的感觉和1995年我第一次见到MSDN时一样,几乎是迫不及待地将其读完,同时也萌发了将其翻译成汉语的冲动。于是给Michael写了封邮件,希望能够得到授权将他的文章翻译成汉语(事实上在这之前我已经翻译了两章了)。在得到授权确认后才发现这个工作是多么的困难,但为时已晚,只能硬着头皮撑下去。

现在介绍一下迈克尔.敦这个人。迈克(Mike)住在阳光灿烂的洛杉矶,深受那里天气的宠爱使他愿意一直住在那里。他在4年级时就开始在Apple //e上编程序,1995年从UCLA(加利福尼亚大学洛杉矶分校)毕业,获得数学学士学位。毕业后加盟赛门铁克(Symantec)公司,成为Norton AntiVirus小组的质量评价工程师。他几乎是自学了Windows和MFC编程,1999年他为Norton AntiVirus 2000设计并编写了新的界面。迈克现在是pressplay(不久成为Napster)的开发人员。他最近开发了一个IE的工具条插件UltraBar,可以轻松实现繁琐的网络搜索功能。他还和别人合作创办了一家软件开发公司:Zabersoft,该公司在洛杉矶和欧登赛(丹麦)都设有办事处。迈克喜欢玩弹球和骑自行车,偶尔也玩一下PlayStation,他还一直坚持学习法语,官方汉语和日语。

另外需要说明得是我翻译“WTL for MFC Programmers”系列文章不是为了获得任何利益,只是想为大家提供一些新的思路。如果你是MFC的坚定捍卫者,看到这里你就可以停下来了,再看下去是浪费你的时间(希望你看了前面几段文字还能挺住不要呕吐)。如果你是个对另类事物充满热情的程序员,你不能不研究WTL,它真的是一座宝藏。

最后用我的朋友对我的翻译文章的评价来结束“WTL for MFC Programmers”中文版的序言:翻译水平和你用的鼠标一样烂!

本系列文章最早发表于vchelp网站

Orbit (星轨 oRbIt)
2003年8月17日
全文打包下载:http://www.winmsg.com/cn/orbit.htm

分享到:
评论

相关推荐

    WTL for MFC Programmers

    WTL for MFC Programmers, Chinese Version Prologue WTL for MFC Programmers, Part I - ATL GUI Classes - WTL WTL for MFC Programmers, Part II - WTL GUI Base Classes - WTL WTL for MFC Programmers, Part ...

    编写WTL资料《WTL for MFC Programmers》

    《WTL for MFC Programmers》是专为熟悉MFC的开发者设计的一本权威指南,旨在帮助他们过渡到WTL框架,从而利用其优势进行更为灵活和高效的编程。 **WTL与MFC的关联与区别** MFC是微软提供的一个面向对象的C++库,...

    WTL for MFC Programmers.PDF

    WTL for MFC Programmers.PDF

    WTL for MFC Programmers 中英文

    **WTL for MFC Programmers 中英文** Windows Template Library (WTL) 是一个轻量级的C++库,由微软开发并提供,主要用于构建Windows应用程序。这个库是为那些已经熟悉Microsoft Foundation Class (MFC) 库的程序员...

    WTL简单教程WTL for MFC Programmers

    WTL 具有两面性,确实是...并在其内包含了WTL的CSplitterWindow,在CSplitterWindow中又使用了MFC的CDialogs -- 我并不是为了炫耀什么,只是修改了MFC的代码使之能够使用WTL的分割窗口,它比MFC的分割窗口好的多)。

    WTL for MFC Programmers(中文版)

    这个资源在网上很多下得到,只不过是html文件包,不方便使用,这个是我做的一个chm文件,希望对大家有用。

    WTL for MFC Programmers, 中文版序言.docx

    【WTL for MFC ...总的来说,《WTL for MFC Programmers》是MFC程序员探索WTL、提升Windows应用程序开发效率的重要参考资料,而中文版的翻译则为中文开发者提供了宝贵的自学材料,帮助他们更好地理解和使用WTL。

    wtl_for_mfc_programmers

    **中文版序言** 这部分可能是对整个学习资源的简介,阐述了WTL对于MFC程序员的价值,以及为什么选择学习WTL。 通过这个资源包,MFC程序员不仅可以了解WTL的基本概念,还可以学习到如何有效地将WTL整合到现有的MFC...

    WTL for MFC Programmers英文版PDF,附演示代码

    注意,是英文版!排版比较好,附演示代码 Part I - ATL GUI Classes Part II - WTL GUI Base Classes Part III - Toolbars and Status Bars Part IV - Dialogs and Controls Part V - Advanced Dialog UI Part VI - ...

    WTL for MFC programmer

    **Windows Template Library (WTL) for MFC Programmers** Windows Template Library (WTL) 是一个轻量级的库,由Microsoft开发,它扩展了Microsoft Foundation Class (MFC) 库的功能,尤其在创建Windows应用程序时...

    wtl_for_mfc_programmers_cn

    在"wtl_for_mfc_programmers_cn"这个压缩包中,包含了这个中文版教程的资源,你可以通过阅读它来深入了解WTL和如何在MFC的基础上使用WTL进行开发。同时,配合实践项目和在线论坛的讨论,将有助于进一步提升你的WTL...

    WTL For MFC Programmer(中文版)

    总的来说,"WTL For MFC Programmer(中文版)"是一本帮助MFC开发者理解和应用WTL的重要资源。通过阅读这本书,你可以了解到如何利用WTL的特性,提升Windows应用开发的效率和质量,同时享受到C++编程的乐趣。

    WTL for MFC 程序员(中英对照

    WTL for MFC 程序员(中英对照

    WTL for MFC Programmer

    ### WTL for MFC Programmer:关键技术点解析 #### 一、引言 WTL (Windows Template Library) 是一套由微软开发的轻量级GUI库,主要用于简化基于Windows平台的应用程序开发工作。它提供了大量用于创建窗口类、...

    WTL Progrmamer For MFC中文版

    ### WTL Programmer for MFC中文版相关知识点 #### 一、WTL简介及预备知识 **WTL**(Windows Template Library)是一种轻量级的Windows应用程序开发库,它基于Microsoft的ATL(Active Template Library)之上,...

    WTL4MFC2_demo

    This code accompanied the article: WTL for MFC Programmers, Part X - Implementing a Drag and Drop Source available at this URL: ... June 16, 2006 <br>If you're looking for the license ...

    wtl_for_mfc_programmers_cn.zip_ATL_wtl_wtl atl_wtl for m_wtl什么格式

    这个压缩包中的"wtl_for_mfc_programmers_cn"很可能是一个针对MFC开发者学习ATL和WTL的中文教程。它可能包含了详细的理论讲解、示例代码和实践项目,帮助读者理解如何将MFC的经验迁移到ATL/WTL环境。...

Global site tag (gtag.js) - Google Analytics