8

在某些文档(即 ECMA-334)中使用了“.NET 框架”的名称,但在其他文档(在许多书籍中)中,使用了“.NET 平台”。我看到有人将 .NET 称为 .NET 环境。

  • 哪一个是 .NET 的正确命名法?
  • 一般来说,平台/环境/框架之间有什么区别?

添加

不容易看出这三个名字是一样的

  • 我们不说 Qt 平台,而是说 Qt 框架
  • 我们说跨平台是指在许多操作系统上的互操作性,而不是跨框架。

如果人们只是说 .NET 环境、.NET 平台和 .NET 框架的含义相同,只针对 .NET,我可以接受。

4

5 回答 5

15

这些在语义上是相同的。用法仅取决于使用它的上下文:

  • 您使用 .NET 框架(等于 .NET 库)构建代码

  • 代码在 .NET 平台上运行(在 CLR 中)

  • 您需要安装 .NET 环境(.NET 框架可再发行版)

它们都不是唯一的“正确的”,而所有场景都正确。

于 2010-04-12T14:08:19.517 回答
2

All are correct. They're essentially synonyms.

于 2010-04-12T14:07:15.120 回答
2

同意,不过,我想说一般做法是将其称为 .NET框架

.NET 涵盖了许多在其他生态系统中是独立实体/项目的领域。例如,在 Java平台上,您使用Spring 或 Struts 等框架构建应用程序。在 .Net 中,您将使用 ASP.NET MVC,或者说实体框架,但它们本质上都是平台的一部分。将平台视为“不需要额外安装”。

于 2010-04-12T14:27:27.477 回答
1

环境是提供平台需求的通用环境。

架构通常专注于特定的问题上下文,而框架旨在用于完全不同的问题上下文。

这是更通用的答案,适用于所有人,而不是.Net

于 2010-04-12T14:36:03.847 回答
0

查看 Visual Studio 中的项目属性,我教它也是关于运行时与开发环境的。但显然这是错误的,正确的答案是 Platform 只是环境的规范,Framework 是需要安装的库。
所以; 查看项目属性:

  • 【开发环境】平台:项目属性不问这个!“VS Installer”是需要担心的。您的项目将不在乎!
  • [开发环境] 框架:用于 CLR、BCL、SDK 和其他 .Net 库的库(例如:.Net Framework 4.7.2)
  • 【运行环境】平台:主要是操作系统,还有CPU架构、设备类型(笔记本电脑、手机等)
  • [运行时环境]框架:项目属性不要求这个!因为它与开发框架相同,但没有任何 SDK 或 IDE 库。您的开发机器已经拥有它,您的部署机器将单独安装它。

平台示例:Windows 10、x64,桌面
运行时示例:.Net Framework、.Net Core、Mono、.Net 标准
项目类型示例:WPF、ASP.Net-core、Xamarin
框架是为支持运行时和项目而安装的库/可执行文件类型。

于 2020-10-30T09:21:01.647 回答