2005年初,由于工作需要开发了一些.net组件,但自觉这些组件在设计时的界面不够友好,没有一些自己期望的特性,因此在网络和MSDN上搜索关于组件设计的代码和文章,但由于不知道组件设计到底要涉及些什么内容,用“组件设计”作关键字找来找去,都只是一些只言片语,没有很系统的东西,但这些东西多少都给人以启示,通过他们,逐渐了解到如何组件设计所需要的东西,所以找到的东西也越来越符合我的要求,最后,还是在MSDN上看到一篇很系统的文章专门介绍组件的设计时特性,通过这篇文章的描述和实例,才让我真正看明白MSDN关于组件设计时特性的说明(最初也看了这些东西,但完全不明白在讲什么,更不知道怎么用),但很遗憾,MSDN上的这篇文章是e文的,虽然文字浅显,但毕竟不如中文看得流利,故萌生了翻译这篇文章的念头,刚刚着手这件事的时候,在Google中搜索到了一篇发表在微软中国网站上的文章,正好是这篇文章的中文版,很兴奋,用很快的速度浏览了一下,发觉很不错,基本上将原文的意思翻译了出来,但自己觉得翻译上有点小毛病,在措词上也比较罗嗦(也许是为了忠实于原文的缘故吧),于是就将这篇翻译过的文章整理了一下,通过反复对比原文,修改了其中一些用语和措词,尽量做到与原文要表达的意思一致。
修改的部分自己觉得最重要的就是关于class和type以及Category的翻译,中文版将他们全部都翻译为类型或类,很容易产生误解,因此可能使读者的理解偏离这些英文单词的本来意义,因此我在翻译的时候将class称为类,type称为类型,category称为类目。其次就是property和attribute的翻译,中文版都翻译为属性,而有时又将attribute翻译为属性特性,也容易混淆,所以我将property翻译为属性,将attribute翻译为特性;还有就是“导出”这个词,实际上原文的意思就是派生,对于习惯于C++概念的我还是喜欢这个词;源代码部分我已经作了测试,只有第二个PersonConvertor的实现有些问题,但通过完全重载了TypeConvertor之后,也达到了相同的目的,我的代码将放在最后;总之,我对这篇值得仔细研究的文章的某些细节作了一些修改,至于是否妥当,请读者自酌。
蓝鬼 2005年3月