是什麼讓C#成爲最值得學習的編程語言

隨着 Web、iOS、Android、智能設備的流行,新的編程語言紛紛涌現並表現不俗,如 Ruby,Python,Scala,Go,Node.js,Swift 等。反觀已經發展了近20年的 C# 語言(或者這裏應該更準確的說是 .Net Framework),因爲天生的平臺侷限,導致很多的 C# 程序員爲了生計和前途紛紛轉行投入的新語言的懷抱。

 

就在此時,微軟的 .Net Core 橫空出世

  1. 跨平臺:可以在 Windows、MacOS 和 Linux 上運行。

  2. 兼容性: .NET Core 通過 .NET 標準庫與 .NET Framework、Xamarin 和 Mono 兼容。

  3. 開源:運行時、庫、編譯器、語言和工具都是 GitHub 的開放源代碼。

  4. 統一:通過標準庫來保證代碼複用。

  5. 強大的生態環境

根據以上 .Net Core 所具備的優勢,無疑是給以 C#(包括VB.NET)作爲首選編程語言的工程師的一劑強心針。

以下將從6個方面闡述爲什麼 C# 成爲最值得學習的編程語言,甚至可以說 C# 是給初學編程最值得推薦的語言。

 

學習門檻低

如果你曾經做過 C、Java 或者是 JavaScript 的編程,那麼你會感覺對 C# 的語法感到非常熟悉,C# 的語法非常的容易閱讀和理解。根據最新發布的 TIOBE 統計,有數以百萬計的開發人員可以輕鬆地從 Java 或 C語言編程切換到 C# 語言編程。

即使你完全沒有任何的編程經驗,大量的書籍和在線文檔也不是新興語言可以比擬的,另外還有很多在線資源可以幫助你學習 C#,如:

 

具備現代語言的所有特點

.NET Core 有一些頂級功能:

  • 強類型。

  • 強大的基類庫。

  • 異步編程 - 易於使用的異步/等待模式。

  • 垃圾收集,自動內存管理。

  • LINQ - 語言集成查詢。

  • 泛型 - List<T>,  Dictionary<T, T>。

  • 包管理。

  • 跨多個平臺和框架共享二進制文件的能力。

  • 使用的框架來創建 MVC Web 應用程序和 RESTful API。

 

多功能性:Web,移動,服務器,桌面應用

關於 C# 和 .NET 的最出衆的一點就是它的多功能性。Xamarin 可以編寫桌面應用程序,Web 應用程序,後臺服務,甚至移動應用程序。除了 C#,我真正需要知道的只是少量的 JavaScript 來將一些 UI 代碼集中在一起。ASP.NET Core 模板甚至使用 Bootstrap 佈局和 npm 來存入客戶端庫。

多功能性是一個很大的優勢,這樣你所學的語言就可以用於各種各樣的場景中,你的技能適用性就更強。如果你想組合所做的東西,就可以從開發 web 應用程序跳轉到開發移動應用程序。對於只能在服務器端工作的大多數其它編程語言,這是一個很大的區別。

同時,也請不要忘記 Microsoft Azure 的支持。Microsoft Azure 讓啓動和運行變得如此簡單,只需點擊幾下即可將應用部署到雲端。Microsoft Azure 還支持 Docker 容器,可以輕鬆地將應用程序部署到 AWS 或其它託管提供商。

 

最好的開發工具(沒有之一)

Visual Studio 一直被視爲適用於開發人員的最佳 IDE,微軟已經發布了最新的 VS 2017 用來支持 .Net Core,在一個環境中支持代碼編寫、調試、分析、git 集成、單元測試等功能。Visual Studio 現在提供了功能齊全的免費社區版本。 

當然,也可以使用自己喜歡的文本編輯器,作爲編寫 .NET Core 代碼的基本文本文件。你也可以在任何操作系統上將 Visual Studio 編碼工具當做一個良好的基本代碼編輯器。即使對於那些永遠不會放棄 vim 或 emacs 的人來說,依舊可以做 C# 開發。你還可以爲 Visual Studio 安裝一個插件,來添加所有喜歡的快捷鍵。

整個 .NET 生態系統也充滿了令人驚奇的開發者工具。例如,我無法想象沒有 Jetbrains 中的 Resharper 的生活。.NET 生態系統存在數十種極好的的工具,既包括開源的,也包含商業產品的。

 

標準化類庫

.NET 帶有了一套非常好的基類庫。與 Node.js 不同,.NET 內置了簡單的字符串函數,如 LeftPad()。各種各樣的基礎類減少了對外部包的需求。Microsoft 也樂於像 JSON.NET 這樣的社區項目一樣,成爲大多數項目中廣泛使用的關鍵庫。

Microsoft 爲 .NET 提供了一套非常好的模式和實踐。例如,有內置的標準數據訪問(實體框架)和模型 - 視圖 - 控制器(MVC)框架。大多數開發人員都在使用這些標準框架,這使開發人員可以輕鬆地在團隊之間遷移,並快速瞭解項目的工作原理。正式由於這一點,你的知識和技能才變得更加具有適用性。

 

.NET Core 是開源的

.NET 發生的最大變化之一,就是其開源了代碼。幾乎所有的代碼現在都在GitHub上,供任何人查看,分享和貢獻。這是一個巨大的變化,大多數人從未想過會發生。

作爲開發人員,你需要不時的瞭解你的代碼正在做什麼。例如,過去需要通過調用數據庫連接的 Dispose( ) 來確認是否關閉了連接。現在你可以訪問源代碼,來快速驗證這些類型的問題。

即使你沒能對源代碼做出貢獻,你也可以從巨大的社區中受益。問題和改進可以快速討論,編碼和發佈,以便你定期使用。那些需要花費數年等待發布重大改進或小錯誤修復的時代已經過去了。

 

總結:微軟 .Net Core 的推出,無疑給具備龐大基數的 .Net 平臺開發者們,提供了絕佳的機會,可以預見,在未來的幾年內,使用 C# 語言基於 .Net Core 平臺開發勢必成爲流行。

 

原文鏈接:https://dzone.com/articles/why-net-core-made-c-your-next-programming-language


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