C# 語言介紹
C#(讀作“See Sharp”)是一種新式編程語言,不僅面向物件,還型別安全, 開發人員利用 C# 能夠生成在 .NET 中運行的多種安全可靠的應用程式, C# 源于 C 語言系列,C、C++、Java 和 JavaScript 程式員很快就可以上手使用,
C# 是面向物件的、面向組件的編程語言, C# 提供了語言構造來直接支持這些概念,讓 C# 成為一種非常自然的語言,可用于創建和使用軟體組件, 自誕生之日起,C# 就添加了支持新作業負載和新興軟體設計實踐的功能, C# 本質上是面向物件的語言,_* 你需要定義型別及其行為,
.NET 體系結構(與 C#)
C# 程式在 .NET 上運行,而 .NET 是名為公共語言運行時 (CLR) 的虛執行系統和一組類別庫, CLR 是 Microsoft 對公共語言基礎結構 (CLI) 國際標準的實作, CLI 是創建執行和開發環境的基礎,語言和庫可以在其中無縫地協同作業,
用 C# 撰寫的源代碼被編譯成符合 CLI 規范的中間語言 (IL), IL 代碼和資源(如位圖和字串)存盤在擴展名通常為 .dll 的程式集中, 程式集包含一個介紹程式集的型別、版本和區域性的清單(metadata),
執行 C# 程式時,程式集將加載到 CLR, CLR 會直接執行實時 (JIT) 編譯,將 IL 代碼轉換成本機指令, CLR 可提供其他與自動垃圾回收、例外處理和資源管理相關的服務, CLR 執行的代碼有時稱為“托管代碼”(而不是“非托管代碼”),被編譯成面向特定平臺的本機語言,
語言互操作性是 .NET 的一項重要功能, C# 編譯器生成的 IL 代碼符合公共型別規范 (CTS), 通過 C# 生成的 IL 代碼可以與通過 .NET 版本的 F#、Visual Basic、C++ 或其他 20 多種與 CTS 兼容的任何語言所生成的代碼進行互動, 一個程式集可能包含多個用不同 .NET 語言撰寫的模塊,且型別可以相互參考,就像是用同一種語言撰寫的一樣,
為什么需要二次編譯
為了一次編譯,不同平臺使用,加一層中間層,更為靈活,
首先這要從系統層面出發,Windows 系統分為 32 與 64 位,而系統又分 Windows、Macos、Linux、Unix,未來也可能出現更多的系統,
這么多的系統如何和做到一次編譯,在多平臺運行呢?這就是二次編譯,C# 源代碼被編譯成中間語言 (IL),存盤在擴展名通常為 .dll 的程式集中, 程式集包含一個介紹程式集的型別、版本和區域性的清單(metadata),
這樣在不同的品臺,同一份編譯的中間語言,通過 CLR 轉換為不同平臺可執行機器指令,在不同平臺執行,所以說,為了一次編譯,不同平臺使用,加一層中間層,更為靈活,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/305482.html
標籤:其他
