.net应用程序体系结构
C#的历史
1、c#1.0:
- 修正一些编程错误
- if语句中,必须有boolean表达式
- 允许使用struct和class关键字创建值类型和引用类型-struct和class的区别是访问修饰符的默认值不同
- 允许使用虚拟方法和非虚拟方法
- Common Language Runtime(CLR)公共语言运行库是.NET使用的运行库。
- .NET编译器会生成中间语言(Internediate Language)。
2、c#2.0和.NET2.0:
- 泛型允许创建类型,而不需要知道其内部类型-因为内部类型在实例化时定义
- 引入新的泛型集合类(System.Collection.Generic)
3、.NET3.0:
- 提供了新的库,大量新的类型和名称空间
- 新框架中的(Windows Presentation Foundation(WPF))用于创建Windows桌面应用程序
4、c#3和.NET3.5:
- 采用了LINQ和lambda表达式,使用相同的语法来过滤和排序对象列表、XML文件和数据库
- 发布了Entity Framework的第一个版本
5、c#4.0和.NET4.0:
- c#主题是动态集成脚本语言,更容易使用COM集成。
- c#语法扩展为使用dynamic关键字、命名参数和可选参数,以及泛型增强的协变和逆变
- .NET4.0发布了全新的工作流引擎Windows Workflow Fundation,有了多核CPU,任务并行库(Task Parallel Library,TPL)使用Task类和Parallel类抽象出线程,更容易创建并行运行代码。
6、c#5:
- 增加两个新关键字async和await,简化了异步方法的编程。
7、c#6和 .NET Core:
- 新的编译器引擎Roslyn。
- 有几个较小的框架,如Sliverlight在.NET的桌面版本和较小版本之间共享代码。