nba停赛了,周末也没有比赛可看了。呆在家里学着写点东西,第一次写怕出丑,所以左改右改才写完这一篇。这一篇主要是聊聊.net core。
传统模式问题
对开发人员来说学习新的技术是一项很大的投资。不仅要学习在新的技术怎么编写、构建、测试、部署和维护应用程序,而且面临如何在这众多框架中要挑选一个出众的。这比古代皇宫选妃还难,哈哈哈!这还不算完,每天工作多任务紧,还有那更要命的是996、007。最后码农抱怨:“新技术是神马,新技术与我无缘。”
对于公司的老板或领导来说,想要公司产品能同时满足在不同平台上的应用,就得分别招iOS或Android的开发人员来开发,或者在硬件上进行标准化来限制用户。在架构上每个部分使用不同语言开发,最后平台集成和维护变得越来越困难。只要业务需求有变更,需要在不同的开发语言上进行重新编写业务逻辑代码,这样扩展太慢,无法适应新的需求变化速度,而且还有可能导致对硬件的要求越来越高。最终导致企业的成本不断的提高。
有没有这样一个框架能解决这些问题?其实早在几年前,微软为解决该问题发布了.net core框架。在.net core框架下,开发者可以不受限于特定语言、运行系统、或硬件。这也使得.net开发人员越来越有钱途,加上框架开源(现在大公司不搞点开源都不好意思称是大公司),由微软和.NET社区在GitHub上共同维护,社区交流也是很活泼(yue)。
.net core历史
要了解.net core,得先说.net framwork。简单点说.net framework包含:CLR(公共语言运行库)和.net framework类库。CLR是.net体系的基础,.net平台上的程序都是在CLR上运行。它提供了内存管理、线程管理、安全性、异常处理等。2002年微软发布.net framework 1.0,是第一个在CLR运行的框架,可惜只能在windows上运行。另外说.net framework类库,里面有好多类、属性和方法,开发的程序可以直接使用这些类。
到了2016年,xamarin被微软收购并开源。xamarin是一个跨平台开发框架,而且还简化了多种跨平台的应用开发。被收购后,xamarin就归纳到.net体系下,自然能在CLR上运行。与此同时微软发布了.net core 1.0。.net core为了保证能跨平台,吸收了.net framework和xamarin精髓。就这样.net core夹在.net framework和xamarin中间,成了.net体系的一员。为了让它们三者能在.net体系下都能互相共享,微软引入.net standard和通用基础结构。为了加深印象,看下微软的.net生态系统架构图,如下图:
好了,.net core的前因后果就聊到这。
声明:文中观点不代表本站立场。本文传送门:https://eyangzhen.com/218340.html