1.
C#是微軟公司推出的一種面向.NET平臺的、類型安全的面向對象編程語言。
2.
.NET平臺=新平臺+新標準協議+統一的開發工具
3.
.NET平臺是一種運行於各個操作系統之上的軟件運行平臺,只要安裝了.NET Framework,則從Windows 98到Windows XP都可以運行.NET程序。
4.
.NET平臺支持20多種編程語言,目前由微軟公司提供的.NET編程語言主要有Visual Basic.NET(改進過的Visual Basic)、C++、C#、F#
5.
在.NET的實現上有了三個平臺:.NET Framework,Mono和.NET Core
①.NET Framework
.NET Framework是.NET平臺的關鍵組件,提供了.NET程序運行時支持和功能強大的類庫。
.NET Framework的體系結構由公共語言運行庫(CLR,Common Language Runtime)和.NET Framework類庫構成。
CLR是一個技術規範,無論程序使用什麼語言編寫,只要能編譯成CIL公共中間語言(最早稱微軟中間語言MSIL),就可以在它的支持下運行。
②Mono
Mono跨平臺實現了.NET Framework的編譯器、CLR和基礎類庫。
Mono項目不僅可以運行於Windows系統上,還可以運行於Linux、OS X、Unix等系統上。
③.NET Core
6.
.NET Core定位於跨平臺服務端應用開發,.NET Framework定位於Windows桌面應用開發,Mono定位於移動應用開發。
7.
.NET應用程序在編譯時只會被編譯成CIL中間代碼,在運行期間被即時編譯成本地指令,從而可達到跨平臺的效果。
CIL(中間語言)→CLR(JIT:just in time編譯器編譯)→本地可執行代碼
8.
要想不同語言間有最佳相容性,以便相互調用或繼承,這些面向.NET的語言編譯器就需共同遵守規範CLS。
CLS清晰地描述了支持.NET的編譯器必須支持的最小和完全特徵集,以便生成可由CLR承載的代碼。