.NET Core 发展历程和版本迭代

.NET Core的发展历程和版本迭代可以归纳如下:

目录

一、起源与发展(2010-2016)

二、成熟与优化(2017-2019)

三、整合与统一(2020至今)

四、版本特性简述

五、版本更新迭代的功能区别

 .NET Core 1.x系列(发布于2016年)

.NET Core 2.x系列(发布于2017年)

.NET Core 3.x系列(发布于2019年)

.NET 5(发布于2020年)

.NET 6(发布于2021年11月)

.NET 7(发布于2023年)


一、起源与发展(2010-2016)

  • 萌芽阶段:.NET Core的萌芽可以追溯到2010年微软内部的“Roslyn”和“CoreFX”项目。Roslyn主要关注编译器和服务端编译技术,而CoreFX则专注于构建一个轻量级、模块化且跨平台的基础类库。

  • 预览版发布:2015年11月,微软正式发布.NET Core 1.0预览版,标志着.NET Framework向跨平台、开源的重大转变。

  • 正式版发布:2016年6月,.NET Core 1.0正式版发布,支持Windows、Linux和Mac OS X操作系统,为开发者提供了一个全新的、高度可移植的应用程序开发模型。

二、成熟与优化(2017-2019)

  • 2.0版本发布:2017年8月,.NET Core 2.0发布,带来了性能大幅提升、兼容性改进以及对.NET Standard 2.0的支持,极大地丰富了开发者的工具箱。

  • LTS版本发布:随着2018年9月.NET Core 2.1 LTS版本的发布,.NET Core进入了长期支持阶段,为企业级应用提供了稳定可靠的选择。

  • 3.0版本预览与发布:同年年底,.NET Core 3.0开始预览,并在2019年9月正式发布。这一版本首次引入对Windows桌面应用的支持,拓宽了其应用场景。

三、整合与统一(2020至今)

  • .NET 5发布:2020年11月,.NET 5发布,它标志着.NET Core与Mono、.NET Framework等其他.NET实现的全面整合,形成了统一的.NET生态体系,提供了一站式的开发体验。

  • 后续版本迭代:至今,.NET Core(现称为.NET)仍在持续发展和完善中,陆续推出了.NET 6、.NET 7等版本。每个版本都带来了性能提升、新特性和工具优化,致力于为开发者带来更高效、灵活、安全的开发环境。

四、版本特性简述

  • .NET Core 1.x系列:提供了跨平台、高性能和轻量级的开发体验,是.NET Core的初步尝试。

  • .NET Core 2.x系列:带来了更好的性能、更强大的开发工具和更广泛的平台支持,同时加强了与.NET Framework的兼容性。

  • .NET Core 3.x系列:引入了支持Windows桌面应用程序开发、WPF和Windows Forms的现代化和改进、C# 8.0的语言特性等,并推出了长期支持版本.NET Core 3.1。

  • .NET 5(里程碑):集成了.NET Framework和.NET Core的功能,成为单一的统一平台,提供了更高的性能、更多的可选组件和更广泛的支持。

  • .NET 6及后续版本:在性能和功能上持续优化,支持多种操作系统和平台,引入了新的语言特性和框架组件,如MAUI(Multi-platform App UI)框架用于构建跨平台的本机应用程序。

五、版本更新迭代的功能区别

 .NET Core 1.x系列(发布于2016年)

  • 主要特性:这是.NET Core的最初版本,提供了跨平台、高性能和轻量级的开发体验。

  • 限制与局限性:由于初始版本的限制和局限性,这个系列不再得到维护和支持。

.NET Core 2.x系列(发布于2017年)

  • 重要改进
    • 带来了更好的性能、更强大的开发工具和更广泛的平台支持。
    • 加强了与.NET Framework的兼容性,并引入了ASP.NET Core 2.x,用于构建Web应用程序。

.NET Core 3.x系列(发布于2019年)

  • 新特性
    • 支持Windows桌面应用程序开发、WPF和Windows Forms的现代化和改进。
    • 引入了C# 8.0的语言特性。
    • 引入了新的.NET Core 3.1版本,作为一个长期支持(LTS)版本。

