>
很多人都思考过应如何开始学习一种新的语言,对于一个有经验的编程人员来讲,这确非难事。但是对于一个对编写代码一无所知的人而言,如果你是以c#开始你的编程之旅的,数目繁多的概念及新名词可能会令你有些不知所措。这时候请注意你的学习顺序,任何一种编程语言的学习都是按照运行平台、语法、基类库直至各方面的应用这一顺序来进行的,但是在实际的学习中,它们之间并不是孤立的。推荐的方法是:对运行平台和语法有了一个整体的认识后,在应用中学习各种基类库的用法。鉴于c#这一语言的特殊性,全面了解它的运行平台(.net framework)必会使你的学习事半功倍。所以请记住上面提到的两个图,在以后的学习中,虽然可能不会明确的涉及到它们,但是在整个c#的学习过程中,它们却是无处不在的。
还有一个很重要的概念需要你明白,这就是公共语言架构(common language infrastructure ,cli)。cli是clr的一个子集,也就是.net中最终对编译成msil代码的应用程序的运行环境进行管理的那一部分。在clr结构图中cli位于下半部分,主要包括类加载器(class loader)、实时编译器(il to native compilers)和一个运行时环境的垃圾收集器(garbage collector)。cli是.net和clr的灵魂,cli为il代码提供运行的环境,你可以将使用任何语言编写的代码通过其特定的编译器转换为