1、什麼是.NET?
.NET是微軟公司下的一個開發平臺,.NET核心就是.NET Framwork(.NET框架)是.NET程序開發和運行的環境,在這個平臺下能夠用不一樣的語言進行開發,由於.NET是跨語言的一個平臺。語言能夠是C#,f#,j#,vb.net等等。JAVA和.NET不一樣的一點是java是跨平臺的,不跨語言的。.NET跨平臺僅限於安卓系統和IOS蘋果系統。
1..net框架的組成分爲兩部分:CLR:公共語言運行時(Common Language Runtime),提供內在管理,代碼安全性檢測等功能。
FLC:.NET框架類庫(.NET Framework Class Library),提供大量應用類庫,類庫中有不少線程的資源可以使用(好比:類,方法,屬性),提升開效率。
2.CLR的結構:CLS:公共語言規範,獲取各類語言轉換成統一的語法規範。
CTS:通用類型系統,將各類語言中的數據類型轉換成統一的類型
JIT:實時編譯器(即時編譯器)用於將轉換以後的語言編譯爲二進制語言,交給CPU執行。
3 .NET運行的機制流程
各類語言(c#,F#,j#等對應的源程序)——>通過CLS,CTS第一次編譯——>統一規範語言(中間語言)MSIL(.EXE,.DLL)——>JIT第二次編譯——>二進制語言——>運行在CPU中
java的運行機制:
java——>編譯——>字節碼文件(.CLASS)——>jvm解釋(jvm虛擬機)——>二進制語言——>運行在CPU中
2、什麼是C#?
C#是一個.NET平臺下的一個程序設計語言,僅僅是一個語言。是運行在.net CLR上的,用於建立應用程序的高級語言。 程序設計語言是爲了方便開發人員和計算機溝通的工具。
3、什麼是ASP.NET?
ASP.NET是一個網站開發的技術,是.NET框架中的一個應用模型,用於生成基於Web的應用程序的內容豐富的編程框架。使用ASP.NET開發Web應用程序並維持其運行,比其餘開發語言更加簡單。與Java、PHP和Perl等高級技術相比,ASP.NET具備方便性、靈活性、生產效率高、安全性高及面向對象等優勢,是目前主流的網絡編程技術之一。
ASP.NET、.NET和C#的區別和關係以下:java
1、asp.net是一種用來快速建立動態Web網站的技術,不是語言,它使用C#(或者vb.net)爲開發語言。C#是一種面向對象的編程語言;net只是一個框架,.net中全部的編程語言,好比c# vb.net等編寫的程序必須在.net framework框架下運行。編程
.NET 分紅兩個方面:WinForm和WebForm,ASP.NET就是屬於WebForm,也就是平時說的B/S模式的開發。而WinForm就是屬於C/S模式。c#
Asp.NET能夠用C#或VB.NET來開發。編譯後造成CLR,經過服務器的IIS+.NET FrameWork再次編譯來運行。安全
2、.Net全稱.NET Framework是一個開發和運行環境,該戰略是微軟的一項全新創意,它將使得「互聯網行業進入一個更先進的階段」,.NET不是一種編程語言。簡單說就是一組類庫框架。服務器
.NET有不少種語言組成,好比C#、 VB.NET、J#、Jsript、Managed C++,可是都是運行在.NET FrameWork Run Time底下的。其中,C#是主流。網絡
3、C#是.NET Framework框架支持的一種主力開發語言,可用於開發ASP.NET網站,Windows程序,控制檯程序,甚至於手機軟件(Windows Phone)。多線程