.NET 5(发布于2020年)

  • 里程碑版本
    • 汇集了.NET Framework和.NET Core的功能,并成为一个单一的统一平台。
    • 旨在提供更高的性能、更多的可选组件和更广泛的支持。

.NET 6(发布于2021年11月)

  • 主要更新
    • 支持多种操作系统和平台,包括Windows、macOS和Linux。
    • 提供了对Web、移动和云等应用程序类型的支持。
    • 引入了新的语言特性、增强的工具和框架组件来构建高性能和现代化的应用程序。
    • 引入了新的MAUI(Multi-platform App UI)框架,用于构建跨平台的本机应用程序。

.NET 7(发布于2023年)

  • 关键亮点
    • 性能改进,使开发人员能够高效地使用有史以来最快的.NET版本。
    • 改进了.NET MAUI,增强了对ARM64上.NET应用程序的支持。
    • 开发人员能够轻松构建具有.NET SDK的内置容器支持、Microsoft Orleans 7.0和可观测性集成等功能的新式云原生应用。
    • C# 11和F# 7中的新增功能简化了开发人员体验。
  • 总结

    从.NET Core 1.x到.NET 7,每个版本都在不断地增强功能、提升性能和扩展跨平台支持。从最初的基础框架到支持多种应用类型和平台,再到引入新的编程特性和工具,.NET Core及其后续版本为开发者提供了更为丰富、高效和灵活的开发环境。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/384377.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

逻辑操作符 、||、!

逻辑操作符为提供逻辑判断的功能,能够构建更复杂的表达式所以有以下三种运算符 !:逻辑取反运算符(可以改变单个运算符的真假)。 &&:逻辑与运算符,就是并且的意思。当两侧均为真的时候…

微信小程序之调查问卷

一、设计思路 1、界面 调查问卷又称调查表,是以问题的形式系统地记载调查内容的一种形式。微信小程序制作的调查问卷,可以在短时间内快速收集反馈信息。具体效果如下所示: 2、思路 此调查问卷采用服务器客户端的方式进行设计,服…

【CodinGame】趣味算法(教学用) CLASH OF CODE -20240726

文章目录 正文字符图形快乐蛇进度条 写在最后END 正文 字符图形 import math import sys# Auto-generated code below aims at helping you parse # the standard input according to the problem statement.zreb int(input())mylist [] for i in range(1, zreb):mylist.app…

Godot入门 03世界构建1.0版

在game场景,删除StaticBody2D节点,添加TileMap节点 添加TileSet图块集 添加TileSet源 拖动图片到图块,自动创建图块 使用橡皮擦擦除。取消橡皮擦后按住Shift创建大型图块。 进入选择模式,TileMap选择绘制,选中图块后在…

一步步教你学会如何安装VMare虚拟机(流程参考图)

