前言
从事ASP.NET Core的童鞋都知道,服务端涉及到的知识点实在是太多了,而且每年新技术和框架不断演进,可谓是学无止境。
国外大牛Moien Tajik精心制作了2022年度ASP.NET Core开发者指南(ASP.NET Core Developer Roadmap),采用Xmind制作,原件在此:aspnetcore-developer-roadmap.xmind
该指南的目的是为了给读者心有个大概的轮廓。如果你对接下来要学习的内容感到困惑时,这张路线图将指导你,而不是鼓励你选择时髦的东西。你应该逐渐理解为什么一种工具比另一种工具更适合某些场景,并且记住时髦和新颖的东西并不总是意味着最适合这个工作。
简体中文
文字版本
学习先决条件
- C#
- .NET 6
- Entity Framework
- Dapper
- NHibernate
- ASP.NET Core
- SQL 基础知识
通用开发技能
- 学习GIT 并且在 GitHub 中创建与分享项目
- 掌握 HTTP(S) 协议与请求方法 (GET, POST, PUT, PATCH, DELETE, OPTIONS)
- 不要害怕使用 Google,Google搜索技巧
- 学习 dotnet CLI
- 阅读一些关于算法和数据结构的书籍
ASP.NET Core基础
- MVC
- REST
- Razor Pages
- Razor Components
- Middlewares
- Filters & Attributes
- Application Settings & Configurations
- Authentication
- Authorization
- IdentityServer
- Auth0
- OIDC
SOLID
- 单一责任原则 (SRP)
- 开放封闭原则 (OCP)
- 里氏替换原则 (LSP)
- 接口分离原则 (ISP)
- 依赖倒置原则 (DIP)
依赖注入
- DI容器
- Microsoft.Extensions.DependencyInjection
- AutoFac
- Ninject
- Castle Windsor
- Simple Injector
- 生命周期
- Scrutor
数据库
- 关系型
- SQL Server
- PostgreSQL
- MariaDB
- MySQL
- 云数据库
- CosmosDB
- DynamoDB
- 搜索引擎
- ElasticSearch
- Solr
- Sphinx
- NoSQL
- Redis
- MongoDB
- Apache Cassandra
- LiteDB
- RavenDB
- CouchDB
缓存
- 内存缓存
- 分布式缓存
- Redis
- StackExchange.Redis
- EasyCaching
- Memcached
- Redis
- Entity Framework 二级缓存
- EFSecondLevelCache.Core
- EntityFrameworkCore.Cacheable
日志
- 日志框架
- Serilog
- NLog
- 日志管理系统
- ELK Stack
- Sentry.io
- Loggly.com
- Elmah.io
API客户端和通信
- REST
- OData
- Sieve
- gRPC
- GraphQL
- HotChocolate
- GraphQL-dotnet
实时通信
- SignalR
- WebSockets
对象映射
- AutoMapper
- Mapster
- ExpressMapper
- AgileMapper
任务调度
- Background Service
- HangFire
- Quartz
- Coravel
测试
- 单元测试
- 框架
- xUnit
- NUnit
- MSTest
- 模拟
- Moq
- NSubstitute
- FakeItEasy
- 断言
- FluentAssertion
- Shouldly
- 框架
- 集成测试
- WebApplicationFactory
- TestServer
- 行为测试
- SpecFlow
- BDDfy
- LightBDD
- 端到端测试
- Selenium
- Puppeteer-Sharp
微服务
- 消息总线
- RabbitMQ
- Apache Kafka
- ActiveMQ
- Azure Service Bus
- NetMQ
- 消息队列
- MassTransit
- NServiceBus
- EasyNetQ
- CAP
- API 网关
- Ocelot
- 容器化
- Docker
- 服务编排
- Kubernetes
- Docker Swarm
- 反向代理
- YARP
- 其他
- Orleans
- Steeltoe
- Dapr
- Tye
持续集成与部署
- Github Actions
- Azure Pipelines
- Travis CI
- Jenkins
- Circle CI
- TeamCity
设计模式
- CQRS
- Decorator
- Strategy
- Builder
- Singleton
- Facade
客户端库
- Blazor
模板引擎
- Razor
- DotLiquid
- Scriban
- Fluid
进一步了解的类库
- MediatR
- Fluent Validation
- Polly
- Benchmark.NET
- NodaTime
- GenFu
- Swashbuckle
参考
- MoienTajik/AspNetCore-Developer-Roadmap
- adam-golab/react-developer-roadmap
- 从.net开发做到云原生运维(三)——.net core的学习路线
- alibaba-aero/technical-interview