- 它们都是微软旗下的产品
- .NET Framework
- 主要针对window环境开发,是一套开发框架,它包含了大量的类库和运行时环境(CLR),支持多种编程语言,包括 C#。
- - .NET Framework 的版本(如 4.5、4.6、4.7 等)表示框架的不同版本。每个版本的 .NET Framework 支持特定版本的 C# 语言特性。
- .NET Core
- .NET Core 是一个跨平台的开源框架,旨在替代 .NET Framework。它可以在 Windows、Linux 和 macOS 上运行。
- - .NET Core 的版本(如 2.1、3.0、3.1 等)表示框架的不同版本。每个版本的 .NET Core 也支持特定版本的 C# 语言特性。
- .NET 5 及更高版本
- - .NET 5 是 .NET Core 的继任者,统一了 .NET Core 和 .NET Framework 的功能,成为一个单一的跨平台框架。
- - .NET 5 及更高版本(如 .NET 6、.NET 7 等)继续支持最新的 C# 语言特性。
- .NET Standard(Unity)
- 定义了一组跨平台api,它可以写.net core、.net framework、mono的代码,可以运行在不同的平台上
- .NET 4.x(Unity)
- 基于.net framework的二次封装,主要针对window环境
- Mono
- 基于.net framework的二次封装,旨在使 .NET 应用程序可以在多个平台上运行,包括 Linux、macOS 和 Windows。
- Mono 提供了跨平台的 .NET 运行时和开发工具,使得开发者可以在不同操作系统上运行和开发 .NET 应用程序。
- 与 Unity 的关系
- Unity 使用 Mono 作为其脚本运行时环境,这意味着 Unity 的 C# 脚本是通过 Mono 编译和执行的。尽管 Unity 现在也支持 .NET Core 和 .NET Standard,但 Mono 仍然是其主要的脚本运行时。