2023 ASP.NET Core 开发者指南

该指南的目的是为了给读者心有个大概的轮廓。如果你对接下来要学习的内容感到困惑,这张路线图将指导你,而不是鼓励你选择时髦的东西。你应该逐渐理解为什么一种工具比另一种工具更适合某些场景,并且记住时髦和新颖的东西并不总是意味着最适合这个工作。

说明 1. 先决条件

- [C#基础知识](https://learn.microsoft.com/zh-cn/dotnet/csharp/)

- [Entity Framework](https://learn.microsoft.com/zh-cn/ef/)

- [ASP.NET Core](https://learn.microsoft.com/zh-cn/aspnet/core/?view=aspnetcore-6.0)

-Dapper(https://github.com/StackExchange/Dapper)

-NHibernate(https://github.com/nhibernate/nhibernate-core)

- SQL基础知识

2. 通用开发技能

- 学习GIT, 在GitHub中创建开源项目

- 掌握HTTP(S)协议, 及其请求方法(GET, POST, PUT, PATCH, DELETE, OPTIONS)

- 不要害怕使用 Google, [Google搜索技巧](http://www.powersearchingwithgoogle.com/)

- 学习 [dotnet CLI](https://docs.microsoft.com/zh-cn/dotnet/core/tools)

- 阅读一些关于算法和数据结构的书籍

3. 依赖注入

1. DI容器

- [Microsoft.Extensions.DependencyInjection](https://docs.microsoft.com/zh-cn/aspnet/core/fundamentals/dependency-injection)

- [AutoFac](https://autofaccn.readthedocs.io/en/latest/integration/aspnetcore.html)

- [Ninject](http://www.ninject.org/)

- [StructureMap](https://github.com/structuremap/structuremap)

- [Castle Windsor](https://github.com/castleproject/Windsor)

2. [生命周期](https://docs.microsoft.com/zh-cn/aspnet/core/fundamentals/dependency-injection#service-lifetimes)

3. [Scrutor](https://github.com/khellang/Scrutor)

4. 数据库

1. 关系数据库

1. [SQL Server](https://www.microsoft.com/zh-cn/sql-server/sql-server-2017)

2. [PostgreSQL](https://www.postgresql.org/)

3. [MariaDB](https://mariadb.org/)

4. [MySQL](https://www.mysql.com/)

2. 云数据库

- [CosmosDB](https://docs.microsoft.com/zh-cn/azure/cosmos-db)

- [DynamoDB](https://aws.amazon.com/dynamodb/)

3. 搜索引擎

- [ElasticSearch](https://www.elastic.co/)

- [Solr](http://lucene.apache.org/solr/)

- [Sphinx](http://sphinxsearch.com/)

4. NoSQL

- [MongoDB](https://docs.microsoft.com/zh-cn/aspnet/core/tutorials/first-mongo-app)

- [Redis](https://redis.io/)

- [Apache Cassandra](http://cassandra.apache.org/)

- [LiteDB](https://github.com/mbdavid/LiteDB)

- [RavenDB](https://github.com/ravendb/ravendb)

- [CouchDB](http://couchdb.apache.org/)

5. 缓存

1. Entity Framework 二级缓存

1. [EFSecondLevelCache.Core](https://github.com/VahidN/EFSecondLevelCache.Core)

2. [EntityFrameworkCore.Cacheable](https://github.com/SteffenMangold/EntityFrameworkCore.Cacheable)

2. [分布式缓存](https://docs.microsoft.com/en-us/aspnet/core/performance/caching/distributed)

1. [Redis](https://redis.io/)

2. [Memcached](https://memcached.org/)

3. [内存缓存](https://docs.microsoft.com/en-us/aspnet/core/performance/caching/memory)

6. 日志

1. 日志框架

- [Serilog](https://github.com/serilog/serilog)

- [NLog](https://github.com/NLog/NLog)

- [Elmah](https://elmah.github.io/)

- [log4net](https://github.com/huorswords/Microsoft.Extensions.Logging.Log4Net.AspNetCore)

2. 日志管理系统

- [Sentry.io](http://sentry.io)

- [Loggly.com](https://loggly.com)

- [Elmah.io](http://elmah.io)

7. 模板引擎

1. [Razor](https://docs.microsoft.com/zh-cn/aspnet/core/mvc/views/razor)

2. [DotLiquid](https://github.com/dotliquid/dotliquid)

3. [Scriban](https://github.com/lunet-io/scriban)

4. [Fluid](https://github.com/sebastienros/fluid)

8. 实时通信

1. [SignalR](https://docs.microsoft.com/en-us/aspnet/core/signalr)

9. 对象映射

- [AutoMapper](https://github.com/AutoMapper/AutoMapper)

- [Mapster](https://github.com/MapsterMapper/Mapster)

- [AgileMapper](https://github.com/agileobjects/AgileMapper)

- [ExpressMapper](http://expressmapper.org/)

10. API客户端

1. REST

- [OData](https://blogs.msdn.microsoft.com/odatateam/2018/07/03/asp-net-core-odata-now-available/)

- [Sieve](https://github.com/Biarity/Sieve)

2. GraphQL

- [GraphQL-dotnet](https://github.com/graphql-dotnet/graphql-dotnet)

11. 最好掌握

- [MediatR](https://github.com/jbogard/MediatR)

- [Fluent Validation](https://github.com/JeremySkinner/FluentValidation)

- [Swashbuckle](https://github.com/domaindrivendev/Swashbuckle.AspNetCore)

- [Benchmark.NET](https://github.com/dotnet/BenchmarkDotNet)

- [Polly](https://github.com/App-vNext/Polly)

- [NodaTime](https://github.com/nodatime/nodatime)

- [GenFu](https://github.com/MisterJames/GenFu)

12. 测试

1. 单元测试

1. 测试框架

- [MSTest](https://docs.microsoft.com/zh-cn/dotnet/core/testing/unit-testing-with-mstest)

- [NUnit](https://docs.microsoft.com/zh-cn/dotnet/core/testing/unit-testing-with-nunit)

- [xUnit](https://docs.microsoft.com/zh-cn/dotnet/core/testing/unit-testing-with-dotnet-test)

2. 模拟工具

- [Moq](https://github.com/moq/moq4)

- [NSubstitute](https://github.com/nsubstitute/NSubstitute)

- [FakeItEasy](https://github.com/FakeItEasy/FakeItEasy)

3. 断言工具

- [FluentAssertion](https://github.com/fluentassertions/fluentassertions)

- [Shouldly](https://github.com/shouldly/shouldly)

2. 行为测试

- [BDDfy](https://github.com/TestStack/TestStack.BDDfy)

- [SpecFlow](https://github.com/techtalk/SpecFlow/tree/DotNetCore)

- [LightBDD](https://github.com/LightBDD/LightBDD)

3. 集成测试

- [WebApplicationFactory](https://docs.microsoft.com/en-us/aspnet/core/test/integration-tests)

- [TestServer](https://koukia.ca/integration-testing-in-asp-net-core-2-0-51d14ede3968)

4. 端到端测试

- [Selenium](https://www.automatetheplanet.com/webdriver-dotnetcore2/)

- [Puppeteer-Sharp](https://github.com/kblok/puppeteer-sharp)

13. 任务调度

- [HangFire](https://github.com/HangfireIO/Hangfire)

- [Coravel](https://github.com/jamesmh/coravel)

- [Fluent Scheduler](https://github.com/fluentscheduler/FluentScheduler)

[Quartz](https://github.com/quartznet/quartznet)

14. 微服务

1. 消息队列

- [RabbitMQ](https://www.rabbitmq.com/tutorials/tutorial-one-dotnet.html)

- [Apache Kafka](https://github.com/confluentinc/confluent-kafka-dotnet)

- [ActiveMQ](https://github.com/apache/activemq)

- [Azure Service Bus](https://docs.microsoft.com/zh-cn/azure/service-bus-messaging/service-bus-messaging-overview)

2. 消息总线

- [MassTransit](https://github.com/MassTransit/MassTransit)

- [NServiceBus](https://github.com/Particular/NServiceBus)

- [CAP](https://github.com/dotnetcore/CAP)

15. SOLID原则

- [单一责任原则(SRP)](https://www.dotnetcurry.com/software-gardening/1148/solid-single-responsibility-principle)

- [开放封闭原则(OCP)](https://www.dotnetcurry.com/software-gardening/1176/solid-open-closed-principle)

- [里氏替换原则(LSP)](https://www.dotnetcurry.com/software-gardening/1235/liskov-substitution-principle-lsp-solid-patterns)

- [依赖倒置原则(ISP)](https://www.dotnetcurry.com/software-gardening/1257/interface-segregation-principle-isp-solid-principle)

- [接口分离原则(DIP)](https://www.dotnetcurry.com/software-gardening/1284/dependency-injection-solid-principles)

16. 设计模式

- [CQRS](https://docs.microsoft.com/zh-cn/azure/architecture/patterns/cqrs)

- [装饰模式](https://www.dofactory.com/net/decorator-design-pattern)

- [策略模式](https://www.dofactory.com/net/strategy-design-pattern)

- [观察者模式](https://www.dofactory.com/net/observer-design-pattern)

- [建造者模式](https://www.dofactory.com/net/builder-design-pattern)

- [单例模式](https://www.dofactory.com/net/singleton-design-pattern)

- [外观模式](https://www.dofactory.com/net/facade-design-pattern)

- [中介者模式](https://www.dofactory.com/net/mediator-design-pattern)

地址

此文章是转载Github上的一个项目,地址:

https://github.com/MoienTajik/AspNetCore-Developer-Roadmap/blob/master/ReadMe.zh-Hans.md


,如果喜欢的给个小星星。



本文出自勇哥的网站《少有人走的路》wwww.skcircle.com,转载请注明出处!讨论可扫码加群:
本帖最后由 勇哥,很想停止 于 2024-05-31 08:13:09 编辑

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

会员中心
搜索
«    2025年4月    »
123456
78910111213
14151617181920
21222324252627
282930
网站分类
标签列表
最新留言
    热门文章 | 热评文章 | 随机文章
文章归档
友情链接
  • 订阅本站的 RSS 2.0 新闻聚合
  • 扫描加本站机器视觉QQ群,验证答案为:halcon勇哥的机器视觉
  • 点击查阅微信群二维码
  • 扫描加勇哥的非标自动化群,验证答案:C#/C++/VB勇哥的非标自动化群
  • 扫描加站长微信:站长微信:abc496103864
  • 扫描加站长QQ:
  • 扫描赞赏本站:
  • 留言板:

Powered By Z-BlogPHP 1.7.2

Copyright Your skcircle.com Rights Reserved.

鄂ICP备18008319号


站长QQ:496103864 微信:abc496103864