.net基础概念

1. .NET Framework

.NET Framework开发平台包含公共语言运行库(CLR)和基类库(BCL),前者负载管理代码的执行,后者提供了丰富的类库来构建应用程序。.NET Framework仅支持Windows平台

2. Mono

由于.NET Framework支支持windows环境,因此社区开发了Mono,是可以跨平台运行的,但是其远远落后于.NETFramework的官方实现

3. .NET Core

微软官方提供的跨平台运行平台。包括名为CoreCLR的CLR跨平台实现和CoreFX的流畅的BCL。.NETCore的运行速度快。

.NETCore已经重命名为.NET,为了和.NET Framework区分,主版本号跳过了数字4,以免和.NET Framework 4.X混淆。其版本可以是长期支持的(LTS),也可以是当前的(Current)

3.1 .NET Runtime 和.NET SDK

.NET Runtime 版本控制遵循语义版本控制,也就是说,主版本表示非常大的更改,次版本表示更新,而补丁版本表示bug修复。.NET Runtime更新与主版本(如 6.x版)兼容。

.NET SDK 版本控制不遵循语义版本控制。主版本号和次版本号与匹配的运行时版本绑定。.NET SDK更新版本保留了构建适用于旧版运行时的应用程序的能力,可以使用以下命令更新版本:

bash 复制代码
  dotnet-core-unistalll remove -all-previews-but-latest --sdk

4. 运行过程

dotnet CLI工具使用的C#编译器(名为Roslyn) 会将C#的源码转换成中间语言(IL)代码,并将IL存储再程序集(DLL或EXE)中。IL代码语句就像汇编的指令,由.NET的虚拟机CoreCLR执行。CoreCLR运行时,先从程序集中加载IL代码,再由JIT编译器将IL代码编译成本机CPU指令,最后由机器上的CPU执行。

相关推荐
追逐时光者3 小时前
.NET集成IdGenerator生成分布式ID
后端·.net
小禾家的3 小时前
.NET AI 开发人员库 --AI Dev Gallery简单示例--问答机器人
人工智能·c#·.net
MicrosoftReactor4 小时前
技术速递|探索 Microsoft.Extensions.VectorData 与 Qdrant 和 Azure AI 搜索的结合使用
人工智能·microsoft·.net·azure
小码编匠11 小时前
最好用的 WPF 加载动画功能
后端·c#·.net
喵叔哟12 小时前
23. 【.NET 8 实战--孢子记账--从单体到微服务】--记账模块--预算
linux·微服务·.net
AitTech2 天前
.NET中的强名称和签名机制
.net
djk88882 天前
.NET Framework 4.7.2 创建 Swagger的API 的设置
.net
编程乐趣2 天前
Eval-Expression.NET:动态执行C#脚本,类似Javascript的Eval函数功能
javascript·c#·.net
VAllen3 天前
分析基于ASP.NET Core Kernel的gRPC服务在不同.NET版本的不同部署方式的不同线程池下的性能表现
.net·性能测试·asp.net core·grpc·dotnet