15 .NET 实现 .NET 的实现包括以下项: 一个或多个运行时
预编译器。
与 JIT 类似,此编译器还可将 IL 转换为机器代码。 与 JIT 编译对比,AOT 编译在应用措施执行前进行并且凡是在差别计算机上执行。 由于在运行时 AOT 工具链不编译,因此它们不需要最洪流平地减少编译所花费的时间。 这意味着它们可花更多的时间进行优化。 由于 AOT 的上下文是整个应用措施,因此 AOT 编译器还会执行跨模块链接和全措施分析,这意味着之后会进行所有引用并会生成单个可执行文件。
2. ASP.NET
随 .NET Framework 一起供给的原始 ASP.NET 实现。
有时 ASP.NET 是一个涵盖性术语,指包罗 ASP.NET Core 在内的两个 ASP.NET 实现。
3. ASP.NET Core
.NET Core 上生成的跨平台、高性能、 开放源 ASP.NET 实现。
4. 措施集
.dll/.exe 文件,此中包罗一组可由应用措施或其他措施集挪用的 API。
措施集可以包孕接口、类、布局、枚举和委托等类型。 有时,项目的 bin 文件夹中的措施集被称为二进制文件。
5. CLR
大众语言运行时。
确切含义取决于上下文,但它凡是指 .NET Framework 的运行时。 CLR 措置惩罚惩罚内存分配和打点。 CLR 也是一个虚拟机,不只可执行应用,还可使用 JIT 编译器快速生成和编译代码。 当前的 Microsoft CLR 实现仅限 Windows。
6. CoreCLR
.NET Core 大众语言运行时。
此 CLR 是给与与 CLR 不异的根基代码生成的。 最初,CoreCLR 是 Silverlight 的运行时,专为在多个平台(出格是 Windows 和 OS X)上运行而开发。CoreCLR 现属于 .NET Core 并暗示 CLR 的简化版本。 它仍是跨平台运行时,现包孕针对许多 Linux 分发的撑持。 CoreCLR 也是具有 JIT 和代码执行成果的虚拟机。
7. CoreFX
.NET Core 基类库 (BCL)
一组组成 System.(在必然的水平上组成 Microsoft.)定名空间的库。 BCL 是用于生成 ASP.NET Core 等较高级应用措施框架的较初级通用框架。 .NET Core BCL 的源代码包罗在 CoreFX 存储库中。 但大部分 .NET Core API 也可在 .NET Framework 中使用,因此可将 CoreFX 视为 .NET Framework BCL 的一个分支。
8. CoreRT
.NET Core 运行时。
与 CLR/CoreCLR 对比,CoreRT 不是虚拟机,这意味着它不包罗用于快速生成并运行代码的成果,因为它不包孕 JIT。 但它包罗 GC 以及运行时类型标识 (RTTI) 和反射成果。 只是由于设计有类型系统,因此并不需要元数据反射成果。 包罗这些成果使它具有 AOT 工具链,该工具链可去除多余的元数据,更重要的是可识别应用不使用的代码。
9. 跨平台
能够开发并执行可在多个差别操纵系统(如 Linux、Windows 和 iOS)上使用的应用措施,而无需专门针对每个操纵系统进行从头编写。 这样,可以在差别平台上的应用措施之间反复使用代码并连结一致性。
10. 生态系统
所有针对给定技术生成和运行应用措施的运行时软件、开发工具和社区资源。
11. 框架
一般指一个综合 API 调集,便于开发和部署基于特定技术的应用措施。 今后通例意义上来说,ASP.NET Core 和 Windows 窗体都是示例应用措施框架。
12. “GC”
垃圾回收器。
垃圾回收器是自动内存打点的实现。 GC 可释放东西占用的不再使用的内存。
13. IL
中间语言。C# 等较高级的 .NET 语言编译为称为中间语言 (IL) 的硬件无关性指令集。 IL 有时被称为 MSIL (Microsoft IL) 或 CIL(通用 IL)。
14. JIT
实时编译器。
与 AOT 类似,此编译器将 IL 转换为措置惩罚惩罚器可理解的计算机代码。 与 AOT 差别,JIT 编译在需要运行代码的同一台计算机上按需执行。 由于 JIT 编译在应用措施的执行过程中产生,因此编译时是运行时的一部分。 因此,JIT 编译器需要平衡优化代码所花费的时间与生成代码时可节约的时间。 但 JIT 知道实际硬件,这样开发人员就无需供给差此外实现。
15 .NET 实现
.NET 的实现包孕以下项:
一个或多个运行时。 示例:CLR、CoreCLR、CoreRT。
实现 .NET Standard 的某版本并且可能包罗其他 API 的类库。 示例:.NET Framework 基类库、.NET Core 基类库。
可选择包罗一个或多个应用措施框架。 示例: ASP.NET、Windows 窗体和 WPF 包罗在 .NET Framework 中。
可包罗开发工具。 某些开发工具在多个实现之间共享。
.NET 实现的示例:
.NET Framework
.NET Core
通用 Windows 平台 (UWP)
16. 库
可由应用或其他库挪用的 API 调集。 .NET 库由一个或多个措施集构成。
词库和框架凡是作同义词使用。
17. 元包
一个 NuGet 包,没有本身的库,而只是一个依赖项列表。 所含包可选择成立方针框架的 API。
温馨提示: 本文由Jm博客推荐,转载请保留链接: https://www.jmwww.net/file/web/32258.html