『7x24小时有问必答』

前言

.NET 技术栈的不断发展和完善,我们面临着越来越多的选择和挑战。无论是后端开发、前端应用还是部署运维,都需要掌握一系列关键技术。
本文全面梳理 .NET 技术栈中的重要组成部分,帮助大家系统地了解从后端到前端以及部署运维方面的核心技术点,为实际项目开发提供有价值的参考。
一、后端
1、框架
C# 语言
异步多线程:利用  async  和  await  关键字处理并发任务,提高应用程序响应能力。
委托:一种类型安全的函数指针,用于传递方法作为参数。
事件(标准事件模式):用于封装观察者模式,实现对象之间的解耦。
泛型:提供类型安全的通用类和方法。
特性:用于元数据标注,如  [Serializable]
反射:动态加载类型、创建实例、调用方法等。
LINQ:语言集成查询,用于数据查询和操作。
Lambda 表达式:简化匿名方法的语法。
Expression 表达式树:用于编译时构建表达式,常用于 ORM 查询。
PLINQ:并行 LINQ,用于并行处理集合数据。
IO 文件操作:处理文件读写操作。
XML 操作:处理 XML 文档的读写和解析。
.NET 平台
IOC/DI 依赖注入:通过依赖注入框架管理对象生命周期。
中间件:在请求处理链中插入逻辑。
鉴权授权、角色策略:确保只有授权用户才能访问特定资源。
Filters 过滤器:在请求执行前后添加逻辑。
IMemoryCache 缓存:用于高速内存缓存。
SignalR:实现实时通信。
身份认证系统
SSO 单点登录:实现一次登录,多处使用。
OAuth2.0 第三方应用授权框架:授权第三方应用访问用户资源。
MVC:模型-视图-控制器架构模式。
WebAPI:用于构建 RESTful 服务。
WebForms:传统的 ASP.NET WebForms。
Windows 服务:后台运行的服务应用程序。
WPF:Windows Presentation Foundation,用于创建图形用户界面。
WinForms:Windows Forms,用于创建桌面应用程序。
gRPC 远程过程调用(微服务进程间通信)
基础数据类型:如 int32、string 等。
Message 类似对象:用于定义复杂的数据结构。
Repeated 类似数组:表示消息中的数组。
.proto  文件:定义服务接口和消息类型。
Ocelot 网关
路由、请求聚合、服务发现、认证、鉴权、限流熔断、负载均衡、Service Fabric、Butterfly Tracing 集成:提供全面的微服务网关功能。

2、数据库

SQL Server
存储过程:预编译的 SQL 语句集。
悲观锁、乐观锁:不同的并发控制机制。
主从复制、读写分离:提高数据库的可用性和性能。
MongoDB:NoSQL 数据库,适合非结构化数据存储。
Redis
缓存一致性解决方案:保证数据的一致性。
缓存击穿:防止高并发下的热点数据失效。
缓存穿透:防止查询不存在的数据。
缓存雪崩:防止大量数据同时失效导致系统压力过大。
6.0 之前:网络请求处理是单线程,IO 多路复用原理。
6.0 之后:网络请求处理是多线程,默认关闭了 IO 多路复用。
五种数据格式:string、hash、list、set、sorted set。
Redis 读写操作都是单线程
缓存存取:高效的数据存储和检索。
过期时间策略:设置键值的生存周期。
发布订阅:实现消息的发布与订阅。
分布式缓存
分布式锁、事务:保证数据操作的原子性。
KingbaseES:国产数据库系统,支持 SQL 标准。

3、ORM

EF Core
悲观并发控制、乐观并发控制:处理并发更新冲突。
FreeSql
SqlSugar

4、中间件

JWT:JSON Web Token,用于身份验证。
IdentityServer4:开放标准的身份验证和授权服务。
NLog:日志记录框架。
Redis:用于缓存和消息队列。
RabbitMQ:消息队列服务。
Quartz:作业调度框架。
Hangfire:后台作业处理框架。
AutoMapper:对象到对象映射工具。
Autofac:依赖注入框架。

5、设计模式

OOP:面向对象编程。
AOP:面向切面编程。
IOC/DI:依赖注入。
DDD:领域驱动设计。
基础设施层(仓储层):负责与外部系统交互。
领域层:业务逻辑实现。
应用层:协调业务逻辑和服务。
分层
领域事件:处理业务逻辑中的事件。

6、分布式、微服务

分布式 CAP 原则/定理
在一个分布式系统中,一致性(Consistency)、可用性(Availability)、分区容错性(Partition tolerance)。这三个要素最多只能同时实现两点,不可能三者兼顾。
分布式缓存
分布式事务、锁
分布式事件总线 EventBus 实现 DDD 领域事件
分布式日志搜索框架 ELK
Elasticsearch:分布式搜索引擎。
Logstash:日志收集和处理工具。
Kibana:日志可视化工具。
数据库主从复制、读写分离
网关 Ocelot 框架
服务发现:自动发现服务实例。
负载均衡:分配请求到不同服务实例。
配置中心
gRPC 远程过程调用

二、前端

HTML5
CSS3
JavaScript
ES6
jQuery
Bootstrap4
Layui
EasyUI
Vue3
Vite4:前端构建工具。
Router 路由:用于页面导航。
Axios HTTP 请求:处理 HTTP 请求。
Sass/Less CSS 拓展:CSS 预处理器。
Pinia 状态管理:用于状态管理。
TypeScript
Element Plus
H5+App
微信小程序
三、网络协议
TCP/IP
OSI 七层模型 / 四层模型:网络分层结构。
建立连接:三次握手
断开连接:四次挥手
HTTP
WebSocket
Modbus 协议(工控物联网 WPF 相关)
可串口通信,也可 TCP/IP 网络通信。
UDP
四、部署/运维
IIS 部署 .NET 6
Linux
Linux 部署 .NET 6
Nginx
负载均衡
反向代理
Docker
镜像、容器、仓库
Docker 常用命令
Docker 部署
Kubernetes
Master
Node
Rancher 可视化工具
Pod
Deployment
Service

五、开发协作工具

团队代码版本管理
Git
SVN
接口调试、抓包工具
Postman
Apifox(接口文档、自动化测试)
Charles(代理、抓包)
团队协作工具
TAPD

总结

本文全面梳理了 .NET 技术栈中的多个重要组成部分,涵盖了后端开发、前端应用以及部署运维等多个方面。通过详细介绍各个领域的关键技术点,希望能帮助大家对 .NET 技术栈的全面认识,并在实际项目开发中灵活运用这些技术。
最后
如果你觉得这篇文章对你有帮助,不妨点个赞支持一下!你的支持是我继续分享知识的动力。如果有任何疑问或需要进一步的帮助,欢迎随时留言。也可以加入微信公众号[DotNet技术匠]  社区,与其他热爱技术的同行一起交流心得,共同成长!
作者:小码编匠
出处:gitee.com/smallcore/DotNetCore
声明:网络内容,仅供学习,尊重版权,侵权速删,歉意致谢!

END

推荐阅读

觉得有收获?不妨分享让更多人受益
关注「DotNet技术匠」,共同提升技术实力

收藏
点赞
分享
在看

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

上一主题上一主题         下一主题下一主题
QQ手机版小黑屋粤ICP备17165530号

关于我们·投诉举报· 用户帮助· 联系我们 · 本站服务 · 版权声明· 隐私政策 · 投搞指南

法律保护:PLC技术网,plcjs.com,plcjs.net等字样
Copyright 2010-2030. All rights reserved. 


微信公众号二维码 抖音二维码 百家号二维码 今日头条二维码哔哩哔哩二维码