文章目录
- 前言
- 一、基础框架与语言
- 1、.NET Framework
- 2、编程语言
- 二、Web开发技术
- 1、ASP.NET
- 2、Blazor
- 3、SignalR
- 三、桌面与移动开发技术
- 1、Windows Forms(WinForms)
- 2、Windows Presentation Foundation(WPF)
- 3、Xamarin
- 4、.NET MAUI(Multi-platform App UI)
- 四、云服务与微服务技术
- 1、Azure SDK
- 2、gRPC
- 3、Dapr(Distributed Application Runtime)
- 五、数据处理与持久化技术
- 1、Entity Framework Core
- 2、LINQ(Language Integrated Query)
- 六、其他实用技术与库
- 1、AutoMapper
- 2、Fluent Validation
- 3、NLog
- 4、Hangfire
- 5、Flurl
- 6、Dapper
- 7、SqlSugar
- 8、Polly
- 9、Newtonsoft.Json
- 10、MediatR
- 总结
前言
.NET是一个开发和运行环境,它包含了多种技术组件和框架,旨在为不同类型的应用程序提供高度灵活、高效的开发环境。以下是对.NET包含的主要技术的归纳:
微软.NET学习官网:
https://learn.microsoft.com/zh-cn/dotnet/
一、基础框架与语言
1、.NET Framework
.NET Framework:.NET的基础框架,提供了一个一致的、面向对象的编程环境,简化了开发、部署和管理Web应用程序、桌面应用程序和网络应用程序的过程。
2、编程语言
编程语言:.NET支持多种编程语言,其中最常用的是C#,此外还有VB.NET、J#、JavaScript(在.NET中通常通过ASP.NET AJAX等技术使用)和Managed C++等。这些语言都可以编译成中间语言(IL),然后在运行时由.NET Framework的公共语言运行库(CLR)执行。
二、Web开发技术
1、ASP.NET
ASP.NET:用于构建动态Web应用程序和Web服务的框架。它提供了丰富的控件集、数据绑定、状态管理等功能,并支持MVC(Model-View-Controller)架构模式。此外,ASP.NET Core是ASP.NET的跨平台版本,提供了更高的性能和灵活性。
2、Blazor
Blazor:一个用于构建交互式Web应用程序的框架,允许开发者使用C#和Razor(HTML和C#混合的标记语言)来构建UI。Blazor有两种模式:Blazor WebAssembly(在浏览器中运行C#代码)和Blazor Server(在服务器上运行C#代码并通过SignalR与浏览器通信)。
3、SignalR
SignalR:一个用于实现实时双向通信的库,常用于聊天应用、实时通知等场景。
三、桌面与移动开发技术
1、Windows Forms(WinForms)
Windows Forms(WinForms):一个传统的Windows桌面应用程序开发框架,提供了丰富的控件集和事件驱动模型。
2、Windows Presentation Foundation(WPF)
Windows Presentation Foundation(WPF):一个用于构建Windows桌面应用程序的UI框架,支持高分辨率图形、动画和数据绑定。
3、Xamarin
Xamarin:.NET MAUI的前身,也是一个用于构建跨平台移动应用程序的框架。它提供了对iOS和Android平台的直接访问,并允许开发者使用C#和.NET进行开发。
4、.NET MAUI(Multi-platform App UI)
.NET MAUI(Multi-platform App UI):一个用于构建跨平台移动和桌面应用程序的框架,支持Windows、macOS、iOS和Android等平台。它统一了桌面和移动应用开发,简化了跨平台开发的复杂性。
四、云服务与微服务技术
1、Azure SDK
Azure SDK:微软Azure服务的开发工具包,支持与云端服务交互。它提供了对Azure存储、Azure函数、Azure Kubernetes服务等的访问。
2、gRPC
gRPC:一个高性能远程过程调用框架,适合微服务间通信。它使用HTTP/2作为传输协议,并支持多种编程语言和平台。
3、Dapr(Distributed Application Runtime)
Dapr(Distributed Application Runtime):一个帮助构建分布式应用的运行时,它简化了状态管理、服务调用和发布订阅模型等分布式系统的复杂性。
五、数据处理与持久化技术
1、Entity Framework Core
Entity Framework Core:一个轻量级的对象关系映射(ORM)工具,支持LINQ查询语法,简化了数据库操作。它提供了对多种数据库引擎的支持,并允许开发者以面向对象的方式操作数据库。
2、LINQ(Language Integrated Query)
LINQ(Language Integrated Query):一组用于查询和操作数据集合的统一语法,适用于内存数据、数据库和XML等数据源。
六、其他实用技术与库
1、AutoMapper
AutoMapper:一个对象映射工具,用于简化不同类型对象之间的转换和映射。
2、Fluent Validation
Fluent Validation:一个用于实现简洁且可扩展的验证规则的库。
3、NLog
NLog:一个灵活且可扩展的日志记录库,用于在.NET应用程序中实现全面的日志记录。
4、Hangfire
Hangfire:一个开源的后台作业调度框架,用于在.NET应用程序中实现可靠的后台任务处理。
5、Flurl
Flurl:一个简化和优化HTTP请求的库,用于.NET应用程序中进行易于使用和可维护的HTTP调用。
6、Dapper
Dapper:一个轻量级的ORM库,提供了简单而高效的对象映射功能。
7、SqlSugar
SqlSugar:另一个轻量级的ORM库,提供了强大的查询语法和灵活的数据库操作功能。
8、Polly
Polly:一个用于实现弹性和容错机制的库,以增强应用程序对故障和不稳定性的处理。
9、Newtonsoft.Json
Newtonsoft.Json:一个功能丰富且流行的JSON处理库,用于在.NET应用程序中进行JSON序列化和反序列化操作。
10、MediatR
MediatR:一个轻量级的中介者模式库,用于实现应用程序中的消息和请求处理。
总结
综上所述,.NET包含了丰富的技术组件和框架,涵盖了Web开发、桌面与移动开发、云服务与微服务、数据处理与持久化以及其他实用技术与库等多个方面。这些技术共同构成了.NET强大的生态系统,为开发者提供了灵活、高效的开发环境。