AI问答:.NET核心组成概要、程序运行步骤和查询SDK版本的方法


.NET三大组成

①Runtime (运行时):

CLR:公共语言运行时,执行程序、内存管理、垃圾回收(GC)、安全性检查、异常处理,是跨平台的关键要素。

JIT:实时编译器,将中间语言 (IL) 代码编译成机器码。

②BCL:类库集合,例如文件读写等(System.* 命名空间的库)

③SDK:软件开发工具包,例如dotnet 命令行工具,Nuget包等。


.NET程序运行的大致步骤

  1. 编写:开发人员用VS2022编写代码

(1.5预编译:代码分析和检查)

  1. 编译:C# 编译器编译源代码,源代码转换为与平台无关的中间语言 (IL) 代码,并且生成程序集(元数据,.dll , .exe 文件)

  2. 构建过程:C# 编译器将编译后的 IL 代码与其他资源、其他库和依赖项链接,形成最终的程序集。

  3. 运行时执行:CLR进行内存管理、垃圾回收、异常处理、安全检查,并且使用 JIT 编译器将 IL 代码编译成特定于平台的机器码。。

  4. 功能实现:程序在用户的机器上运行,当用户与应用程序交互时,操作系统会调度CPU执行相应的机器码,从而实现程序的功能。


如何查看自己安装的.NET环境的版本?

cmd命令行执行以下命令:

bash 复制代码
dotnet --info

我安装的 .NET SDK 版本是 8.0.303 ,我有9个 .NET 运行时版本,分别是ASP.NET Core Runtime,NET Core Runtime,Windows Desktop Runtime各三个,最新的版本是 8.0.7。


(以上大量数据由AI生成,仅供参考)

相关推荐
持力行8 分钟前
C++与Java变量声明、定义及内存分配的核心区别
java·开发语言·c++
天选之子1231 小时前
DuckDB学习
jvm·学习
接着奏乐接着舞2 小时前
大模型开发 agent 知识库
java
xuhaoyu_cpp_java2 小时前
SpringBoot学习(四)
java·经验分享·spring boot·笔记·学习
plainGeekDev3 小时前
kapt 替换为 KSP
android·java·kotlin
蜡台3 小时前
通过Gradle脚本声明更改Java变量
android·java·开发语言·python·kotlin·gradle·groovy
程序员天天困3 小时前
后端视角看 EventBus:发布订阅总线的原理、场景与用法
java·后端
要开心吖ZSH4 小时前
AI医疗分诊与健康咨询助手agent开发——(4-2)从零到一:我给AI医疗分诊助手加了个“知识库大脑“,终于搞懂了RAG是什么
java·docker·agent·医疗·rag
AI人工智能+电脑小能手4 小时前
【大白话说Java面试题 第179题】【07_Redis篇】第15题:什么是 Redlock 算法?
java·redis·分布式锁·高可用·redlock
怎么比啊都是大神5 小时前
关于==null、isEmpty()和StrUtil.isBlank()
java