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生成,仅供参考)

相关推荐
哦虎!3 小时前
【JavaEE】网络初识
java
for_ever_love__3 小时前
MySQL ORDER BY 排序优化:从 Using filesort 到索引有序扫描(含双路 / 单路排序原理)
java·mysql·优化·存储·by·order·filesort
我是人✓4 小时前
Java文件上传三方式对比:从传统到SpringBoot
java·开发语言
欣栀♡4 小时前
JVM 频繁 Full GC 先看日志括号里的 cause,jstat 的 FGC 在 JDK 8 上会骗人
java·jvm
IT研究室4 小时前
最新计算机毕业设计选题推荐-基于spring boot的葡萄酒文化宣传网站-网站-文档指导-Java-springboot
java·spring boot·课程设计
慧都小项5 小时前
MyEclipse 中创建和测试 JAX-RS REST 接口:从项目配置到 REST Explorer
java·restful·myeclipse·jax-rs
Wang's Blog5 小时前
Java 项目实战: 交友项目 - 入门案例:编写 Dubbo 服务提供者
java·dubbo·交友
czt_java5 小时前
JVM 核心基础|运行时数据区、类加载机制、GC 分代回收
jvm
秋饼5 小时前
Spring AI 2.0 结构化输出企业级实战:从 BeanOutputConverter 源码到生产级解析容错
java·ai·技术分享·后端开发
摇滚侠5 小时前
《计算机是如何工作的:人人都能懂的计算机软硬件工作原理》第 9 章 机器码与汇编语言 阅读笔记 9
java·开发语言·笔记