開發者撰文分析.NET從昨日輝煌到如今的逐漸沒落

開發者 Stefan Dobrev 在博客發表了名爲《The Sad State of .NET》的文章,分析了 .NET 爲何從曾經的輝煌變成了如今的黯淡處境。Stefan 在 2004 年以 .NET 開發者的身份開始了其職業生涯,當時的 C# 還屬於新晉編程語言,吸引了不少開發者想體驗一把。

 

Microsoft 也在爲積極推廣 .NET 制定策略,例如贊助本地大學和最大的本地技術活動 - Microsoft Days。因此,Stefan 認爲這是一個屬於 .NET 的年代。

 

最初,大家將 C# 和 .NET 視作 Java 和 JVM 的“邪惡雙胞胎” —— 人們普遍認爲 C# 從 Java 身上覆制了許多優雅的特性過來,並消除了其某些瓶頸 —— 從諸如具有 getter 和 setter 的屬性到影像更大的特性如值類型和屬性。所有這些基礎工作爲將來 C# 要進行的創新奠定了基礎。事實上後來也確實發生了:運行時泛型(在 IL 階段)、LINQ、動態以及 async/await。特別是 async/await 對業界產生的影響,以至於它改變了整個行業,現在每種主流的編程語言幾乎都具有此功能(甚至包括 C++)。

但來到 2010s 中期,C# 的情況發生了變化。主要是 C# 之父 Anders Hejlsberg 將他的工作重心從 C# 轉移到了 TypeScript,導致 C# 語言創新很少甚至沒有。另外,我們所處的整個行業開始向雲過渡,但是 .NET 顯然尚未爲此做好準備。

儘管 .NET 被標記爲多平臺,但 .NET 的目標平臺主要是 Windows(以及通過 Xamarin 實現對移動平臺的支持)。至於雲開發領域中的核心平臺 Linux 對 .NET 來說不是一等公民,甚至也不是二等公民。但云開發幾乎完全是圍繞 Linux 和 Docker 進行的。雖然 Microsoft 後面又推出了 .NET Core,但始終還是慢了一步。

另一方面,Java 也似乎進入了復興的時代。經歷了多年的停滯不前,Oracle 重新復活了該語言並將其拉回到正確的軌道上。Java 的語法在快速進步,其生態系統也爲雲開發領域提供了重要的軟件:大數據(Hadoop)、搜索引擎(Elasticsearch)和消息傳遞/流處理(Kafka)等,這些都是讓 Java 脫穎而出的關鍵因素。

後來居上的 Python 也在雲開發領域佔有一席之地,它將自己定位爲機器學習新領域的主要參與者,並在有學術界提供強大的支持,所以在雲開發領域也倍受歡迎。

.NET/C# 呢?它們現在的定位是什麼,在雲時代的主要應用又將是如何?這些問題就像達摩克利斯的劍一樣懸在頭上。未來會證明一切,但可以肯定的是,.NET/C# 需要像過去一樣進行創新了。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章