微軟Net架構現在被不少人吐槽老掉牙?
微軟的.NET平臺其實是很優秀的技術平臺(畢竟微軟是行業大佬,背景強大),但它一直以來就是受爭議的比較多,爭議點無非集中在這三個方面:
封閉不開源;
跨平臺支持較差;
生態圈較差。
下面我們站在中立角度來具體來分析下.NET。
首先來說,.NET不是一門編程語言,而是一整套技術解決方案(其實是.NET前期的不規范導致的)。如果從語言層面來說,不管是VB、J#、F#、還是C#,語法上并沒有什么特點。
都說C#語法優美,問題來了,語法優美能產生效益嗎?不行,所以語法優美并沒有什么實質意義。
從語言特性上說,C#也并沒有什么特性。它的語言特性其它語言都有,所以我們一直講語言本質上都差不多,主要看如何應用。
除此之外,C#還有什么呢?基本上沒有了。對了,還有所謂號稱“全宇宙最好用的IDE”,問題又來了,IDE好用能帶來實際的效益嗎?
而我們反觀其它語言,不會像微軟那樣“刻板保守”,其它語言的特點是:開放、創新。不管是PHP還是Java、Python都支持跨平臺,沒有把自己限制死,所以發展得比.NET要好得多。
再從生態圈上說,至少在互聯網企業,沒有多少家的后端是用.NET來實現的(以前有,基本上也都轉Java了)。不管是傳統的應用,還是現如今熱門的深度學習、人工智能、大數據,基本上也沒有.NET什么事。
另外,判斷一種開發語言是否具備優勢,要看市場上的需求量怎樣。在各大招聘網站上搜.NET和Java相關工作,無一例外的就是Java的崗位需求至少是.NET的2倍,薪資上.NET也不具備優勢。再者從每次的TIOBE編程語言排行榜來看,Java都是第一(雖然最近一次被Python擠下來了),但.NET始終排在后位。
其實,我們真的很有必要想一下,為什么現在.NET開源了,為什么微軟在推動.NET跨平臺了?因為.NET已經缺乏用戶基礎和技術創新了,也只能拿開源和跨平臺來吸引人氣!
綜上,我覺得.NET架構模式雖然在短時間內淘汰不了,但較于其它語言來說,并不具備競爭力,畢竟現在可選擇性太多。所有的所有,都是交給最終用戶來決定。