您好,登錄后才能下訂單哦!
這篇文章主要介紹“如何理解C#的.NET Framework”,在日常操作中,相信很多人在如何理解C#的.NET Framework問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”如何理解C#的.NET Framework”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!
基于C#的.NET Framework是什么組成呢?核心的是什么?基于C#的.NET Framework的命名空間是什么呢?基于C#的.NET Framework的開發技術又有哪些呢?那么現在就開始我們的講述:
一、理解.NET Framework組成:底層操作系統,如WinXP等等,應用程序服務,COM+、IIS、MSMQ等等服務,CLR,最為重要的環境,提供了安全和強壯的執行環境,.NET Framework類庫,擴展了CLR的功能,一致的編程接口,ADO.NET,下一代的數據訪問組件,ASP.NET的支持,一個基于CLR中的動態編程模型WebService,對此提供了支持
用戶界面,展現程序。
CLR,最為重要,***,它是一個類加載器,管理元數據和加載類等等;第二,它是MSIL(中間語言)的代碼編譯器,把MSIL轉換為本地代碼;第三,所以說它也是一個代碼管理器,可以管理和執行代碼;第四,它更可以自動進行垃圾回收,對所有的對象提供自動生命周期管理,支持多處理器;第五,它提供了安全引擎,惡意代碼的運行基本不可能;第六,它提供了調試器,使開發者能夠調試應用程序和根據代碼執行;第七,它提供了類型檢查器,不允許不安全的類型轉換和未初始化變量MSIL可被校驗以保證類型安全;第八,它提供了異常管理器,對異常的處理更加方便也更易;第九,它支持多線程編程,可以***限度電腦性能;第十,它擁有COM封送拆收器,可以在COM組件中封送。
.NET類庫,跨所有編程語言從C++、VB到C#,面向對象和一致的編程接口,內建的公共類型系統,是可以擴展的,更加是安全的。
ADO--數據與Xml,兩個命名空間,System.Dataetc和System.Xmletc
XMLWEBService,用XMl來發送數據和接收信息
ASP.NET在System.Web.UI下面
命名空間,是.NET避免類名沖突的一種方式,.NETFramework擁有大量的類,所有要方便組織和管理,就要進行分層,就使用命名空間體系結構,其中的System是根命名空間,包含異常處理、垃圾回收、數據處理、文本處理等等類庫。
二、使用命名空間,可以完全路徑也可以使用Using語句導入貧下命名空間,也可以為自己寫的類命名自定義的命名空間,總之,所有的類都要在某個命名空間下,沒有明確提供命名空間的自動添加到沒有名稱的全局命名空間。
csc的參數,/t指定編譯目標,/r引用程序集,/doc注釋到XML文件
托管代碼的執行過程
源代碼經過編譯得到MSIL和元數據,類加載器載入,JIT編譯到本地托管代碼,執行時進行安全檢查。
元數據,包含應用程序的信息,如版本、區域、公鑰信息,類型成員(方法、字段、屬性等等),安全許可證信息,該程序集依賴的其它程序集,共聚物包含了所有.NET Framework文件和資源文件,如txt、xml、聲音圖像文件等等。
作用也是很明顯的,可以加載和定位類,也增強了代碼安全性,可以解析方法調用,提供反射支持。(“反射”是很有用的。)
MSIL,可以由支持中間語言的編譯器產生,在執行之前,要由JIT編譯器轉將MSIL換到本地代碼。
與MSIL一起工作的JIT工具有ilasm.exe(MSILAsemblly,從MSIL中自成BinaryCode),ildasm.exe(MSILdeasemblly,檢查元數據和托管BinaryCode),sn.exe(Strongname)
JIT,對特定的CPU有優化,對MSIL按需生成代碼,調用已編譯的本地代碼。
垃圾回收,自動進行對象內存管理,不再手動進行內存的跟蹤和管理,已經由垃圾回收引擎適當地自動進行。
三、關鍵開發技術:winForm,Web窗體,XMLWebService三種,的確挺關鍵的
創建簡單的組件:使用namespace和聲明類,實現結構化異常處理,使用屬性,編譯組件(代碼重用) csc/target:library/out:*.dll*.cs
注:.Net的異常處理很有特點:
1、處理異常時不考慮生成異常的語言和處理異常的語言
2、處理異常時不要求特定的語法,可以定義自己的語法
3、允許跨進程甚至跨計算機邊界引發異常
4、所有的異常都是從Exception類繼續來的。
到此,關于“如何理解C#的.NET Framework”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。