.NET Framework, .NET Core 和.NET Standard的区别和联系

三者的定义

.NET Standard:

  • 定义:一套正式的 .NET API (.NET 的应用程序编程接口)规范,.NET Standard
    .NET Core 和.NET Framework 是.net standard 在不同平台下的具体实现。
    在这里插入图片描述

.NET Framework:

  • 类库 + 运行时(CLR)
  • Framework的体系结构
  • 在这里插入图片描述

在这里插入图片描述

.NET Core:

在这里插入图片描述
在这里插入图片描述

.NET Core三大特点

  • 跨平台,可以在不同的操作系统上运行,包括Windows,Linux,Macos,实现了跨平台跨设备
  • 开源,源码在Github上,由微软官方和社区共同支持
  • 模块化

使用.NET Core目标

  • 不是为了缩小.NET Framework包的大小
  • 而是为了组件式发布,即客户只需通过NuGet发布自己依赖的dll即可

NET 家族族谱

在这里插入图片描述

.NET Core 和.NET Framework 的区别

  • Framework和Core的关系:
    Framework和Core的关系是子集和超集
  • Core的API种类从.Framework中去除了以下内容:
    1、和GUI相关的WForm和WPF, 它们绑定了windows 系统
    2、Asp.Net WebForms 和WCF是很老的技术,最新的前后端开发技术是Asp.Net MVC 和Asp.Net Web API, 它们也被移除了。在.net core中的对应实现是Asp.Net Core MVC 和 Asp.Net Core Web API
    3、EF 在.net core中的对应实现是 EF Core

.NET Core的目标是为了模块化、可移植性发布

  • 每个用户需要多少个dll,可以通过nuget打入依赖的dll。这样.NET Core的部署比.NET Framework更简单快速。

使用.NET CORE的场景

  • 跨平台
  • 微服务架构
  • 容器
  • 需要按应用程序的级别选择并行的.NET版本

使用.NET Framework的场景

  • 现有的.NET Framework的应用程序
  • 需要使用不可用于.NET CORE的第三方.NET库或Nuget包
  • 需要使用不可用于.NET CORE的.NET技术
    包括:
    1 Asp.NET Web窗体应用程序
    2 Asp.NET 网页应用程序
    3 Asp.NET SignalR服务器/客户端实现
    4 WCF服务的实现
    5 工作流相关的服务
    6 WPF和Wform
    7 语言支持
发布了69 篇原创文章 · 获赞 0 · 访问量 1014

猜你喜欢

转载自blog.csdn.net/qq_21209307/article/details/104891873