以下是 .NET 技术生态的核心内容、各框架间的区别及其作用的系统性梳理,结合技术演进与实际应用场景整理而成:
一、.NET 技术体系的核心构成
1. .NET Framework
- 定义:微软推出的最早 .NET 实现(2002年发布),仅限 Windows 平台运行。
- 作用:支持开发 Windows 桌面应用(WinForms、WPF)、Web 应用(ASP.NET WebForms、MVC)、服务(WCF)等。
- 特点:
- 包含完整类库(FCL)与运行时(CLR),提供内存管理、线程调度等基础服务。
- 依赖系统级安装,更新通过 Windows Update 推送。
- 现状:微软已停止功能更新,仅提供安全维护,新项目不推荐使用。
2. .NET Core
- 定义:跨平台开源框架(2016年发布),支持 Windows/Linux/macOS。
- 作用:专注高性能云应用、微服务、容器化部署,适用控制台程序、ASP.NET Core Web 应用等。
- 特点:
- 模块化:通过 NuGet 按需引用组件,减小部署体积。
- 高性能:优化 JIT 编译与内存管理,适合高并发场景。
- 容器友好:原生支持 Docker 与 Kubernetes。
3. .NET 5 及更高版本(.NET 6/7/8/9)
- 定义:统一平台(2020年起),合并 .NET Framework、.NET Core、Xamarin 的技术栈。
- 作用:覆盖全场景开发(桌面、Web、移动、云、IoT),实现“一个框架,多个平台”。
- 关键革新:
- 跨平台 UI 框架(如 .NET MAUI 替代 Xamarin)。
- C 语言持续增强(如记录类型 `record`、顶级语句)。
- 性能提升(AOT 编译、最小化 API 等)。
4. .NET Standard
- 定义:API 规范标准(非实现),定义跨平台兼容的基类库(BCL)接口。
- 作用:确保类库在不同 .NET 实现(如 Framework/Core/Xamarin)中无需修改即可复用。
- 版本兼容:
- .NET Standard 2.0 被 .NET Framework 4.6.1+ 和 .NET Core 2.0+ 支持。
- .NET 5+ 后,其统一基类库逐渐取代 .NET Standard 的角色。
5. Xamarin
- 定义:基于 Mono 运行时,用于开发 iOS/Android/macOS 跨平台移动应用。
- 作用:通过 C 共享业务逻辑层,原生渲染 UI。
- 演进:已整合进 .NET 6+ 的 .NET MAUI(多平台应用 UI)框架中。
---
二、核心框架对比与关键区别
| 维度 | .NET Framework | .NET Core | .NET 5+ | Xamarin |
|------------------|--------------------------|--------------------------|--------------------------|--------------------------|
| 平台支持 | 仅 Windows | 跨平台(Win/Linux/macOS)| 跨平台(全系统) | 移动端(iOS/Android) |
| 开源协议 | 闭源 | MIT/Apache 2 开源 | 完全开源 | 开源(基于 Mono) |
| 部署模式 | 系统级全局安装 | 应用级独立部署 | 独立部署或框架依赖 | 应用内捆绑运行时 |
| 技术限制 | 依赖老旧技术(如 WebForms)| 早期缺失部分桌面库 | 全技术栈覆盖 | 仅限移动开发 |
| 适用场景

被折叠的 条评论
为什么被折叠?



