.NET、C#和ASP.NET、ASP.NET MVC四者之間的區別

什麼是.NET?html

.NET是微軟公司下的一個開發平臺,.NET核心就是.NET Framwork(.NET框架)是.NET程序開發和運行的環境,在這個平臺下能夠用不一樣的語言進行開發,由於.NET是跨語言的一個平臺。語言能夠是C#,f#,j#,vb.net等等。順便說一下sum公司的JAVA和.NET不一樣的一點是java是跨平臺的,不跨語言的。.NET跨平臺僅限於安卓系統和IOS蘋果系統。java

1..net框架的組成分爲兩部分:CLR:公共語言運行時,-提供內在管理,代碼安全性檢測等功能數據庫

              FLC:.NET框架類庫,類庫中有不少線程的資源可以使用(好比:類,方法,屬性),提供大量應用類庫,提升開發效率編程

2.CLR的結構:CLS:公共語言規範,獲取各類語言轉換成統一的語法規範。c#

        CTS:公共類型系統,將各類語言中的數據類型轉換成統一的類型設計模式

       JIT:實時編譯器(即時編譯器)用於將轉換以後的語言編譯爲二進制語言,交給CPU執行。安全

3 .NET運行的機制流程網絡

各類語言(c#,F#,j#等對應的源程序)——-—通過CLS,CTS第一次編譯———————>統一規範語言(中間語言)MSIL(.EXE,.DLL)————JIT第二次編譯————>二進制語言——————>運行在CPU中多線程

java的運行機制架構

.java————編譯———>字節碼文件(.CLASS)———jvm解釋(jvm虛擬機)———>二進制語言——————>運行在CPU中

 

4.C#是一個.NET平臺下的一個程序設計語言,只是一個語言,僅此而已。 程序設計語言是爲了方便開發人員和計算機溝通的工具。 從上面.net的運行機制流程就能夠看出C#和.NET之間的關係,畫面閱讀者本身進行補腦想象吧!                                                                                                                                                                 

5.ASP.NET是一個網站開發的技術,是.NET框架中的一個應用模型。(歷史挺長遠的)使用ASP.NET開發Web應用程序並維持其運行,比其餘開發語言更加簡單。與Java、PHP和Perl等高級技術相比,ASP.NET具備方便性、靈活性、生產效率高、安全性高及面向對象等優勢,是目前主流的網絡編程技術之一。 

 

6.關於ASP.NET MVC,剛開始接觸這個技術的時候我常常不理解他們的名字,我相信許多學ASP.NET開發人員開始接觸MVC應該也和我同樣產生不少爲何,也會誤認爲認爲MVC與ASP.NET徹底沒有關係,是一個全新的Web開發,深刻學習後我才知道事實上ASP.NET是建立WEB應用的框架而MVC是可以用更好的方法來組織並管理代碼的一種更高級架構體系,因此能夠稱之爲ASP.NET MVC。咱們可將原來的ASP.NET稱爲 ASP.NET Webforms,新的MVC 稱爲ASP.NET MVC。

MVC是軟件架構的一種模式,能夠說就至關於咱們常說的設計模式吧。其中主要包括三個模塊,顧名思義。就如MVC名字所顯示的那樣:模型(Model),視圖(View),控制器(Controller)。mvc中的模型(Model)和視圖(View )是徹底區別於三層架構中的模型(Model)和視圖(View)的。    

MVC中模型(Model)的特色:

①有對數據直接訪問的權利,如:對數據庫的訪問;

②模型(Model)「不依賴」視圖(View)和控制器(Controller),即模型(Model)不關心它會被如何顯示或者如何被操做;

③模型(Model)中數據的變化通常會經過一種刷新機制被「公佈」;

④爲了實現③中的「機制」用於監視此模型的視圖必須事先在此模型上註冊。從而,視圖能夠了解在數據模型上發生的改變。

視圖(View),這裏的視圖基本跟三層中的視圖同樣,都是爲了顯示數據,沒有程序上的邏輯。爲了實現視圖上數據的刷新,視圖(View)須要訪問它監視的模型(Model),因此應該事先在被它監視的數據那裏進行註冊。

控制器(Controller),這個概念是在三層中不存在的概念。它主要起到不一樣層面的組織做用,用於控制應用程序的流程。主要處理事件並做出相應操做。

 

原文出自http://www.javashuo.com/article/p-mglzvdvn-bs.html

相關文章
相關標籤/搜索