从C++学C# [1] 初识C#

C#看起来是一个类似JAVA的语言,Main入口也在类中,它要求所有的代码都在类中。

它的编译架构也类同——先把源代码编译为 中间代码(IL码,Intermediate Language),随后由目标平台的 CLR(Common Language Runtime)JIT(Just In Time)编译器模块编译成本地代码运行,借此来提供跨平台特性。

同时,与Java类似的,CLR也有垃圾回收机制(Garbage Collector)


C#还可以通过NuGet包提供代码重用。
现在为止,其有两种框架
• .NET Framework
○ CLR
• .NET Core
○ CoreCLR
○ .NET Native
其中,.NET Core是因为传统.NET Framework在桌面版本及其他mini框架(Silverlight)之间的代码重用问题,.NET Core拥有更灵活的部署、开源、模块化的NuGet包,所以Core不仅可以用在不同的Windows设备,也能用在Linux和OS X上


.NET程序的库和可执行文件称为模块(程序集)(assembly)。它是包含编译好的面向框架的代码逻辑单元。
通常这种程序集都是自描述的,也就是它们的子集可以分别在不同文件之中,那么相应的就会有一个包含入口的入口文件,其文件也描述了程序集中的其他文件。

猜你喜欢

转载自blog.csdn.net/GarfieldGCat/article/details/80931609