ASP.NET Core开发者成长路线图(转载)

转载: https://www.cnblogs.com/enjoy233/p/AspNetCore_developer_roadmap.html

github: https://github.com/dot-nethub/AspNetCore-Developer-Roadmap

ASP.NET Core开发者路线图RoadMap


来源:
MoienTajik/AspNetCore-Developer-Roadmap.

2019年
ASP.NET Core开发者指南:

你可以在下面找到一张图,该图展示了你可以选取的路径及你想学习的库,从而成为一名 ASP.NET Core 开发者。“作为 ASP.NET Core 开发者,我接下来应该学习什么?”,我把这张图作为建议给每个问过我这一问题的人。

此外,本人还写了一篇相关的文章
.Net开发者必知的技术类RSS订阅指南.

免责声明

该指南的目的是为了给读者心有个大概的轮廓。如果你对接下来要学习的内容感到困惑,这张路线图将指导你,而不是鼓励你选择时髦的东西。

你应该逐渐理解为什么一种工具比另一种工具更适合某些场景,并且记住时髦和新颖的东西并不总是意味着最适合这个工作。

请给一个星星! ⭐

如果你喜欢或正在使用这个项目进行学习或引用在你的解决方案中,请给它一个星星。谢谢!

路线图

map

资源

  1. 先决条件

    *   [C#](https://www.pluralsight.com/paths/csharp)
    • Entity Framework
    • ASP.NET Core
    • SQL基础知识
  2. 通用开发技能

    *   学习GIT, 在GitHub中创建开源项目
    • 掌握HTTP(S)协议, 及其请求方法(GET, POST, PUT, PATCH, DELETE, OPTIONS)
    • 不要害怕使用 Google,
      Google搜索技巧
    • 学习
      dotnet CLI
    • 阅读一些关于算法和数据结构的书籍
  3. 依赖注入

    1.  DI容器
    
            *   [Microsoft.Extensions.DependencyInjection](https://docs.microsoft.com/zh-cn/aspnet/core/fundamentals/dependency-injection?view=aspnetcore-2.2)
    *   [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)
    1. 生命周期
    2. 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/)
    1. 云数据库

          *   [CosmosDB](https://docs.microsoft.com/zh-cn/azure/cosmos-db)
      • DynamoDB
    2. 搜索引擎

          *   [ElasticSearch](https://www.elastic.co/)
      • Solr
      • Sphinx
    3. NoSQL

          *   [MongoDB](https://docs.microsoft.com/zh-cn/aspnet/core/tutorials/first-mongo-app?view=aspnetcore-2.2&tabs=visual-studio)
      • Redis
      • Apache Cassandra
      • LiteDB
      • RavenDB
      • CouchDB
  5. 缓存

    1.  实体框架二级缓存
    
            1.  [EFSecondLevelCache.Core](https://github.com/VahidN/EFSecondLevelCache.Core)
    2.  [EntityFrameworkCore.Cacheable](https://github.com/SteffenMangold/EntityFrameworkCore.Cacheable)
    1. 分布式缓存

          1.  [Redis](https://redis.io/)
      1. Memcached
    2. 内存缓存
  6. 日志

    1.  日志框架
    
            *   [Serilog](https://github.com/serilog/serilog)
    *   [NLog](https://github.com/NLog/NLog)
    *   [Elmah](https://elmah.github.io/)
    1. 日志管理系统

          *   [Sentry.io](http://sentry.io)
      • Loggly.com
      • Elmah.io
  7. 模板引擎

    1.  [Razor](https://docs.microsoft.com/zh-cn/aspnet/core/mvc/views/razor?view=aspnetcore-2.2)
    1. DotLiquid
    2. Scriban
    3. Fluid
  8. 实时通信

    1.  [SignalR](https://docs.microsoft.com/en-us/aspnet/core/signalr)
  9. 对象映射

    *   [AutoMapper](https://github.com/AutoMapper/AutoMapper)
    • Mapster
    • AgileMapper
    • ExpressMapper
  10. API客户端

    1. REST

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

      *   [GraphQL-dotnet](https://github.com/graphql-dotnet/graphql-dotnet)
  11. 最好掌握

    • MediatR
      * Fluent Validation
      * Swashbuckle
      * Benchmark.NET
      * Polly
      * NodaTime
      * GenFu
  12. 测试

    1. 单元测试

      1.  测试框架
      
              *   [MSTest](https://docs.microsoft.com/zh-cn/dotnet/core/testing/unit-testing-with-mstest)
      • NUnit
      • xUnit
    2. 模拟工具

              *   [Moq](https://github.com/moq/moq4)
      • NSubstitute
      • FakeItEasy
    3. 断言工具

              *   [FluentAssertion](https://github.com/fluentassertions/fluentassertions)
      • Shouldly
        1. 行为测试
        • BDDfy
    • SpecFlow
    • LightBDD
      3. 集成测试

      *   [WebApplicationFactory](https://docs.microsoft.com/en-us/aspnet/core/test/integration-tests?view=aspnetcore-2.2)
    • TestServer
      4. 端到端测试

      *   [Selenium](https://www.automatetheplanet.com/webdriver-dotnetcore2/)
    • Puppeteer-Sharp
  13. 任务调度

    • HangFire
      * Coravel
      * Fluent Scheduler
  14. 微服务

    1. 消息队列

      *   [RabbitMQ](https://www.rabbitmq.com/tutorials/tutorial-one-dotnet.html)
    • Apache Kafka
    • ActiveMQ
    • Azure Service Bus
      2. 消息总线

      *   [MassTransit](https://github.com/MassTransit/MassTransit)
    • NServiceBus
    • CAP
  15. SOLID原则

    • 单一责任原则(SRP)
      * 开放封闭原则(OCP)
      * 里氏替换原则(LSP)
      * 接口分离原则(ISP)
      * 依赖倒置原则(DIP)
  16. 设计模式

    • CQRS
      * 装饰模式
      * 策略模式
      * 观察者模式
      * 建造者模式
      * 单例模式
      * 外观模式
      * 中介者模式
  17. 容器

    • Docker
      * Kubernetes (k8s)
  18. 机器学习

    • ML.net
      * Sci-Sharp

    • TensorFlow.NET
  19. 身份认证框架

    • Identity Server4 (IDS4)

总结

如果你认为该指南可以改进,请提交包含任何更新的 PR 并提交任何问题。此外,我将继续改进这个仓库,因此你可以 star 这个仓库以便于重新访问。

灵感来源 :
React Developer RoadMap

贡献

该指南是使用
Draw.io构建的。中文版项目文件为
aspnetcore-developer-roadmap.zh-Hans.xml。要修改它, 请打开 draw.io, 点击
Open Existing Diagram并选择项目中的
xml文件。它将为你渲染生成路线图,更新它,上传和更新自述文件中的图像并创建一个 PR(导出为400%的png图片,然后使用
Compressor.io压缩)。

  • 改进后提交 PR
  • 在Issues中讨论问题
  • 推广项目

相关链接:

ASP.NET Core 中文文档目录 - .NET_CORE_COMMUNITY - 博客园


转载于:https://www.cnblogs.com/rajesh/p/11088077.html

你可能感兴趣的:(ASP.NET Core开发者成长路线图(转载))