理解C#系列 / .NET體系結構
.NET體系結構
索引
- 前提條件
- 編程
- 編程語言
- 編程語言之一:C#
- C#依賴.NET平臺
- .NET平臺下的公共語言運行庫
- .NET平臺下的基礎類庫
- C#能夠開發什麼?
前提條件
- [最低配置]知道什麼是計算機,什麼是硬件,什麼是軟件。
- [最低配置]知道什麼是應用程序,會使用應用程序,例如QQ。
- [最低配置]達到小學畢業知識水平。
- [推薦配置]知道什麼是網絡,會使用網絡服務,例如百度。
- [推薦配置]學會技能:「百度一下,你就知道」。
編程
- 編程就是教計算機作事兒。[附言:人工智能就是教計算機作人。]
- 編程的例子:{QQ:教計算機把人的語言文字經過網絡傳給其餘人的計算機並讓其餘人看見;百度:教計算機從網絡中收集信息並把信息整理一下告訴那些想知道的人;}
- 如何編程?使用編程語言,編寫代碼,這些代碼就像是命令同樣指揮計算機作事。
編程語言
- 編程語言是指揮計算機作事的命令集合。[附言:編程語言即開發程序的語言簡稱開發語言。]
- 目前常見的編程語言有:C,C++,C#,Java,JavaScript,Python,彙編語言。
- 爲何會有這麼多種編程語言?你想一想雖然一樣是開車從A到B,可是開越野,開跑車,開奔馳,開寶馬,開自行車的方法難道同樣嗎。都是教計算機作事,怎麼個教法,那叫一個千姿百態。
- 高級編程語言可以用簡短的命令作更復雜的事。比如你給汽車下一個開啓車燈閃爍的命令,而不用親自控制車燈第一秒打開,第二秒關閉,第三秒再打開。。。。。。
編程語言之一:C#
- C#語言是微軟創造的高級編程語言。
- C#語言適合開發基於Windows操做系統的程序。
- C#語言基於面向對象思想。
C#依賴.NET平臺(.NET Framework)
- C#語言經過控制.NET平臺來間接的控制計算機作事。
- C#是專門爲與.NET平臺一塊兒使用而設計的,C#必須和.NET平臺一塊兒使用。
- C#的功能取決於.NET平臺的功能。
- .NET提供一種環境,在這個環境中,能夠開發在Windows上運行的幾乎全部應用程序。
- 不要被.NET名字迷惑,認爲這是一個只關注Internet的架構,這個名稱中的.NET僅表示微軟相信鏈接網絡的應用程序是將來的趨勢。
.NET平臺下的公共語言運行庫
- .NET平臺的核心是公共語言運行庫(CLR),它管理着代碼的執行。
- .NET平臺在公共語言代碼的指導下運行,公共語言也叫中間語言(IL)。
- C#語言代碼對於.NET平臺而言,是源代碼,也叫託管代碼(managed code),可是C#語言不是公共語言,因此.NET平臺不認識C#語言寫的代碼。
- C#語言代碼須要經過C#編譯器編譯轉換成公共語言代碼。
- .NET的公共語言運行庫把公共語言代碼編譯成操做系統能看得懂的代碼。
- 這事兒就好像是皇帝下了道聖旨,先傳給大臣,大臣看懂了聖旨,交代手下官員去辦事,官員接到命令,再去派遣小兵實施。
- C#代碼轉換爲中間語言代碼,中間語言代碼轉換爲操做系統代碼,這種模式相比於從源代碼直接轉換成操做系統代碼的優勢在於:平臺無關性,提升性能。
- 平臺無關性:C#無需考慮操做系統的多樣性和複雜性,而且由公共語言運行庫負責內存管理,使得開發者專一於業務開發。
- 提升性能:公共語言運行庫在把中間語言代碼編譯成操做系統代碼的時候,會針對不一樣處理器進行相對應的代碼優化,提升操做系統執行時的性能。
.NET平臺下的基礎類庫
- .NET基礎類庫簡稱.NET基類,它爲編程提供了基礎的類型對象及其功能,例如Windows窗體及窗體的屬性,創建窗體的方法等。
- 開發人員可使用.NET基類實現Windows操做系統的絕大多數功能。
- 開發人員可使用名稱空間來對類進行分類,這裏先很少介紹類這個面向對象的概念了,這不是一兩句話就能說清的。
C#能夠開發什麼?
- C#能夠基於WinForm和WPF開發Windows應用程序。
- C#能夠基於ASP.NET開發WEB網站(瀏覽器B/服務器S)。
- C#能夠基於WCF開發WEB服務(客戶端C/服務器S)。
- C#能夠開發Windows服務(在後臺持續運行的程序)。
- C#能夠開發Windows控件(能被其餘應用程序調用的控件,例如支付寶安全控件密碼框)。
歡迎關注本站公眾號,獲取更多信息