.Net 5.0 正式發布已經有一段時間了,但是在園子里好像反響不怎么大。
這真的是讓人非常痛心,我們這些做.Net的人未來究竟在哪里?還記得三年前剛畢業的時候.Net在互聯網中還是能夠占有一席之地的,當時也有很多大神試圖將.Net發揚光大。
然而隨着時間的推移,.Net卻好像越來越不行。
網上大家對於Net的評價,沒有說不好的。知乎上很多人都說.Net框架,C# 是自己寫過的好多種語言里最舒服的。VS也是大家都知道的世界第一編輯器。這就很尷尬,這是“叫好不叫座”。
可能是我過於悲觀。互聯網是一把放大鏡,尤其是現在各種APP的用戶畫像,智能推薦只會把你想看的東西推到你的面前。
有些人說,.Net是神一樣的跨界存在於各行各界,只看互聯網的話還是只能看Java。像游戲行業,C#基本是半邊天了,上位機下位機工控這些也不少。大多的WPF,WinForm也是都還不錯。
希望有些朋友可以理解我,像我這種一直在做Web的人來說,要去“跨界”找工作,很困難的了。況且,我只是個專科生,在市場上可謂毫無競爭力。
我們公司也是近一年成立了Java的團隊和產品,當時因為項目工作的一些原因導致我沒能去爭取。說白了也是自己內心很迷茫,因為轉語言也意味着工作時間的延長和工資的下降,這對我來說是有些不能接受的。
在這個公司的這兩年,考下了軟考的軟件設計師,今年也剛剛考上了北郵的成人業余。工作上好像做了很多東西但實際上又沒什么。內心也依然迷茫,對人生也對職場。
發了一通牢騷,這篇博文還是要講 .Net 5.0 的,我打算在接下來的幾個月的時間里研究研究Net Core的相關知識,系統的輸出一些博文。
之前在.Net2.1/3.1的時候也寫過不少的Demo,在公司項目中也有機會使用Net Core做一些小事情,但規模都算不上大。因為項目,時間的一些限制之類的,導致沒有什么深入的運用和研究。
寫這些博文,一來是多研究研究現在互聯網流行的各種中間件,盡量的都實際使用一下。二來也是學學框架中的思維。最近兩年做項目都快做傻了,上去就是一把梭。對框架,架構的思考學習少了很多。
今天這篇就簡單的講一下我對於.Net 5.0這個版本大變更的理解,順便展望一下.Net的未來。
園子里有很多人翻譯了.Net Blog的那篇預告.Net 5.0的文章, https://devblogs.microsoft.com/dotnet/introducing-net-5/?WT.mc_id=DT-MVP-5003918,
園友們的討論就和博文下的討論一樣激烈。
例如
https://www.cnblogs.com/tianqing/p/13982098.html
https://www.cnblogs.com/willick/p/13957034.html
https://www.cnblogs.com/powertoolsteam/p/dotnet5.html
https://www.cnblogs.com/yxcn/p/13999081.html
https://www.cnblogs.com/SavionZhang/p/13962320.html
等文章。
其實園子里的這些翻譯的都很好了,我就不班門弄斧了。
主要說一下我對於運行時這些東西的理解。當然我也只是一個所知甚少的年輕人,很多東西不求甚解,大家權當隨便聽聽。
以前我們開發一個WinForm的程序,只需要系統安裝.Net Framework框架,我們的程序不需要任何額外的引用既可以實現Windows平台的窗體應用。
而現在Net框架將變成一種統一的系統接口,同樣的程序接口在不同的平台有不同的實現,但對於我們上層寫應用的人來說是無感知的,這有點像C++跨平台類庫針對不同平台編譯的感覺,既系統層面的API統一。
然后對於Windows平台的特殊實現,都單獨的放在了不同的Nuget包里,感覺是將原有的與Windows系統Api攪在一起的框架拆分了出來。
我覺得這一次的改動更像是一次改名大法,微軟經過對於開發趨勢,.Net Core的開發過程的判斷,“升級”了.Net框架整體的戰略,在一些概念上做了提升,試圖撇清Windows的包袱。讓Windows降級為框架的很小一部分。
也就是說,接下來發展的趨勢也像是所有開發者一直期待的那樣,一套代碼 到處運行。
不過理想很豐滿,現實很骨感。平台與平台之間總是有各自的差異,各自的特點。填補各平台差異的工作總要有人去做,而這種工作,怎么做也做不“好”。
在現有的各種開發框架里不乏一些希望做到一套代碼,到處運行的框架,比如著名的QT,Flutter等,但很顯然,這些框架的問題也不言自明,稍微百度一下就會有很多人勸告你不要這么做。
.Net的願景自然不用懷疑,Java也在不斷的走下坡路。互聯網的風潮也正在慢慢的褪去,近幾年互聯網的浪潮讓我這樣年輕的開發者誤以為一步登天正常不過,實際上很多默默無聞的傳統行業才是常態。
而.Net 5.0現在僅僅是一個過渡版本,.Net未來真正面目我們還需要等到2021年的.Net 6.0才可以一睹芳容。
而在這漫長的一年里,世界又會發生什么變化呢,讓我們拭目以待。