[Effective C# 4.0 译]第三章 用C#表达你的设计

[Effective C# 4.0 译] 第三章 用C#表达你的设计

翻译:罗朝辉(http://www.cnblogs.com/kesalin/

 

题记:网络中已不乏[Effective C#]的中文翻译版中文版本也已出版,但是内容比较老,不是最新版(C# 4.0),这就是我翻译该系统文章的原因之一;本人虽然胡乱码过几年C/C++,Java,Objective-C,但却是C#新手,一边翻译一边学习是我翻译该系列文章的原因之二。因为是新手,错误疏落难免,还请各位指正。版权申明:[Effective C# 4.0 译]系列翻译文章仅为学习爱好之用,遵循“署名-非商业用途-保持一致”创作公用协议,请支持英文正版。


第三章 用C#表达你的设计

初学者设法使用外语(人类语言)进行交流。他们学得词汇,也能够把它们拼凑起来以表达他们的观点。在从初学者过渡到语言专家的过程中,他们开始使用这门外语中合适的惯用语。这样,该门外语就变得不再那么“外”了,他们开始能更有效,更清晰说这门外语。编程语言也是如此。你所选择的技术能够让你的设计意图与那些维护,扩展或使用你开发的软件的开发人员交流。C#类型都生存于.NET环境下,该环境对所有类型的能力作了一些假设。如果你违反这些假设,你就增加类型不能正确工作的可能性。

 

本章的这些条款不是已出版的有关软件设计技术的概要,相反,这些条款醒目地给出了不同的C#语言特性是怎样最佳地表达你的软件设计意图。C#语言设计者们增加了一些语言特性来更清晰地表达现代设计惯用法。特定语言特性之间只有细微的差异,通常你有很多替代方案可供选择。一开始可能有超过一个最佳替代方案,然而当你发现你必须改进已有程序时,这种差异就开始显山露水。确保你能很好地理解这些条款,并在你正构建的系统需要改进时小心地应用它们。

 

一些语法的改变给你提供了新的词汇来描述你每天都使用的惯用法。比如说:属性(Properties),索引器,事件以及委托(Delegates)等;Class与Interface的不同:Class定义类型,Interface申明行为;基类申明类型并为一组相关类定义通用行为。其他一些设计惯用法因垃圾回收器而改变,还有一些因大部分变量都是引用类型而改变。

 

本章的这些建议能帮助你为你的设计选择最自然的表达方式,这能让你创建易于维护,易于扩展,易于使用的软件。


posted @ 2012-03-01 12:51  飘飘白云  阅读(1937)  评论(4编辑  收藏  举报
本博客遵循 Creative Commons License “署名-非商业用途-保持一致”创作共用协议。 与我联系