C#的概念
C#是微软公司发布的一种面向对象的、运行于.NET Framework之上的高级程序设计语言。C#是一种安全的、稳定的、简单的、优雅的,由C和C++衍生出来的面向对象的编程语言。它在继承C和C++强大功能的同时去掉了一些它们的复杂特性(例如没有宏以及不允许多重继承)。C#综合了VB简单的可视化操作和C++的高运行效率,以其强大的操作能力、优雅的语法风格、创新的语言特性和便捷的面向组件编程的支持成为.NET开发的首选语言。
C#看起来与Java有着惊人的相似;它包括了诸如单一继承、接口、与Java几乎同样的语法和编译成中间代码再运行的过程。但是C#与Java有着明显的不同,它借鉴了Delphi的一个特点,与COM(组件对象模型)是直接集成的,而且它是微软公司 .NET windows网络框架的主角。
发展历史
C#是微软公司在2000年6月发布的一种新的编程语言,主要由安德斯•海尔斯伯格(Anders Hejlsberg)主持开发,它是第一个面向组件的编程语言,其源码会编译成msil再运行。C#读作C Sharp,最初它有个更酷的名字,叫做COOL。微软从1998年12月开始了COOL项目,直到2000年2月,COOL被正式更名为C#。在1998年,Delphi语言的设计者Hejlsberg带领着Microsoft公司的开发团队,开始了第一个版本C#语言的设计。在2000年9月,国际信息和通信系统标准化组织为C#语言定义了一个Microsoft公司建议的标准。最终C#语言在2001年得以正式发布。
C#程序的执行
C#所开发的程序源代码并不是编译成能够直接在操作系统上执行的二进制本地代码。与Java类似,它被编译成为中间代码,然后通过.NETFramework的虚拟机——被称之为通用语言运行时(CLR)——执行。所有的.Net编程语言都被编译成这种被称为MSIL(Microsoft Intermediate Language )的中间代码。因此虽然最终的程序在表面上仍然与传统意义上的可执行文件都具有“.exe”的后缀名。但是实际上,如果计算机上没有安装.Net Framework,那么这些程序将不能够被执行。
在程序执行时,.Net Framework将中间代码翻译成为二进制机器码,从而使它得到正确的运行。最终的二进制代码被存储在一个缓冲区中。所以一旦程序使用了相同的代码,那么将会调用缓冲区中的版本。这样如果一个.Net程序第二次被运行,那么这种翻译不需要进行第二次,速度明显加快。
版本更新
C# 1.0-纯粹的面向对象,在2003年5月,微软推出了Visual Studio .NET 2003,同时也发布了C#的改进版本——C# 1.1。C# 2.0-泛型编程新概念,微软在2004年的6月份发布了Visual Studio2005的第一个Beta 版,同时向开发者展示了C#语言的2.0版本。
C#3.0-(研发代号“Orcas”),2005年9 月份的PDC大会——C#3.0(研发代号“Orcas”——魔鬼)的技术预览版。
C# 4.0动态编程,C# 4.0 新增 dynamic关键字,提供动态编程(dynamic programming),把既有的静态物件标记为动态物件,类似javascript, Python或Ruby。