【转】Net Framework,Net Core 和 Net Standard 区别
前幾天我在一個群里看到有關(guān)這方面的討論,最后感覺討論的不是很清晰,有幸的是我們的項(xiàng)目去年就開始遷移NetCore的調(diào)研了,我個人多多少少也是有過這方面的研究。下面我將說一下我自己對著三個的認(rèn)識如果有不足的地方,請大家指出。
大家的討論是這個問題引起的如下:
NetCore
?
?
?
?Net Framework
?
?
?
Net Standard
?
?
?
?最終大家想了解的是這些的區(qū)別是什么。
?
Net Framework 是什么
?
1.Net Framework 是Net的一種實(shí)現(xiàn),在此類庫上我們可以使用C#,VB,F#進(jìn)行程序編寫,主要用于構(gòu)建Windows 下的應(yīng)用程序
2.有兩部分組成部分:
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? i.????? 公共語言運(yùn)行時(CLR)處理應(yīng)用程序
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?ii.????? 基礎(chǔ)類庫(BCL)這是可重用的代碼庫,使用其編寫進(jìn)行應(yīng)用程序編寫
3.在執(zhí)行的過程中.Net編寫的代碼將會編譯成一種稱為中間語音(IL)存儲形式以DLL和EXE后綴名結(jié)尾的文件為主,當(dāng)程序運(yùn)行時CLR會編譯轉(zhuǎn)換為機(jī)器代碼。
4. Net Framework 本身不是跨平臺的也就是話說僅限于運(yùn)行在Windows 平臺,想要跨平臺需要借助第三方。
?
Net Core 是什么
?
1.Net Core 的出現(xiàn)就是為了適應(yīng)軟件開發(fā)的趨勢,因?yàn)楦鞣N不同的設(shè)備還有云計(jì)算的出現(xiàn),其他的操作系統(tǒng)使用量也有所增加,如果Net 不發(fā)生改變也就意味著市場將會越來越小。Net Core的出現(xiàn)用于滿足當(dāng)前以及未來軟件開發(fā)的需求
2.NetCore是一個全新的框架,是.Net的跨平臺的實(shí)現(xiàn),它和Net Framework有很多共同的特性,這也就意味著Net Framework從業(yè)者轉(zhuǎn)到Net Core 將會變的很簡單。
3.Net Core的所有方面都是開源的,無論是類庫,運(yùn)行時,編譯器。NET Core3.0之后支持了C#,VB,F#。
?
Net Standard?是什么,
1.??? Net Standard 是一個規(guī)范,它定義了Net Framewoek和Net Core必須實(shí)現(xiàn)的Api,它的出現(xiàn)為各種平臺上開發(fā)的.Net人員解決了代碼共享問題,但是僅用于開發(fā)類庫,意思就是說如果你的類庫是Net Standard規(guī)范的,那么此類庫既可以是Net Framewoek也可以是Net Core類庫。
2.??? 微軟提供的的圖表詳細(xì)說明了各個不同版本的兼容情況
?????????????????????????????????????????????????????????????? i.????? 如果我們的類庫是NET Standard 2.0版本的如果想在Net Framework和Core兩種實(shí)現(xiàn)中使用,則根據(jù)此圖表,我們必須為.NET Core項(xiàng)目選擇2.0版本和NET Framework 4.6.1的版本
?
?
?
總結(jié):
從上面我們可以看出,.Net 是一種標(biāo)準(zhǔn),而Net Framework 和NetCore 是.Net 的一種實(shí)現(xiàn)。而Net Standard 是一個規(guī)范。? ? ?
? ? ? 理解:
? ? ? ? ? ?.net是一個開發(fā)平臺,一個開發(fā)平臺有編譯器,運(yùn)行時,類庫。其中類庫是API集合。net standard是API規(guī)范,約定有哪些API,net framework與net core是net standard的實(shí)現(xiàn),這里的實(shí)現(xiàn)是類庫的實(shí)現(xiàn)
總結(jié)
以上是生活随笔為你收集整理的【转】Net Framework,Net Core 和 Net Standard 区别的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 直播业月薪9423元!直播购物的利与弊
- 下一篇: 信用卡小额免密免签是什么