本文來自于:葡萄城控件技術(shù)團隊博客
隨著 Web、iOS、Android、智能設(shè)備的流行,新的編程語言紛紛涌現(xiàn)并表現(xiàn)不俗,如 Ruby,Python,Scala,Go,Node.js,Swift 等。反觀已經(jīng)發(fā)展了近20年的 C# 語言(或者這里應(yīng)該更準確的說是 .Net Framework),因為天生的平臺局限,導(dǎo)致很多的 C# 程序員為了生計和前途紛紛轉(zhuǎn)行投入到新語言的懷抱中。
就在此時,微軟的 .Net Core 橫空出世
1. 跨平臺:可以在 Windows、MacOS 和 Linux 上運行。
2. 兼容性: .NET Core 通過 .NET 標準庫與 .NET Framework、Xamarin 和 Mono 兼容。
3. 開源:運行時、庫、編譯器、語言和工具都是 GitHub 的開放源代碼。
4. 統(tǒng)一:通過標準庫來保證代碼復(fù)用。
5. 強大的生態(tài)環(huán)境
根據(jù)以上 .Net Core 所具備的優(yōu)勢,無疑是給以 C#(包括VB.NET)作為首選編程語言的工程師的一劑強心針。
以下將從6個方面闡述為什么 C# 成為最值得學(xué)習(xí)的編程語言,甚至可以說 C# 是給初學(xué)編程最值得推薦的語言。
學(xué)習(xí)門檻低
如果你曾經(jīng)做過 C、Java 或者是 JavaScript 編程,那么你會對 C# 的語法感到非常熟悉,C# 的語法非常的容易閱讀和理解。根據(jù)最新發(fā)布的 TIOBE 統(tǒng)計,有數(shù)以百萬計的開發(fā)人員可以輕松地從 Java 或 C語言編程切換到 C# 語言編程。
即使你沒有任何的編程經(jīng)驗,C#大量的書籍和在線文檔也不是新興語言可以比擬的,另外還有很多在線資源可以幫助你學(xué)習(xí) C#,如:
? Microsoft虛擬學(xué)院- 免費視頻和評估。
? Microsoft入門C#- 免費交互式教程。
具備現(xiàn)代語言的所有特點
.NET Core 有一些頂級功能:
? 強類型。
? 強大的基類庫。
? 異步編程 - 易于使用的異步/等待模式。
? 垃圾收集,自動內(nèi)存管理。
? LINQ - 語言集成查詢。
? 泛型 - List,? Dictionary。
? 包管理。
? 跨多個平臺和框架共享二進制文件的能力。
? 使用框架來創(chuàng)建 MVC Web 應(yīng)用程序和 RESTful API。
多功能性:Web、移動、服務(wù)器、桌面應(yīng)用
關(guān)于 C# 和 .NET 最出眾的一點就是它的多功能性。Xamarin 可以編寫桌面應(yīng)用程序,Web 應(yīng)用程序,后臺服務(wù),甚至移動應(yīng)用程序。除了 C#,真正需要知道的只是少量的 JavaScript 來將一些 UI 代碼集中在一起。ASP.NET Core 模板甚至使用 Bootstrap 布局和 npm 來存入客戶端庫。
多功能性是一個很大的優(yōu)勢,這樣你所學(xué)的語言就可以用于各種各樣的場景中,你的技能適用性就更強。如果你想組合所做的東西,就可以從開發(fā) web 應(yīng)用程序跳轉(zhuǎn)到開發(fā)移動應(yīng)用程序。對于只能在服務(wù)器端工作的大多數(shù)其它編程語言,這是一個很大的區(qū)別。
同時,也請不要忘記 Microsoft Azure 的支持。Microsoft Azure 讓啟動和運行變得如此簡單,只需點擊幾下即可將應(yīng)用部署到云端。Microsoft Azure 還支持 Docker 容器,可以輕松地將應(yīng)用程序部署到 AWS 或其它托管提供商。
最好的開發(fā)工具(沒有之一)
Visual Studio 一直被視為適用于開發(fā)人員的最佳 IDE,微軟已經(jīng)發(fā)布了最新的 VS 2017 用來支持 .Net Core,在一個環(huán)境中支持代碼編寫、調(diào)試、分析、git 集成、單元??測試等功能。Visual Studio 現(xiàn)在提供了功能齊全的免費社區(qū)版本。
當(dāng)然,也可以使用自己喜歡的文本編輯器,作為編寫 .NET Core 代碼的基本文本文件。你也可以在任何操作系統(tǒng)上將 Visual Studio 編碼工具當(dāng)做一個良好的基本代碼編輯器。即使對于那些永遠不會放棄 vim 或 emacs 的人來說,依舊可以做 C# 開發(fā)。你還可以為 Visual Studio 安裝一個插件,來添加所有喜歡的快捷鍵。
整個 .NET 生態(tài)系統(tǒng)也充滿了令人驚奇的開發(fā)者工具。例如,我無法想象沒有 Jetbrains 中的 Resharper 的生活。.NET 生態(tài)系統(tǒng)存在數(shù)十種極好的的工具,既包括開源的,也包含商業(yè)產(chǎn)品的。
標準化類庫
.NET 帶有了一套非常好的基類庫。與 Node.js 不同,.NET 內(nèi)置了簡單的字符串函數(shù),如 LeftPad()。各種各樣的基類庫減少了對外部包的需求。Microsoft 也樂于像 JSON.NET 這樣的社區(qū)項目一樣,成為大多數(shù)項目中廣泛使用的關(guān)鍵庫。
Microsoft 為 .NET 提供了一套非常好的模式和實踐。例如,有內(nèi)置的標準數(shù)據(jù)訪問(實體框架)和模型 - 視圖 - 控制器(MVC)框架。大多數(shù)開發(fā)人員都在使用這些標準框架,這使開發(fā)人員可以輕松地在團隊之間遷移,并快速了解項目的工作原理。正是由于這一點,你的知識和技能才變得更加具有適用性。
.NET Core 是開源的
.NET 發(fā)生的最大變化之一,就是其開源了代碼。幾乎所有的代碼現(xiàn)在都在GitHub上,供任何人查看,分享和貢獻。這是一個巨大的變化,大多數(shù)人從未想過會發(fā)生。
作為開發(fā)人員,你需要不時的了解你的代碼正在做什么。例如,過去需要通過調(diào)用數(shù)據(jù)庫連接的 Dispose( ) 來確認是否關(guān)閉了連接。現(xiàn)在你可以訪問源代碼,來快速驗證這些類型的問題。
即使你沒能對源代碼做出貢獻,你也可以從巨大的社區(qū)中受益。問題和改進可以快速討論,編碼和發(fā)布,以便你定期使用。那些需要花費數(shù)年等待發(fā)布重大改進或小錯誤修復(fù)的時代已經(jīng)過去了。
總結(jié)
微軟 .Net Core 的推出,無疑給具備龐大基數(shù)的 .Net 平臺開發(fā)者們,提供了絕佳的機會,可以預(yù)見,在未來的幾年內(nèi),使用 C# 語言基于 .Net Core 平臺開發(fā)勢必成為流行
原文鏈接:https://dzone.com/articles/why-net-core-made-c-your-next-programming-language
轉(zhuǎn)載請注明出自:葡萄城控件
關(guān)于葡萄城
葡萄城成立于1980年,是全球最大的控件提供商,世界領(lǐng)先的企業(yè)應(yīng)用定制工具、企業(yè)報表和商業(yè)智能解決方案提供商,為超過75%的全球財富500強企業(yè)提供服務(wù)。葡萄城于1988年在中國設(shè)立研發(fā)中心,在全球化產(chǎn)品的研發(fā)過程中,不斷適應(yīng)中國市場的本地需求,并為軟件企業(yè)和各行業(yè)的信息化提供優(yōu)秀的軟件工具和咨詢服務(wù)。