一、.net框架由3部分組成
1.編程工具
? ? a)集成開發環境
? ? b).net兼容編譯器
net快速開發框架,? ? c)調試器
2.BCL(Base Class Library,基類庫)
3.執行環境稱為CLR(公共語言運行庫),CLR在運行時管理程序的執行。
? ?a)內存管理和垃圾回收。
? ?b)代碼安全驗證。
net 后端框架。? ?c)代碼執行、線程管理及異常處理。
?
嚴格的說,.net框架是由CLR和FCL(框架類庫)兩部分組成,不包括工具。
?二、編譯成CIL
net框架有哪幾種,.net語言的編譯器接受源代碼文件,并生成名為程序集的輸出文件。
? ? 1. 程序集要么是可執行,要么是dll。
? ? 2.程序集里的代碼并不是本機代碼,而是一種名稱為CIL(公共中間語言)的中間語言。
? ? 3.程序集包含的信息:
? ? ? ? a)程序的CIL
c#框架、? ? ? ? b)程序中使用的類型的元數據
? ? ? ? c)對其他程序集引用的元數據
三、編譯成本機代碼并執行
程序的CIL它直到被調用運行時才會被編譯成本機代碼,在運行時,CLR執行下面的步驟:
編寫MVC框架。? ? ?a)檢查程序集的安全特征
? ? ?b)在內存中分配空間
? ? ?c)把程序集中可執行代碼發送給實時編譯器(Just-In-Time,JIT),把其中的一部分編譯成本機代碼
程序集中可執行代碼只在需要的時候由JIT編譯器編譯,然后它就被緩存起來以備在后來的程序中執行。
mybatis框架,?一旦CIL被編譯成本機代碼,CLR就在它運行時管理它,執行像釋放無主內存,檢查數組邊界、檢查參數類型和管理異常之類的任務。
兩個重要的術語由此而生。
? ? ?a)托管代碼 ? 為.net框架編寫的代碼稱為托管代碼,需要CLR。
? ? ?b)非托管代碼 ?不在CLR控制之下運行的代碼,比如 Win32 C/C++ DLL
java主流框架,四、.net框架的核心組件是CLR(公共語言運行庫),負責管理程序的執行。
五、CLI(公共語言基礎結構)把所有.net框架的組件連結成一個內聚的、一致的系統。它展示了系統的概念和架構,并詳細的說明所有軟件都必須堅持的規則和約定。
編程框架是什么,?