前言:一步步教你安装VMare虚拟机(此版本为17.5。2版本)。 1、安装 2、确认协议 3、选择位置存放 4、选择第二个 5、都不选。 6、都选提供便捷操作 7、点击许可证,将密钥输入(可以在网络寻找自己版本的密钥&#xff…

高级及架构师高频面试题-基础型

1、设计模式有哪些原则(待解释的更直白) 单一职责原则:一个类或方法应只负责一项职责,避免一个类因为多个变化原因而改变。开闭原则:软件实体应对扩展开放,对修改封闭。比如要增加用户类别的时候可以新增一…

【资料分享】2024钉钉杯大数据挑战赛A题思路解析+代码演示

2024第三届钉钉杯大学生大数据挑战赛今天已经开赛,【A题】思路解析代码,资料预览:

Apache Doris + Paimon 快速搭建指南|Lakehouse 使用手册(二)

湖仓一体(Data Lakehouse)融合了数据仓库的高性能、实时性以及数据湖的低成本、灵活性等优势,帮助用户更加便捷地满足各种数据处理分析的需求。在过去多个版本中,Apache Doris 持续加深与数据湖的融合,已演进出一套成熟…

在Linux、Windows和macOS上释放IP地址并重新获取新IP地址的方法

文章目录 LinuxWindowsmacOS 在Linux、Windows和macOS上释放IP地址并重新获取新IP地址的方法各有不同。以下是针对每种操作系统的详细步骤: Linux 使用DHCP客户端:大多数Linux发行版都使用DHCP(动态主机配置协议)来自动获取IP地址…

php--高级反序列化

🎼个人主页:金灰 😎作者简介:一名简单的大一学生;易编橙终身成长社群的嘉宾.✨ 专注网络空间安全服务,期待与您的交流分享~ 感谢您的点赞、关注、评论、收藏、是对我最大的认可和支持!❤️ 🍊易编橙终身成长社群&#…

必应快速收录自动提交链接到IndexNow代码

近来发现bing的搜索量也越来越大了,为了更好的对必应进行seo优化,我们可以把最新的网站文章链接提交给必应IndexNow,以此来加快必应快速收录网站文章链接,那么我们我如何使用php代码来实现提交网站文章链接到必应IndexNow呢&#…

【QAC】分布式部署下其他机器如何连接RLM

1、 文档目标 解决分布式部署下其他机器如何连接RLMLicense管理器。 2、 问题场景 分布式部署下QAC要在其他机器上单独运行扫描,必须先连接RLMLicense管理器,如何连接? 3、软硬件环境 1、软件版本:HelixQAC23.04 2、机器环境…

快手可灵视频生成大模型全方位测评

快手视频生成大模型“可灵”(Kling),是全球首个真正用户可用的视频生成大模型,自面世以来,凭借其无与伦比的视频生成效果,在全球范围内赢得了用户的热烈追捧与高度评价。截至目前,申请体验其内测…

路由表与IP数据报转发:基础小白指南

目录 1. 路由表的基本概念 2. 路由表中的默认路由 3. IP数据报的转发流程 4. 路由聚合 5. 最长前缀匹配 总结 在网络世界中,IP数据报的转发是如何进行的? 这篇文章将带你深入了解路由表的基本概念和IP数据报的转发流程。我们会用简洁明了的语言和实…

MYSQL 第四次作业

任务要求: 具体操作: 新建数据库: mysql> CREATE DATABASE mydb15_indexstu; Query OK, 1 row affected (0.01 sec) mysql> USE mydb15_indexstu; Database changed 新建表: mysql> CREATE TABLE student( ->…

计算机网络知识-面试点1

1. 三握四挥 定义: 在计算机网络中,特别是TCP/IP协议中,“三握”指的是三次握手(Three-way Handshake),而“四挥”则指的是四次挥手(Four-way Handshake)。这两个过程分别用于TCP连接…

用python程序发送文件(python实例二十六)

目录 1.认识Python 2.环境与工具 2.1 python环境 2.2 Visual Studio Code编译 3.文件上传 3.1 代码构思 3.2 服务端代码 3.3 客户端代码 3.4 运行结果 4.总结 1.认识Python Python 是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。 Python 的设计具…

k8s中部署nacos

1 部署nfs # 在k8s的主节点上执行 mkdir -p /appdata/download cd /appdata/download git clone https://github.com/nacos-group/nacos-k8s.git 将nacos部署到middleware的命名空间中 kubectl create namespace middleware cd /appdata/download/nacos-k8s # 创建角色 kub…

KamaCoder 98. 所有可到达路径 + LC 797. All Paths From Source to Target

题目要求 给定一个有 n 个节点的有向无环图,节点编号从 1 到 n。请编写一个函数,找出并返回所有从节点 1 到节点 n 的路径。每条路径应以节点编号的列表形式表示。 输入描述 第一行包含两个整数 N,M,表示图中拥有 N 个节点&…

ctfshow-web入门-php特性(web137-web141)

目录 1、web137 2、web138 3、web139 4、web140 5、web141 1、web137 直接调用 ctfshow 这个类下的 getFlag 函数,payload: ctfshowctfshow::getFlag 查看源码: 拿到 flag:ctfshow{dd387d95-6fbe-4703-8ec5-9c8f9baf2bb5} 在…