Item 50: Learn About the ECMA Standard
学习ECMA标准
The ECMA standard is the official word on how every feature in the C# language behaves. ECMA-334 defines the 1.0 standard for the C# language. You can learn about the C# 2.0 proposals from the book The C# Programming Language, by Anders Hejlsberg, Scott Wiltamuth, and Peter Golde (Addison-Wesley, 2003). This book is a language reference, not a tutorial. It explains in very pedantic detail exactly how each feature of the language works. Each language feature is annotated so that you can better understand the justification of each language feature. While I was working on this book, I constantly had this reference open on my desk.
ECMA标准是关于C#语言特性有什么样的行为的官方标准。ECMA-334定义了C#语言的1.0标准。你可以通过这本书学习C#2.0提议: Anders Hejlsberg、Scott Wiltamuth、Peter Golde编写的《The C# Programming Language》(Addison-Wesley, 2003)。该书是一个语言参考,而不是一本指南。它详细说明了该语言的每个特性是如何工作的。每个特性都被进行了解释,因此你更好的理解每个语言特性的缘由。我写这本书的时候,这本参考书就一直在我的桌子上。
If you are a serious C# programmer, you should understand the language, including the rationale behind different features. It will make your job easier if you know when to apply each feature in your own work. You will have a better understanding of any subtle differences in different language expressions.
如果你是一个严肃的C#程序员,就应该理解该语言,包括不同特性背后的基本原理。如果你知道了在你的工作中,何时应用这些特性,那么可以使你的工作更容易。对于在不同的语言表述之间的任何细微差别,你也会有更好的理解。
In addition to the C# language, you should understand the Common Language Runtime (CLR) thoroughly. The CLR and Common Language Infrastructure (CLI) standards are defined in ECMA-335, the CLR standard. As with C#, this is version 1.0 of the standard. The Common Language Infrastructure Annotated Standard, by James Miller and Susann Ragsdale (Addison-Wesley, 2003), explains the CLI version 2.0. This reference includes the Common Language Subsystem (CLS), which will help you understand the rules behind CLS compliance. This also helps you understand the ECMA standard for the .NET runtime and infrastructure.
除了C#语言,你应该彻底理解通用语言运行时(CLR)。CLR和通用语言基础(CLI)标准在定义在ECMS-335里面,这也是CLR标准。和C#一样,这也是1.0的标准。通用语言基础标记标准《he Common Language Infrastructure Annotated Standard》(Addison-Wesley, 2003),这本由James Miller和Susann Ragsdale 编写的书籍,解释了CLI2.0。该参考包含了CLS,将帮助你理解CLS背后的规则,也将帮助你理解对于.NET运行时和基础结构的ECMA标准。
Both the C# and CLR committees continue to publish working documents on the discussion and progress of the 2.0 version of the C# language and the CLR. The discussions are a valuable way to understand how C# will grow and change over time.
C#和CLR委员会都在继续公开发布关于C#以及CLR2.0的讨论以及进度的工作文档。这些讨论是理解C#将如何随着发展的有价值的方式。
In addition, a deeper understanding of the current standard and the proposed enhancements will help you create code that stands the test of time. By understanding the features that will be added to the language and the environment, you are in a better position to create software that lasts longer into the future. You can anticipate the future modifications that might be necessary.
另外,对当前标准以及建议中的增强的理解,会帮助你创建能经受时间考验的代码。理解这些将被加入语言和环境的特性,你将处于创建支撑长久的软件的有利地位。你可以参与将来可能需要的修改。
Software changes over time. C# will grow and change, probably for some time and for several revisions after 2.0. This is a tool that you use every day, for most of your day. Learn the official definitions, and stay on top of them.
软件随着时间在改变。C#也将成长和改变,可能在2.0之后会有几个版本。这是你每天在使用的工具。学习官方文档,处于前沿地位。