为何说是时候拥抱.NET CORE了?

微软和社区已经作了大量艰苦的工做,使.Net Core成为市场上具备竞争力的框架,帮助开发人员快速开发具备最佳性能和可扩展性的强大应用程序。作的最棒的事情是.Net Framework开发人员不须要任何新知识来处理.Net Core。这也是开发人员在很短的时间内采用.Net Core的缘由之一。对于非.NET开发的Spring Boot,NodeJs,go等开发人员来到.NET Core有着很是熟悉的模型,也能够很短的时间内熟悉和爱上.NET Core.前端

我很是的热爱.NET Core, 不是那种盲目的热爱,我将给你分享我使用 .Net Core 以及为何我认为.Net Core 将是2019年最好的框架的理由。程序员

首先咱们不能有偏见,每一种语言都有本身擅长的领域,但我在这里提到的是这些语言的强势领域:编程

Python:机器学习,数据科学还有Web开发。windows

JavaScript:Web开发(前端和后端)和游戏开发。后端

Java: 移动Android应用程序开发,企业应用程序,甚至Web开发。服务器

C ++和C: 操做系统,关键性能解决方案,嵌入式系统以及任何须要低级别能力的东西。app

那么我为何认为.NET Core 是2019年最好的开发框架,这里首先要澄清一件事情就是语言和框架,否则就会出现Python比.NET Core好的评论。 一个编程语言是编写一个程序须要遵循的一组任务,而一个框架是为特定的编程语言编写的实用工具的集合。例如,C#是一种编程语言。Microsoft 在C#中构建了.NET.NET Core框架,这样开发人员就比从零开始建立C#应用程序快得多。框架

这一张图就是我热爱.NET Core的缘由,多功能性:asp.net

image

我已经使用.NET Core 3年多时间,作过.NET Core 几十个项目,从去年离开腾讯本身创业以来,也服务过多家客户,你们都逐步从.NET 向.NET Core迁移,最近也正在作一个调查,从现有数据看仍是有30%的同窗仍是在.NET Framework,对.NET Core尚未着手。机器学习

多功能性是.Net Core 成为个人生活一部分的最好解释。若是您是Web开发人员仍是想开发桌面或移动应用程序,若是您是游戏开发人员或想要从事机器学习,.NET Core就在您身边。

Xamarin  使得咱们使用Microsoft知识开发跨平台移动应用程序,Unity用于开发游戏。您还可使用UWP 构建桌面应用程序 。Asp.net Core也是开发功能强大的基于Web的应用程序的主要参与者,提供了惊人的SPA Angular模板以及SignalR的实时应用程序等等。

云原生计算的发展驱动着各个企业转向遵循云原生原则(启动速度快、内存占用低)的 .NET Core。.NET Core 对Docker容器的支持很是好,这使您能够轻松地将应用程序部署到云端,您只需单击几下便可在云上进行开发和部署。

ML.NET 是面向.NET开发人员的机器学习框架,当咱们谈论微软 Azure中的认知服务时,咱们真的在谈论商品化的AI(人工智能),ML.NET 赋予咱们的应用程序员AI能力。

Blazor  也将接管一些JavaScript功能,不须要懂 AngularJS, React, Vue, 充分利用 .NET 的稳定性和一致性,让咱们成为全栈的Web开发人员。

.NET Core吸引人的功能还有不少,像高性能,开源,宇宙第一的开发人员工具等等。这里我就分享一下Raygun的CEO兼联合创始人对.NET Core的评价,具体参见https://dotnet.microsoft.com/platform/customers

image

不少人都喜欢NodeJs 转go, Raygun 为啥转向了.NET Core呢,我特地去研究了一下Raygun的这个案例:https://customers.microsoft.com/en-us/story/raygun。 早在2013年 Raygun 同时使用了Node,go 和.NET Framework, 核心业务是使用.NET Framework构建的,因此也尝试了研究了使用Mono构建API层,Mono的使用不够理想,因此他们开始探索不一样语言和运行时的优缺点。彷佛Node.js为运行的短小事务提供了一个很是好的模型。Raygun 将Mono转移到Node.js上,Raygun 找到了一个更加稳定的环境,得到了相似的吞吐量,可是它不像是一场重大的性能胜利。随着时间的推移,Raygun工程师注意到Node.js API的性能正在下降。“随着新版本的推出,咱们发现Node.js做为一个框架变得愈来愈慢,愈来愈重量级,”Raygun联合创始人兼首席技术官Jeremy Boyd说。工程师们考虑增长服务器容量,但即便基于云的服务器成本相对较低,大幅增长云服务器也会致使成本上升。 Raygun开发人员决定专一于最大化现有API节点的性能。当该公司获悉微软即将发布.NET Core,Raygun 安排了两个开发人员花了大约两周时间将API移植到.NET Core,而后验证测试工做负载的性能。当他们对API的.NET核心版本是正确的感到满意时,他们启动了一组运行新软件的新节点,而后将这些节点旋转到现有的生产节点集群中, Raygun这个尝试得到了200倍的收益。Raygun的案例对于以.NET 技术构建业务的公司特别有启发,也许你已经或者计划从.NET转移到其余平台,不妨抽出一些时间来尝试一下.NET Core.

我绝不怀疑,.NET Core是将来,Microsoft正在添加新功能,以帮助开发人员进行每次更新。和PHP MVC框架,Python和Java相比较, 我能够说.Net Core没有限制,更加开放。

相关文章
相关标签/搜索