今天是2007年02月18日,农历猪年大年初一。

        打开音箱,播一首理查德·克莱德曼的《午后的旅行》,慢慢地开始这篇文章……

        按照我的性格,决定了一件事情要去做,那么就会默默整理好行装、背起行囊安静地启航。又是一年过去了,在这一年中,我经历了激情、活跃、挫折、振作……性格就是这么慢慢磨出来了。在这一年中,值得感谢的人也太多了,多得就像天上的星星。当人们记不住那一颗颗星星的名字时,就会把它们组成一个个星座,在我的记忆中,就有很多这样的星座,是它们给我勇气和方向,让我永不迷航。它们是:

        博彦科技,博文视点,Microsoft,Adobe,Google,北大青鸟,还有我的好朋友们……

        新年伊始,又是一次启航!这次是我有生以来头一次独立承担翻译一本英文书——Windows Forms 2.0 Programming (2nd Edition)

        能得到这个宝贵的机会,首先要感谢韩磊老师的举荐和周筠老师的宽怀接纳,还要感谢梁晶编辑的鼓励和方舟老师的斧正和指导。我一定会珍惜这个机会,不辱译者的使命,将这一本优秀的Amazon上榜书呈给中国广大.NET技术爱好者。

        下面说说我对这翻译这本书的看法和计划。

        这是本书的封面:

        ​​​

        Amazon上对它的评价是:4星

        我认为这个评分还是相当恰当的——即使是在国内也是这样。如果从国内的操作系统上来考虑,Windows占去了绝大多数企事业单位的桌面,所以.NET的应用远比美国要广,从这一角度上考虑,本书应该加半星(成为4星半);而国内对ASP.NET这种基于B/S架构的开发模式需求量又较WinForm需求量大,所以应该减半星(又回到4星)。

        我读这本书的感觉:

        在编程,教学,测试三个方面都很受用。.NET类库是个非常庞大的体系(特别是升级到2.0之后),纵然我们有雄心壮志按字母表把类库从头到尾啃一遍,这些孤立的类也很难形成经济价值。因此,我们需要一个有效的路径来把这些类按相关性串连起来——WinForm 2.0 Programming 2E——就是这样一本好书(但不是唯一的好书)。我很早就看过这本书,记得那时候是结合C# Language Spcification读的,从中我汲取了很多营养。书中的代码基本上都是可以拿出来用的,一些不能拿出来直接用(比如讲Application那章的代码)也是很精辟、很具有指导意义的。举个例子,以前我写单实例应用程序的时候,会固定套用一些多线程、互斥变量的方法,而这本书中直接告诉你——在VB.NET的一个namespace里就有一个封装好的类,拿来主义就OK了!在教学/学生学习方面,这里面的例子信手拈来就可以说明很多问题,而且例子很短小。有时候学生问到我“XXX控件应该怎么用?”时,我就直接告诉他页码,让他自己看了。于测试方面,我搞的是一些靠近底层的自动化测试,经常需要写WinForm程序,而且因为是“用程序驱动程序”,所以会用到很多与WinForm相关的内容(比如类库、自定义控件、多线程、P/Involk、COM/MFC互操作),这本书里就有不少相关内容,建议大家顺着这本书给出的思路在MSDN里游历一番,一定会收获颇丰的。

        翻译这本书的动力:

        除了自己很喜欢这本书中的技术话题之外,翻译这本书还有以下几个动力


  1. 良久以来每当有新入门的朋友让我推荐C#开放的入门教材,我都有点拿不定主意。大红皮我个人感觉不太实用,C# Primer好懂但内容太少(Lipman这回不太厚道,呵呵),由李建忠老师翻译的.NET框架虽然是好书,但新手又啃不动,C#语言文档VS又是自带的,一些国产书目里的例子又不正规(比如本来可以用String类的方法,它却自己用char[]实现一遍)。有时候索性把这些书都推荐大家,但初学者作为尝试性学习,不可能一下子投入这么多银两……而WinForm这本书正合我的心意——看懂C#语言文档,把这本书通读,再找个ASP.NET的高人推荐一本B/S的书(WinForm是C/S架构),基本上就可以说自己会C#开发了。
  2. 帮自己的小师弟、小师妹们找个出路。我还有很多小师弟、小师妹在学校里读书,苦于关在象牙塔里没有实践经验,找工作的时候没自信、屡屡受挫。就这本书而言,里面的实例我基本上都能应用在日常的编程工作中,所以读一读这本书可以让学生们快速获得生产力。在这方面,我仍然建议先把C#语言本身学通,然后看这本书(这本书讲的是“技”),还要再看一些关于UML/Design Pattern的书(这些书讲的是“艺”)。 如果这本书的内容能吃透,往高了不敢说,在北京拿到税后5~6k的薪水还是没问题的。

         我的Blog对译书的跟踪:

         译书本身就是对这本书的一次“深耕”,在这次深耕中,我相信一定会翻出一些宝贝来——那就是我对.NET技术的一些心得。然而,译书不是改写,有太多的内容我不能写进书里了——在试译的时候,有些精妙的地方我想添加些译注又实在是要增加不少篇幅。为了忠实原著,我将译书过程中的心得和对技术内容的感悟随时写在Blog里,让我的Blog成为阅读这本书的辅导材料——让工夫下在书内、溢于书外。

         最后,衷心希望得到大家的支持和积极反馈,帮助我为广大读者奉上一本实用的好书。