.NET Core 给使用.NET的公司所带来的机遇
今晚在余晟的微信公眾號看到了一篇文章《從.NET/C#開發(fā)的“后繼無人”說起》。 這篇文章以從.NET/C#開發(fā)的“后繼無人” 引出了推廣極客時間的課程 劉超的《趣談Linux操作系統(tǒng)》,通篇看下來這明顯是劉超的《趣談Linux操作系統(tǒng)》的軟文。
軟文地址:https://mp.weixin.qq.com/s/rO2d0xZ58Z2syqT7AaNT3w
推廣無可厚非,但是這種以標題黨形式貶低.NET,讓幾十萬的.NETer 蒙羞是一種無恥的操作,何況余晟是一位小有名氣的博主,這篇文章轉(zhuǎn)發(fā)在朋友圈,光是這個標題就夠有殺傷力的了。這也是我看到這篇文章特別想寫一篇短文來表達一下心中的999個傷害。
我也有一個公眾號“dotnet跨平臺”,其中的主題就是微軟在2014年開始開源的.NET Core, 即將在今年發(fā)布3.0版本,具體詳見昨天的文章《.NET Core 3.0 中的新變化》, .NET Core是開源跨平臺的.NET ,而且他的兄弟Mono也是開源的,至今已經(jīng)有17年歷史,大名鼎鼎的Unity3d?就是基于Mono。.NET Core/Mono早就可以跨平臺運行于Linux/Mac系統(tǒng)之下,而且微軟把Linux 作為一等公民對待。目前我就是使用Windows 10作為開發(fā)工具,使用.NET Core開發(fā)的系統(tǒng)通過容器化運行于k8s 之下。微軟的Visual Studio 和Visual Studio Code 為容器化應(yīng)用程序開發(fā)提供了一流的體驗。
余晟完全可以這么寫: 如果要把技術(shù)棧從.NET/c#切換為.NET Core/C#, 可以完美運行于Linux 之下,借助于kubernetes 容器調(diào)度,最主要有什么困難。
接下來想針對《從.NET/C#開發(fā)的“后繼無人”說起》里面的一些邏輯錯誤給大家分享下:
“市場上招不到多少.NET/C#的開發(fā)新人
”這是一個毫無根據(jù)的主觀臆斷。據(jù)我所知,還是有不少學校開設(shè)了C#編程的,至少我就知道有好幾個學校,社會上的培訓機構(gòu)也有不少培訓以Unity3d編程為背景的c#培訓,培訓機構(gòu)確實很少批量生產(chǎn)快餐式的.NET程序員了,這些培訓機構(gòu)都一窩蜂的涌向Java培訓,導(dǎo)致的結(jié)果是現(xiàn)在Java快餐式程序員滿大街都是,這些快餐式程序員也不是很多公司所期望的。倒是有不少.NET 程序員質(zhì)量非常高,他們通過參與開源項目進行著高質(zhì)量的自我成長,身邊有不少95后程序員新人,他們的水平都是很不錯的。
“微軟自己的Azure 云服務(wù),也不強調(diào)Windows特性了
”微軟從2014年新的CEO 薩提亞?納德拉上臺以來,在他第一本書《刷新:重新發(fā)現(xiàn)商業(yè)與未來》全景回顧了薩提亞的變革路徑,如在硬件Surface電腦上的投入,在混合現(xiàn)實、人工智能和量子計算三大領(lǐng)域的戰(zhàn)略布局等;系統(tǒng)總結(jié)了他的核心管理思想,即任何組織和個人,達到某個臨界點時,都需要自我刷新。 微軟自我刷新,今天微軟的市值已經(jīng)突破9000億美元,繼續(xù)向一萬億進軍,這里最重要的一個平臺就是Azure 云服務(wù),微軟Azure 擁抱開源,Azure 可以運行主流的開源解決方案,我們已經(jīng)從跨平臺進入跨云時代,我們開發(fā)的應(yīng)用系統(tǒng)都是針對跨多個云為要求的,Windows 服務(wù)器和Linux服務(wù)器一樣已經(jīng)下沉為云服務(wù)的底層一個組件,云平臺已經(jīng)上升為新時代的操作系統(tǒng)。
如果把技術(shù)棧從.NET/C#切換到Java
”.NET/C# 目前已經(jīng)在跨平臺這條道理上走過了10多年,.NET Core更是把.NET 的跨平臺推向一個新的高度,.NET Core借鑒了.NET Framework的最佳實踐,并將軟件工程的最新進展結(jié)合在一起。這些是.NET Core的一些顯著特征。 同一個庫可以在后臺服務(wù)“本地”或云中運行,也可以在手機,平板電腦或桌面上運行的客戶端應(yīng)用程序中運行。與其為iOS,Android和Windows構(gòu)建單獨的應(yīng)用程序,您可以構(gòu)建一個適用于所有平臺的應(yīng)用程序。.NET Core是小型和完美的容器,可以輕松擴展并縮短開發(fā)時間。 .NET Core和.NET Standard Library建立了一個通用平臺。過去,當新版本的操作系統(tǒng)或新設(shè)備出現(xiàn)時,開發(fā)人員有責任重新構(gòu)建新平臺的應(yīng)用程序或庫,并分發(fā)更新。使用.NET Core,不需要重建和重新分配。只要新的平臺支持你所有的依賴庫,它就支持你的應(yīng)用程序。采用.NET Core讓你在以往在.NET上的投資更有價值,我們來看最新asp.net core 性能已經(jīng)跨入頂級序列,最新一期的TechEmpower基準測試第十七輪測試:
.NET Core和Java都是開源跨平臺的,我們可以來比較一下.NET Core和Java的開源協(xié)議,.NET Core是以MIT協(xié)議開源, Java是GPL協(xié)議開源。 Java 8 SDK升級Oracle要收費這件事對于很多小公司是有著重大的影響的。眾多沒有能力開發(fā)維護OpenJDK的公司完全可以轉(zhuǎn)向更具有競爭力的.NET Core,.NET Core從屬于.NET基金會,由微軟進行官方支持。使用最寬松的MIT和Apache 2開源協(xié)議,文檔協(xié)議遵循CC-BY。這將允許任何人任何組織和企業(yè)任意處置,包括使用,復(fù)制,修改,合并,發(fā)表,分發(fā),再授權(quán),或者銷售。唯一的限制是,軟件中必須包含上述版 權(quán)和許可提示,后者協(xié)議將會除了為用戶提供版權(quán)許可之外,還有專利許可,并且授權(quán)是免費,無排他性的(任何個人和企業(yè)都能獲得授權(quán))并且永久不可撤銷,用戶使用.NET Core完全不用擔心收費問題,你可以很自由的部署在任何地方。
現(xiàn)在是云計算時代,.NET Core已經(jīng)磨練5年時間,準備好了迎接云計算時代的云原生應(yīng)用開發(fā),云系統(tǒng)中,用更少的硬件為更高密度的用戶提供服務(wù)是非常重要的。應(yīng)用程序的占位面積越小,密度越高。容器只包含應(yīng)用程序及其依賴項。文件大小要小很多倍,啟動時間以秒為單位,只有應(yīng)用程序加載到內(nèi)存中,容器保證在任何主機上工作。鑒于容器的明顯優(yōu)勢,.NET Core的設(shè)計決定之一就是使其成為模塊化。這意味著你的.NET Core應(yīng)用程序可以被"發(fā)布",使得它和它的所有依賴關(guān)系在一個地方,這很容易放入容器。
2018年年末的聽到大量的互聯(lián)網(wǎng)公司裁員消息,但是我服務(wù)這幾家客戶都有很強烈的招聘.NET Core開發(fā)人員的需求,這是大量學習Java的同學轉(zhuǎn)向.NET Core平臺的好時機,我一直認為做Java開發(fā)的同學比做傳統(tǒng).NET的人員更容易用好.NET Core, Java相比C#,在使用了C#后你不會再去想用Java,而且.NET Core有你非常熟悉的Spring Cloud那一套約定的編程范式,然而見過很多.NET 開發(fā)人員, 依賴注入都沒用過,更別說用Linux了。在這里我沒有貶低.NET開發(fā)人員的意思,技術(shù)更多的還是要靠自己的努力,我們努力一起成為一群不被時代拋棄的程序猿。
原文地址:https://www.cnblogs.com/shanyou/p/10597046.html
.NET社區(qū)新聞,深度好文,歡迎訪問公眾號文章匯總 http://www.csharpkit.com
總結(jié)
以上是生活随笔為你收集整理的.NET Core 给使用.NET的公司所带来的机遇的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: .Netcore 2.0 Ocelot
- 下一篇: NSwag 和 ASP.NET Core