├── aspnetcore-developer-roadmap.png
├── aspnetcore-developer-roadmap.xmind
├── aspnetcore-developer-roadmap.ja.png
├── aspnetcore-developer-roadmap.ru.png
├── aspnetcore-developer-roadmap.uz.png
├── aspnetcore-developer-roadmap.ja.xmind
├── aspnetcore-developer-roadmap.ru.xmind
├── aspnetcore-developer-roadmap.uz.xmind
├── aspnetcore-developer-roadmap.zh-Hans.png
├── aspnetcore-developer-roadmap.zh-Hant.png
├── aspnetcore-developer-roadmap.zh-Hans.xmind
├── aspnetcore-developer-roadmap.zh-Hant.xmind
├── CONTRIBUTING.md
├── .github
└── FUNDING.yml
├── ReadMe.ja.md
├── ReadMe-tr.md
├── ReadMe.zh-Hant.md
├── ReadMe.zh-Hans.md
├── ReadMe.md
├── ReadMe.uz.md
└── ReadMe.ru.md
/aspnetcore-developer-roadmap.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MoienTajik/AspNetCore-Developer-Roadmap/HEAD/aspnetcore-developer-roadmap.png
--------------------------------------------------------------------------------
/aspnetcore-developer-roadmap.xmind:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MoienTajik/AspNetCore-Developer-Roadmap/HEAD/aspnetcore-developer-roadmap.xmind
--------------------------------------------------------------------------------
/aspnetcore-developer-roadmap.ja.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MoienTajik/AspNetCore-Developer-Roadmap/HEAD/aspnetcore-developer-roadmap.ja.png
--------------------------------------------------------------------------------
/aspnetcore-developer-roadmap.ru.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MoienTajik/AspNetCore-Developer-Roadmap/HEAD/aspnetcore-developer-roadmap.ru.png
--------------------------------------------------------------------------------
/aspnetcore-developer-roadmap.uz.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MoienTajik/AspNetCore-Developer-Roadmap/HEAD/aspnetcore-developer-roadmap.uz.png
--------------------------------------------------------------------------------
/aspnetcore-developer-roadmap.ja.xmind:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MoienTajik/AspNetCore-Developer-Roadmap/HEAD/aspnetcore-developer-roadmap.ja.xmind
--------------------------------------------------------------------------------
/aspnetcore-developer-roadmap.ru.xmind:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MoienTajik/AspNetCore-Developer-Roadmap/HEAD/aspnetcore-developer-roadmap.ru.xmind
--------------------------------------------------------------------------------
/aspnetcore-developer-roadmap.uz.xmind:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MoienTajik/AspNetCore-Developer-Roadmap/HEAD/aspnetcore-developer-roadmap.uz.xmind
--------------------------------------------------------------------------------
/aspnetcore-developer-roadmap.zh-Hans.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MoienTajik/AspNetCore-Developer-Roadmap/HEAD/aspnetcore-developer-roadmap.zh-Hans.png
--------------------------------------------------------------------------------
/aspnetcore-developer-roadmap.zh-Hant.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MoienTajik/AspNetCore-Developer-Roadmap/HEAD/aspnetcore-developer-roadmap.zh-Hant.png
--------------------------------------------------------------------------------
/aspnetcore-developer-roadmap.zh-Hans.xmind:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MoienTajik/AspNetCore-Developer-Roadmap/HEAD/aspnetcore-developer-roadmap.zh-Hans.xmind
--------------------------------------------------------------------------------
/aspnetcore-developer-roadmap.zh-Hant.xmind:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MoienTajik/AspNetCore-Developer-Roadmap/HEAD/aspnetcore-developer-roadmap.zh-Hant.xmind
--------------------------------------------------------------------------------
/CONTRIBUTING.md:
--------------------------------------------------------------------------------
1 | ## Contribution
2 |
3 | The roadmap is built using [xMind](https://www.xmind.net/). Project file can be found at `aspnetcore-developer-roadmap.xmind` file. To modify it, download and open xMind Zen from [here](https://www.xmind.net/download/), click **Open File** and choose `xmind` file with project. It will open the roadmap for you. Update it, upload and update the exported images from xMind in readme and create a PR.
4 |
5 | - Open a pull request with improvements
6 | - Discuss ideas in issues
7 | - Spread the word
--------------------------------------------------------------------------------
/.github/FUNDING.yml:
--------------------------------------------------------------------------------
1 | # These are supported funding model platforms
2 |
3 | github: MoienTajik
4 | patreon: # Replace with a single Patreon username
5 | open_collective: # aspnetcore-developer-roadmap
6 | ko_fi: # Replace with a single Ko-fi username
7 | tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel
8 | community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry
9 | liberapay: # Replace with a single Liberapay username
10 | issuehunt: # Replace with a single IssueHunt username
11 | otechie: # Replace with a single Otechie username
12 | custom: # ['https://www.buymeacoffee.com/MoienTajik']
13 |
--------------------------------------------------------------------------------
/ReadMe.ja.md:
--------------------------------------------------------------------------------
1 | # ASP.NET Core 開発者ロードマップ
2 |
3 | [](http://makeapullrequest.com)
4 | [](#backers)
5 | [](#sponsors)
6 |
7 | - [英語 ReadMe](ReadMe.md)
8 | - [中国語繁体字 ReadMe](ReadMe.zh-Hant.md)
9 | - [中国語簡体字 ReadMe](ReadMe.zh-Hans.md)
10 | - [トルコ語 ReadMe](ReadMe-tr.md)
11 | - [日本語 ReadMe](ReadMe.ja.md)
12 |
13 | > 2022年に [ASP.NET Core](https://docs.microsoft.com/aspnet/core) の開発者になるためのロードマップ:
14 |
15 | ASP.NET Coreの開発者になるために、どのような道をたどり、どのようなライブラリを習得すればよいかを示した表を以下に掲載します。このチャートは、「ASP.NET Core開発者として次に何を学ぶべきか?」と私に尋ねる人へのヒントとして作りました。
16 |
17 | ## 注意事項
18 |
19 | > このロードマップの目的は、風景についてのアイデアを提供することです。このロードマップは、次に何を学ぶべきか迷ったときに、流行りのものを選ぶように勧めるのではなく、あなたを導いてくれるでしょう。あるツールが他のツールよりも適している理由を理解し、流行が必ずしもその仕事に最適であるとは限らないことを覚えておいてください。
20 |
21 | ## スターをください! :star:
22 |
23 | もし、このプロジェクトが気に入ったり、解決策を学ぶため、または始めるために使用している場合は、スターを付けてください。ありがとうございます!
24 |
25 | ## ロードマップ
26 |
27 | 
28 |
29 | ## リソース
30 |
31 | 1. 前提を学ぶ
32 |
33 | - [C#](https://www.pluralsight.com/paths/csharp)
34 | - [.NET 6](https://devblogs.microsoft.com/dotnet/announcing-net-6)
35 | - [Entity Framework](https://www.pluralsight.com/search?q=entity%20framework%20core)
36 | - [Dapper](https://github.com/StackExchange/Dapper)
37 | - [NHibernate](https://github.com/nhibernate/nhibernate-core)
38 | - [ASP.NET Core](https://www.pluralsight.com/search?q=asp.net%20core)
39 | - SQL 基礎知識
40 |
41 | 2. 一般的な開発技術
42 |
43 | - Gitを学び、GitHubでリポジトリを作って、あなたのコードを他の人とシェアする
44 | - HTTP(S) プロトコル、リクエストメソッド (GET, POST, PUT, PATCH, DELETE, OPTIONS) を知る
45 | - Googleや [Power Searching with Google](http://www.powersearchingwithgoogle.com) を使うことを恐れるなかれ
46 | - [dotnet CLI](https://docs.microsoft.com/dotnet/core/tools) を学ぶ
47 | - アルゴリズムやデータ構造に関する本を読む
48 |
49 | 3. ASP.NET Core 基礎知識
50 |
51 | - [MVC](https://docs.microsoft.com/en-us/aspnet/core/mvc/overview?view=aspnetcore-6.0)
52 | - [REST](https://docs.microsoft.com/en-us/aspnet/core/tutorials/first-web-api?view=aspnetcore-6.0&tabs=visual-studio)
53 | - [Razor Pages](https://docs.microsoft.com/en-us/aspnet/core/razor-pages/?view=aspnetcore-6.0&tabs=visual-studio)
54 | - [Razor Components](https://docs.microsoft.com/en-us/aspnet/core/blazor/components/?view=aspnetcore-6.0)
55 | - [Middlewares](https://docs.microsoft.com/en-us/aspnet/core/fundamentals/middleware/?view=aspnetcore-6.0)
56 | - [Filters & Attributes](https://docs.microsoft.com/en-us/aspnet/core/mvc/controllers/filters?view=aspnetcore-6.0)
57 | - [Application Settings & Configurations](https://docs.microsoft.com/en-us/aspnet/core/fundamentals/configuration/?view=aspnetcore-6.0)
58 | - [Authentication](https://docs.microsoft.com/en-us/aspnet/core/security/authentication/?view=aspnetcore-6.0)
59 | - [Authorization](https://docs.microsoft.com/en-us/aspnet/core/security/authorization/introduction?view=aspnetcore-6.0)
60 | - [IdentityServer](https://identityserver4.readthedocs.io/en/latest)
61 | - [Auth0](https://auth0.com/docs)
62 | - [OIDC](https://openid.net/connect)
63 |
64 | 4. SOLID
65 |
66 | - [単一責任の原則 / Single Responsibility Principle (SRP)](https://www.dotnetcurry.com/software-gardening/1148/solid-single-responsibility-principle)
67 | - [オープン・クローズドの原則 / Open-Closed Principle (OCP)](https://www.dotnetcurry.com/software-gardening/1176/solid-open-closed-principle)
68 | - [リスコフの置換原則 / Liskov Substitution Principle (LSP)](https://www.dotnetcurry.com/software-gardening/1235/liskov-substitution-principle-lsp-solid-patterns)
69 | - [インターフェース分離の原則 / Interface Segregation Principle (ISP)](https://www.dotnetcurry.com/software-gardening/1257/interface-segregation-principle-isp-solid-principle)
70 | - [依存関係逆転の原則 / Dependency Inversion Principle (DIP)](https://www.dotnetcurry.com/software-gardening/1284/dependency-injection-solid-principles)
71 |
72 | 5. 依存性の注入 (DI)
73 |
74 | 1. DI コンテナ
75 | - [Microsoft.Extensions.DependencyInjection](https://docs.microsoft.com/aspnet/core/fundamentals/dependency-injection)
76 | - [AutoFac](https://autofaccn.readthedocs.io/en/latest/integration/aspnetcore.html)
77 | - [Ninject](http://www.ninject.org)
78 | - [Castle Windsor](https://github.com/castleproject/Windsor)
79 |
80 | - [Simple Injector](https://github.com/simpleinjector/SimpleInjector)
81 | 2. [ライフサイクル](https://docs.microsoft.com/aspnet/core/fundamentals/dependency-injection#service-lifetimes)
82 | 3. [Scrutor](https://github.com/khellang/Scrutor)
83 |
84 | 6. データベース
85 |
86 | 1. 関係データベース(RDB)
87 | 1. [SQL Server](https://www.microsoft.com/sql-server/sql-server-2019)
88 | 2. [PostgreSQL](https://www.postgresql.org)
89 | 3. [MariaDB](https://mariadb.org)
90 | 4. [MySQL](https://www.mysql.com)
91 | 2. クラウドデータベース
92 | - [CosmosDB](https://docs.microsoft.com/azure/cosmos-db)
93 | - [DynamoDB](https://aws.amazon.com/dynamodb)
94 | 3. 検索エンジン
95 | - [ElasticSearch](https://www.elastic.co)
96 | - [Solr](http://lucene.apache.org/solr)
97 | - [Sphinx](http://sphinxsearch.com)
98 | 4. NoSQL
99 | - [Redis](https://redis.io)
100 | - [MongoDB](https://docs.microsoft.com/aspnet/core/tutorials/first-mongo-app)
101 | - [Apache Cassandra](http://cassandra.apache.org)
102 | - [LiteDB](https://github.com/mbdavid/LiteDB)
103 | - [RavenDB](https://github.com/ravendb/ravendb)
104 | - [CouchDB](http://couchdb.apache.org)
105 |
106 | 7. キャッシュ
107 |
108 | 1. [キャッシュメモリ](https://docs.microsoft.com/aspnet/core/performance/caching/memory)
109 | 2. [分散キャッシュ](https://docs.microsoft.com/aspnet/core/performance/caching/distributed)
110 | 1. [Redis](https://redis.io/)
111 | 1. [StackExchange.Redis](https://stackexchange.github.io/StackExchange.Redis)
112 | 2. [EasyCaching](https://github.com/dotnetcore/EasyCaching)
113 | 2. [Memcached](https://memcached.org)
114 | 3. Entity Framework セカンドレベルキャッシュ
115 | 1. [EFCoreSecondLevelCacheInterceptor](https://github.com/VahidN/EFCoreSecondLevelCacheInterceptor)
116 | 2. [EntityFrameworkCore.Cacheable](https://github.com/SteffenMangold/EntityFrameworkCore.Cacheable)
117 |
118 | 8. ロギング
119 |
120 | 1. ロギングフレームワーク
121 | - [Serilog](https://github.com/serilog/serilog)
122 | - [NLog](https://github.com/NLog/NLog)
123 | 2. ログ管理システム
124 | - [ELK Stack](https://www.elastic.co/what-is/elk-stack)
125 | - [Sentry.io](http://sentry.io)
126 | - [Loggly.com](https://loggly.com)
127 | - [Elmah.io](http://elmah.io)
128 |
129 | 9. API クライアント & 通信
130 |
131 | 1. REST
132 | - [OData](https://devblogs.microsoft.com/odata/experimenting-with-odata-in-asp-net-core-3-1)
133 | - [Sieve](https://github.com/Biarity/Sieve)
134 | 2. [gRPC](https://docs.microsoft.com/en-us/aspnet/core/grpc)
135 | 3. GraphQL
136 | - [HotChocolate](https://github.com/ChilliCream/hotchocolate)
137 | - [GraphQL-dotnet](https://github.com/graphql-dotnet/graphql-dotnet)
138 |
139 | 10. リアルタイム通信
140 |
141 | - [SignalR](https://docs.microsoft.com/aspnet/core/signalr)
142 | - [WebSockets](https://docs.microsoft.com/en-us/aspnet/core/fundamentals/websockets)
143 |
144 | 11. オブジェクトマッピング
145 |
146 | - [AutoMapper](https://github.com/AutoMapper/AutoMapper)
147 | - [Mapster](https://github.com/MapsterMapper/Mapster)
148 | - [ExpressMapper](http://expressmapper.org/)
149 | - [AgileMapper](https://github.com/agileobjects/AgileMapper)
150 |
151 | 12. タスクスケジューリング
152 |
153 | - [Background Service](https://docs.microsoft.com/en-us/aspnet/core/fundamentals/host/hosted-services)
154 | - [HangFire](https://github.com/HangfireIO/Hangfire)
155 | - [Quartz](https://github.com/quartznet/quartznet)
156 | - [Coravel](https://github.com/jamesmh/coravel)
157 |
158 | 13. テスト
159 |
160 | 1. 単体テスト (Unit Testing)
161 | 1. フレームワーク
162 | - [xUnit](https://docs.microsoft.com/dotnet/core/testing/unit-testing-with-dotnet-test)
163 | - [NUnit](https://docs.microsoft.com/dotnet/core/testing/unit-testing-with-nunit)
164 | - [MSTest](https://docs.microsoft.com/dotnet/core/testing/unit-testing-with-mstest)
165 | 2. モック
166 | - [Moq](https://github.com/moq/moq4)
167 | - [NSubstitute](https://github.com/nsubstitute/NSubstitute)
168 | - [FakeItEasy](https://github.com/FakeItEasy/FakeItEasy)
169 | 3. アサーション
170 | - [FluentAssertion](https://github.com/fluentassertions/fluentassertions)
171 | - [Shouldly](https://github.com/shouldly/shouldly)
172 | 2. 結合テスト (Integration Testing)
173 | - [WebApplicationFactory](https://docs.microsoft.com/aspnet/core/test/integration-tests)
174 | - [TestServer](https://koukia.ca/integration-testing-in-asp-net-core-2-0-51d14ede3968)
175 | 3. 振る舞いのテスト (Behavior Testing)
176 | - [SpecFlow](https://github.com/techtalk/SpecFlow/tree/DotNetCore)
177 | - [BDDfy](https://github.com/TestStack/TestStack.BDDfy)
178 | - [LightBDD](https://github.com/LightBDD/LightBDD)
179 | 4. E2E テスト
180 | - [Selenium](https://www.hanselman.com/blog/real-browser-integration-testing-with-selenium-standalone-chrome-and-aspnet-core-21)
181 | - [Puppeteer-Sharp](https://github.com/kblok/puppeteer-sharp)
182 |
183 | 14. マイクロサービス
184 |
185 | 1. メッセージブローカー
186 | - [RabbitMQ](https://www.rabbitmq.com/tutorials/tutorial-one-dotnet.html)
187 | - [Apache Kafka](https://github.com/confluentinc/confluent-kafka-dotnet)
188 | - [ActiveMQ](https://github.com/apache/activemq)
189 | - [Azure Service Bus](https://docs.microsoft.com/azure/service-bus-messaging/service-bus-messaging-overview)
190 | - [NetMQ](https://github.com/zeromq/netmq)
191 | 2. メッセージバス
192 | - [MassTransit](https://github.com/MassTransit/MassTransit)
193 | - [NServiceBus](https://github.com/Particular/NServiceBus)
194 | - [EasyNetQ](https://github.com/EasyNetQ/EasyNetQ)
195 | - [CAP](https://github.com/dotnetcore/CAP)
196 | 3. API ゲートウェイ
197 | - [Ocelot](https://github.com/ThreeMammals/Ocelot)
198 | 4. コンテナ
199 | - [Docker](https://www.docker.com)
200 | 5. オーケストレーション
201 | - [Kubernetes](https://kubernetes.io)
202 | - [Docker Swarm](https://docs.docker.com/engine/swarm)
203 | 6. リバースプロキシ
204 | - [YARP](https://github.com/microsoft/reverse-proxy)
205 | 7. その他
206 | - [Orleans](https://github.com/dotnet/orleans)
207 | - [Steeltoe](https://steeltoe.io)
208 | - [Dapr](https://github.com/dapr/dapr)
209 | - [Tye](https://github.com/dotnet/tye)
210 |
211 | 15. CI/CD (継続的インテグレーション/継続的デリバリー)
212 | - [Github Actions](https://github.com/features/actions)
213 | - [Azure Pipelines](https://azure.microsoft.com/en-us/services/devops/pipelines)
214 | - [Travis CI](https://travis-ci.org)
215 | - [Jenkins](https://www.jenkins.io)
216 | - [Circle CI](https://circleci.com)
217 | - [TeamCity](https://www.jetbrains.com/teamcity)
218 |
219 | 16. デザインパターン
220 |
221 | - [CQRS](https://docs.microsoft.com/azure/architecture/patterns/cqrs)
222 | - [Decorator](https://www.dofactory.com/net/decorator-design-pattern)
223 | - [Strategy](https://www.dofactory.com/net/strategy-design-pattern)
224 | - [Builder](https://www.dofactory.com/net/builder-design-pattern)
225 | - [Singleton](https://www.dofactory.com/net/singleton-design-pattern)
226 | - [Facade](https://www.dofactory.com/net/facade-design-pattern)
227 |
228 | 17. クライアントライブラリ
229 | - [Blazor](https://dotnet.microsoft.com/apps/aspnet/web-apps/blazor)
230 |
231 | 18. テンプレートエンジン
232 |
233 | - [Razor](https://docs.microsoft.com/aspnet/core/mvc/views/razor)
234 | - [DotLiquid](https://github.com/dotliquid/dotliquid)
235 | - [Scriban](https://github.com/lunet-io/scriban)
236 | - [Fluid](https://github.com/sebastienros/fluid)
237 |
238 | 19. 知っておくと良いこと
239 |
240 | - [MediatR](https://github.com/jbogard/MediatR)
241 | - [Fluent Validation](https://github.com/JeremySkinner/FluentValidation)
242 | - [Polly](https://github.com/App-vNext/Polly)
243 | - [Benchmark.NET](https://github.com/dotnet/BenchmarkDotNet)
244 | - [NodaTime](https://github.com/nodatime/nodatime)
245 | - [GenFu](https://github.com/MisterJames/GenFu)
246 | - [Swashbuckle](https://github.com/domaindrivendev/Swashbuckle.AspNetCore)
247 |
248 | ## まとめ
249 |
250 | もし、このロードマップが改善の余地があると思うのであれば、是非、PRを作成して、更新やissueを提出してください。また、このロードマップを改善し続けますので、このリポジトリにスターを付けて再訪問してください。
251 |
252 | 参考 : [React Developer RoadMap](https://github.com/adam-golab/react-developer-roadmap)
253 |
254 | ## コントリビューション
255 |
256 | ロードマップは[xMind](https://www.xmind.net/)を使って構築されています。プロジェクトファイルは `aspnetcore-developer-roadmap.xmind` ファイルにあります (日本語の場合は`aspnetcore-developer-roadmap.ja.xmind` )。これを修正するには、[ここ](https://www.xmind.net/download/) から xMind Zen をダウンロードして開き、**Open File** をクリックして、プロジェクトと一緒に `xmind` ファイルを選択します。ロードマップが開かれます。それを更新し、xMind からエクスポートされた画像を readme にアップロードして更新し、PR を作成します。
257 |
258 | - 改善点をまとめたプルリクエストを開く
259 | - issueでアイデアを議論する
260 | - 情報を広める
261 |
262 | ## ライセンス
263 |
264 | [](https://creativecommons.org/licenses/by-nc-sa/4.0/)
265 |
--------------------------------------------------------------------------------
/ReadMe-tr.md:
--------------------------------------------------------------------------------
1 | # ASP.NET Core Geliştirici Yol Haritası
2 |
3 | [](http://makeapullrequest.com)
4 | [](#destekçiler)
5 | [](#sponsor)
6 |
7 | - [Yol Haritası](https://raw.githubusercontent.com/MoienTajik/AspNetCore-Developer-Roadmap/master/aspnetcore-developer-roadmap.png)
8 | - [Basitleştirilmiş Çince'de beni oku](ReadMe.zh-Hans.md)
9 | - [Geleneksel Çince'de beni oku](ReadMe.zh-Hant.md)
10 |
11 | > 2022'de [ASP.NET Core](https://docs.microsoft.com/aspnet/core) geliştirici yol haritası:
12 |
13 | ASP.NET Core geliştiricisi olmak için izleyebileceğiniz yolları ve öğrenmek isteyeceğiniz kitaplıkları gösteren tabloyu aşağıda bulabilirsiniz. Bu çizelgeyi bana "Bir ASP.NET Core geliştiricisi olarak bundan sonra ne öğrenmeliyim?" diye soran herkese bir ipucu olarak hazırladım.
14 |
15 | ## Sorumluluk Kabul Edilmez
16 |
17 | > Bu çizelgenin amacı size yol haritası hakkında bir fikir vermektir. Yol haritası, bir sonraki adımda ne öğreneceğiniz konusunda kafanız karıştıysa sizi popüler ve trend olanı seçmeye teşvik etmek yerine size rehberlik edecektir. Bir aracın neden bazı durumlar için diğerinden daha uygun olduğuna dair bir fikir geliştirmelisiniz. Popüler ve trend araçlar, iş için her zaman en uygun anlamına gelmeyebilir.
18 |
19 | ## Yıldız Ver! :star:
20 |
21 | Bir şeyler öğrenmek veya takıldığınız problemi çözüme kavuşturmak için bu projeyi beğendiyseniz/kullanıyorsanız, lütfen ona bir yıldız verin. Teşekkürler!
22 | ## Yol Haritası
23 |
24 | 
25 |
26 | ## Kaynaklar
27 |
28 | 1. Ön koşulları öğrenin
29 |
30 | - [C#](https://www.pluralsight.com/paths/csharp)
31 | - [.NET 6](https://devblogs.microsoft.com/dotnet/announcing-net-6)
32 | - [Entity Framework](https://www.pluralsight.com/search?q=entity%20framework%20core)
33 | - [Dapper](https://github.com/StackExchange/Dapper)
34 | - [NHibernate](https://github.com/nhibernate/nhibernate-core)
35 | - [ASP.NET Core](https://www.pluralsight.com/search?q=asp.net%20core)
36 | - SQL temel bilgiler
37 |
38 | 2. Genel Gelişim Becerileri
39 |
40 | - GIT öğrenin, GitHub'da birkaç depo oluşturun, kodunuzu başkalarıyla paylaşın
41 | - HTTP(S) protokolünü, istek yöntemlerini (GET, POST, PUT, PATCH, DELETE, OPTIONS) bilin
42 | - Google kullanmaktan korkmayın, [Google ile Güçlü Arama](http://www.powersearchingwithgoogle.com)
43 | - [dotnet CLI](https://docs.microsoft.com/dotnet/core/tools) öğrenin
44 | - Algoritmalar ve veri yapıları hakkında birkaç kitap okuyun
45 |
46 | 3. ASP.NET Core Temelleri
47 |
48 | - [MVC](https://docs.microsoft.com/en-us/aspnet/core/mvc/overview?view=aspnetcore-6.0)
49 | - [REST](https://docs.microsoft.com/en-us/aspnet/core/tutorials/first-web-api?view=aspnetcore-6.0&tabs=visual-studio)
50 | - [Razor Sayfaları](https://docs.microsoft.com/en-us/aspnet/core/razor-pages/?view=aspnetcore-6.0&tabs=visual-studio)
51 | - [Razor Bileşenleri](https://docs.microsoft.com/en-us/aspnet/core/blazor/components/?view=aspnetcore-6.0)
52 | - [Ara Yazılımlar](https://docs.microsoft.com/en-us/aspnet/core/fundamentals/middleware/?view=aspnetcore-6.0)
53 | - [Filtreler ve Özellikler](https://docs.microsoft.com/en-us/aspnet/core/mvc/controllers/filters?view=aspnetcore-6.0)
54 | - [Uygulama Ayarları ve Konfigürasyonlar](https://docs.microsoft.com/en-us/aspnet/core/fundamentals/configuration/?view=aspnetcore-6.0)
55 | - [Kimlik Doğrulama](https://docs.microsoft.com/en-us/aspnet/core/security/authentication/?view=aspnetcore-6.0)
56 | - [Yetkilendirme](https://docs.microsoft.com/en-us/aspnet/core/security/authorization/introduction?view=aspnetcore-6.0)
57 | - [IdentityServer](https://identityserver4.readthedocs.io/en/latest)
58 | - [Auth0](https://auth0.com/docs)
59 | - [OIDC](https://openid.net/connect)
60 |
61 | 4. SOLID
62 |
63 | - [Tek Sorumluluk İlkesi (SRP)](https://www.dotnetcurry.com/software-gardening/1148/solid-single-responsibility-principle)
64 | - [Açık-Kapalı Prensibi (OCP)](https://www.dotnetcurry.com/software-gardening/1176/solid-open-closed-principle)
65 | - [Liskov Substitution Prensibi (LSP)](https://www.dotnetcurry.com/software-gardening/1235/liskov-substitution-principle-lsp-solid-patterns)
66 | - [Arayüz Ayrımı Prensibi (ISP)](https://www.dotnetcurry.com/software-gardening/1257/interface-segregation-principle-isp-solid-principle)
67 | - [Bağımlılık Tersine Çevirme Prensibi (DIP)](https://www.dotnetcurry.com/software-gardening/1284/dependency-injection-solid-principles)
68 |
69 | 5. Bağımlılık Enjeksiyonu
70 |
71 | 1. DI Containers
72 | - [Microsoft.Extensions.DependencyInjection](https://docs.microsoft.com/aspnet/core/fundamentals/dependency-injection)
73 | - [AutoFac](https://autofaccn.readthedocs.io/en/latest/integration/aspnetcore.html)
74 | - [Ninject](http://www.ninject.org)
75 | - [Castle Windsor](https://github.com/castleproject/Windsor)
76 | - [Simple Injector](https://github.com/simpleinjector/SimpleInjector)
77 | 2. [Life Cycles](https://docs.microsoft.com/aspnet/core/fundamentals/dependency-injection#service-lifetimes)
78 | 3. [Scrutor](https://github.com/khellang/Scrutor)
79 |
80 | 6. Veritabanları
81 |
82 | 1. İlişkisel
83 | 1. [SQL Server](https://www.microsoft.com/sql-server/sql-server-2019)
84 | 2. [PostgreSQL](https://www.postgresql.org)
85 | 3. [MariaDB](https://mariadb.org)
86 | 4. [MySQL](https://www.mysql.com)
87 | 2. Bulut Veritabanları
88 | - [CosmosDB](https://docs.microsoft.com/azure/cosmos-db)
89 | - [DynamoDB](https://aws.amazon.com/dynamodb)
90 | 3. Arama Motorları
91 | - [ElasticSearch](https://www.elastic.co)
92 | - [Solr](http://lucene.apache.org/solr)
93 | - [Sphinx](http://sphinxsearch.com)
94 | 4. NoSQL
95 | - [Redis](https://redis.io)
96 | - [MongoDB](https://docs.microsoft.com/aspnet/core/tutorials/first-mongo-app)
97 | - [Apache Cassandra](http://cassandra.apache.org)
98 | - [LiteDB](https://github.com/mbdavid/LiteDB)
99 | - [RavenDB](https://github.com/ravendb/ravendb)
100 | - [CouchDB](http://couchdb.apache.org)
101 |
102 | 7. Önbelleğe Almak
103 |
104 | 1. [Bellek Önbelleği](https://docs.microsoft.com/aspnet/core/performance/caching/memory)
105 | 2. [Dağıtılmış Önbellek](https://docs.microsoft.com/aspnet/core/performance/caching/distributed)
106 | 1. [Redis](https://redis.io/)
107 | 1. [StackExchange.Redis](https://stackexchange.github.io/StackExchange.Redis)
108 | 2. [EasyCaching](https://github.com/dotnetcore/EasyCaching)
109 | 2. [Memcached](https://memcached.org)
110 | 3. Entity Framework 2. Seviye Önbellek
111 | 1. [EFCoreSecondLevelCacheInterceptor](https://github.com/VahidN/EFCoreSecondLevelCacheInterceptor)
112 | 2. [EntityFrameworkCore.Cacheable](https://github.com/SteffenMangold/EntityFrameworkCore.Cacheable)
113 |
114 | 8. Logging
115 |
116 | 1. Log Frameworks
117 | - [Serilog](https://github.com/serilog/serilog)
118 | - [NLog](https://github.com/NLog/NLog)
119 | 2. Log Yönetim Sistemi
120 | - [ELK Stack](https://www.elastic.co/what-is/elk-stack)
121 | - [Sentry.io](http://sentry.io)
122 | - [Loggly.com](https://loggly.com)
123 | - [Elmah.io](http://elmah.io)
124 |
125 | 9. API İstemcileri ve İletişim
126 |
127 | 1. REST
128 | - [OData](https://devblogs.microsoft.com/odata/experimenting-with-odata-in-asp-net-core-3-1)
129 | - [Sieve](https://github.com/Biarity/Sieve)
130 | 2. [gRPC](https://docs.microsoft.com/en-us/aspnet/core/grpc)
131 | 3. GraphQL
132 | - [HotChocolate](https://github.com/ChilliCream/hotchocolate)
133 | - [GraphQL-dotnet](https://github.com/graphql-dotnet/graphql-dotnet)
134 |
135 | 10. Gerçek Zamanlı İletişim
136 |
137 | - [SignalR](https://docs.microsoft.com/aspnet/core/signalr)
138 | - [WebSockets](https://docs.microsoft.com/en-us/aspnet/core/fundamentals/websockets)
139 |
140 | 11. Nesne Eşleme
141 |
142 | - [AutoMapper](https://github.com/AutoMapper/AutoMapper)
143 | - [Mapster](https://github.com/MapsterMapper/Mapster)
144 | - [ExpressMapper](http://expressmapper.org/)
145 | - [AgileMapper](https://github.com/agileobjects/AgileMapper)
146 |
147 | 12. Görev Zamanlama
148 |
149 | - [Background Service](https://docs.microsoft.com/en-us/aspnet/core/fundamentals/host/hosted-services)
150 | - [HangFire](https://github.com/HangfireIO/Hangfire)
151 | - [Quartz](https://github.com/quartznet/quartznet)
152 | - [Coravel](https://github.com/jamesmh/coravel)
153 |
154 | 13. Test
155 |
156 | 1. Birim Testi
157 | 1. Frameworks
158 | - [xUnit](https://docs.microsoft.com/dotnet/core/testing/unit-testing-with-dotnet-test)
159 | - [NUnit](https://docs.microsoft.com/dotnet/core/testing/unit-testing-with-nunit)
160 | - [MSTest](https://docs.microsoft.com/dotnet/core/testing/unit-testing-with-mstest)
161 | 2. Mocking
162 | - [Moq](https://github.com/moq/moq4)
163 | - [NSubstitute](https://github.com/nsubstitute/NSubstitute)
164 | - [FakeItEasy](https://github.com/FakeItEasy/FakeItEasy)
165 | 3. Assertion
166 | - [FluentAssertion](https://github.com/fluentassertions/fluentassertions)
167 | - [Shouldly](https://github.com/shouldly/shouldly)
168 | 2. Entegrasyon Testi
169 | - [WebApplicationFactory](https://docs.microsoft.com/aspnet/core/test/integration-tests)
170 | - [TestServer](https://koukia.ca/integration-testing-in-asp-net-core-2-0-51d14ede3968)
171 | 3. Davranış Testi
172 | - [SpecFlow](https://github.com/techtalk/SpecFlow/tree/DotNetCore)
173 | - [BDDfy](https://github.com/TestStack/TestStack.BDDfy)
174 | - [LightBDD](https://github.com/LightBDD/LightBDD)
175 | 4. E2E Testi
176 | - [Selenium](https://www.hanselman.com/blog/real-browser-integration-testing-with-selenium-standalone-chrome-and-aspnet-core-21)
177 | - [Puppeteer-Sharp](https://github.com/kblok/puppeteer-sharp)
178 |
179 | 14. Mikro Hizmetler
180 |
181 | 1. Mesaj Aracısı
182 | - [RabbitMQ](https://www.rabbitmq.com/tutorials/tutorial-one-dotnet.html)
183 | - [Apache Kafka](https://github.com/confluentinc/confluent-kafka-dotnet)
184 | - [ActiveMQ](https://github.com/apache/activemq)
185 | - [Azure Service Bus](https://docs.microsoft.com/azure/service-bus-messaging/service-bus-messaging-overview)
186 | - [NetMQ](https://github.com/zeromq/netmq)
187 | 2. Message-Bus
188 | - [MassTransit](https://github.com/MassTransit/MassTransit)
189 | - [NServiceBus](https://github.com/Particular/NServiceBus)
190 | - [EasyNetQ](https://github.com/EasyNetQ/EasyNetQ)
191 | - [CAP](https://github.com/dotnetcore/CAP)
192 | 3. API Geçiti
193 | - [Ocelot](https://github.com/ThreeMammals/Ocelot)
194 | 4. Containerization
195 | - [Docker](https://www.docker.com)
196 | 5. Orkestrasyon
197 | - [Kubernetes](https://kubernetes.io)
198 | - [Docker Swarm](https://docs.docker.com/engine/swarm)
199 | 6. Ters Proxy
200 | - [YARP](https://github.com/microsoft/reverse-proxy)
201 | 7. Diğer
202 | - [Orleans](https://github.com/dotnet/orleans)
203 | - [Steeltoe](https://steeltoe.io)
204 | - [Dapr](https://github.com/dapr/dapr)
205 | - [Tye](https://github.com/dotnet/tye)
206 |
207 | 15. Sürekli Entegrasyon ve Teslimat
208 | - [Github Actions](https://github.com/features/actions)
209 | - [Azure Pipelines](https://azure.microsoft.com/en-us/services/devops/pipelines)
210 | - [Travis CI](https://travis-ci.org)
211 | - [Jenkins](https://www.jenkins.io)
212 | - [Circle CI](https://circleci.com)
213 | - [TeamCity](https://www.jetbrains.com/teamcity)
214 |
215 | 16. Tasarım Desenleri
216 |
217 | - [CQRS](https://docs.microsoft.com/azure/architecture/patterns/cqrs)
218 | - [Decorator](https://www.dofactory.com/net/decorator-design-pattern)
219 | - [Strategy](https://www.dofactory.com/net/strategy-design-pattern)
220 | - [Builder](https://www.dofactory.com/net/builder-design-pattern)
221 | - [Singleton](https://www.dofactory.com/net/singleton-design-pattern)
222 | - [Facade](https://www.dofactory.com/net/facade-design-pattern)
223 |
224 | 17. İstemci Taraflı Kitaplıklar
225 | - [Blazor](https://dotnet.microsoft.com/apps/aspnet/web-apps/blazor)
226 |
227 | 18. Şablon Motorları
228 |
229 | - [Razor](https://docs.microsoft.com/aspnet/core/mvc/views/razor)
230 | - [DotLiquid](https://github.com/dotliquid/dotliquid)
231 | - [Scriban](https://github.com/lunet-io/scriban)
232 | - [Fluid](https://github.com/sebastienros/fluid)
233 |
234 | 19. Bunları da bilmen iyi olur
235 |
236 | - [MediatR](https://github.com/jbogard/MediatR)
237 | - [Fluent Validation](https://github.com/JeremySkinner/FluentValidation)
238 | - [Polly](https://github.com/App-vNext/Polly)
239 | - [Benchmark.NET](https://github.com/dotnet/BenchmarkDotNet)
240 | - [NodaTime](https://github.com/nodatime/nodatime)
241 | - [GenFu](https://github.com/MisterJames/GenFu)
242 | - [Swashbuckle](https://github.com/domaindrivendev/Swashbuckle.AspNetCore)
243 |
244 | ## Geliştirmek için
245 |
246 | Yol haritasının iyileştirilebileceğini düşünüyorsanız, lütfen güncellemeleri içeren bir PR açın ve sorunları gönderin. Ayrıca, yol haritasını geliştirmeye devam edeceğim bu yüzden tekrar ziyaret etmek için bu depoya yıldız ekleyebilirsiniz.
247 |
248 | Fikir : [React Geliştirici Yol Haritası](https://github.com/adam-golab/react-developer-roadmap)
249 |
250 | ## Katkı
251 |
252 | Katkıda bulunmak ister misiniz? Topluluk geri bildirimlerini ve katkılarını teşvik ediyoruz. Lütfen [katkıda bulunan yönergelerimize](https://github.com/MoienTajik/AspNetCore-Developer-Roadmap/blob/master/CONTRIBUTING.md) uyun.
253 |
254 | ## Jenerik
255 |
256 | ### Destekçiler
257 |
258 | Tüm destekçilerimize teşekkür ederiz! 🙏 [[Destekçi ol!](https://opencollective.com/AspNetCore-Developer-Roadmap#backer)]
259 |
260 |
261 |
262 | ### Sponsor
263 |
264 | Sponsor olarak bu projeye destek olun. Logonuz, web sitenize bir bağlantı ile burada görünecektir.[[Sponsor ol!](https://opencollective.com/AspNetCore-Developer-Roadmap#sponsor)]
265 |
266 |
267 |
268 |
269 |
270 | ## Lisans
271 |
272 | [](https://creativecommons.org/licenses/by-nc-sa/4.0/)
273 |
--------------------------------------------------------------------------------
/ReadMe.zh-Hant.md:
--------------------------------------------------------------------------------
1 | # ASP.NET Core 開發人員指南
2 |
3 | [](http://makeapullrequest.com)
4 | [](https://github.com/MoienTajik/AspNetCore-Developer-Roadmap/blob/master/ReadMe.md#backers)
5 | [](https://github.com/MoienTajik/AspNetCore-Developer-Roadmap/blob/master/ReadMe.md#sponsors)
6 |
7 | - [英文 ReadMe](ReadMe.md)
8 | - [繁體中文 ReadMe](ReadMe.zh-Hant.md)
9 | - [简体中文 ReadMe](ReadMe.zh-Hans.md)
10 | - [土耳其文 ReadMe](ReadMe-tr.md)
11 | - [日文 ReadMe](ReadMe.ja.md)
12 |
13 | > 2023年 [ASP.NET Core](https://docs.microsoft.com/zh-tw/aspnet/core/) 開發人員指南:
14 |
15 | 以下您會看到一張圖表,說明可以採取的學習路徑以及要成為 ASP.NET Core 開發人員所要學習的函式庫。我將此圖表作為提示,給每個問我「作為 ASP.NET Core 開發人員,接下來應該學習什麼?」的人。
16 |
17 | ## 免責聲明
18 |
19 | > 這份指南的目的是為了給讀者心裡有個大概的輪廓。如果您對接下來要學習的內容感到困惑時,這張路線指南將引導您,而不是鼓勵您選擇時髦和前衛的東西。您應該逐漸理解為什麼一種工具比另一種工具更適合某些場景,並且記住時髦和前衛的東西並不總是意味著最適合完成工作。
20 |
21 | ## 請給一個星星! :star:
22 |
23 | 如果您喜歡或正在使用這個專案進行學習或開始您的解決方案,請給它一個星星。謝謝!
24 |
25 | ## 學習指南
26 |
27 | 
28 |
29 | ## 學習資源
30 |
31 | 1. 一般開發技能 (General Development Skills)
32 |
33 | - 學習 [Git](https://git-scm.com/doc) 並且在 [GitHub](https://docs.github.com/en/get-started/quickstart) 中建立與分享您的專案
34 | - 掌握 [HTTP(S) 協定](https://developer.mozilla.org/en-US/docs/Web/HTTP/Overview)與請求方法 (例如 [GET](https://developer.mozilla.org/en-US/docs/Web/HTTP/Methods/GET)、[POST](https://developer.mozilla.org/en-US/docs/Web/HTTP/Methods/POST)、[PUT](https://developer.mozilla.org/en-US/docs/Web/HTTP/Methods/PUT)、[PATCH](https://developer.mozilla.org/en-US/docs/Web/HTTP/Methods/PATCH)、[DELETE](https://developer.mozilla.org/en-US/docs/Web/HTTP/Methods/DELETE)、[OPTIONS](https://developer.mozilla.org/en-US/docs/Web/HTTP/Methods/OPTIONS) 等)
35 | - 什麼是 [TLS](https://www.cloudflare.com/zh-tw/learning/ssl/transport-layer-security-tls/)?
36 | - 什麼是 [SSL](https://www.cloudflare.com/zh-tw/learning/ssl/what-is-ssl/)?
37 | - 不要害怕使用 [Google 搜尋技巧](http://www.powersearchingwithgoogle.com)
38 | - 開始使用 [ChatGPT](https://chat.openai.com/chat)
39 | - [閱讀一些關於演算法和資料結構的書籍](https://www.tenlong.com.tw/categories/algorithms-data-structures)
40 |
41 | 2. C#
42 |
43 | - [C#](https://www.pluralsight.com/paths/c-10)
44 | - [.NET 7](https://devblogs.microsoft.com/dotnet/announcing-dotnet-7)
45 | - 學習 [.NET CLI](https://learn.microsoft.com/zh-tw/dotnet/core/tools/)
46 |
47 | 3. SQL 基礎知識 (SQL Fundamentals)
48 |
49 | - [Pluralsight 學習路徑:從 SQL Server 使用 T-SQL 查詢資料](https://www.pluralsight.com/paths/querying-data-with-t-sql-from-sql-server)
50 |
51 | 4. ASP.NET Core 基礎 (ASP.NET Core Basics)
52 |
53 | - [MVC](https://docs.microsoft.com/zh-tw/aspnet/core/mvc/overview)
54 | - [REST](https://docs.microsoft.com/zh-tw/aspnet/core/tutorials/first-web-api)
55 | - [Application Settings & Configurations](https://docs.microsoft.com/zh-tw/aspnet/core/fundamentals/configuration)
56 | - [Middlewares](https://docs.microsoft.com/zh-tw/aspnet/core/fundamentals/middleware/)
57 | - [Filters & Attributes](https://docs.microsoft.com/zh-tw/aspnet/core/mvc/controllers/filters)
58 | - [Authentication](https://docs.microsoft.com/zh-tw/aspnet/core/security/authentication/)
59 | - [Authorization](https://docs.microsoft.com/zh-tw/aspnet/core/security/authorization/introduction)
60 | - [IdentityServer](https://identityserver4.readthedocs.io/en/latest)
61 | - [OpenIddict](https://github.com/openiddict/openiddict-core)
62 | - [Auth0](https://auth0.com/docs)
63 | - [OIDC](https://openid.net/connect)
64 | - [Razor Pages](https://docs.microsoft.com/zh-tw/aspnet/core/razor-pages/)
65 | - [Razor Components](https://docs.microsoft.com/zh-tw/aspnet/core/blazor/components/)
66 | - 教學課程
67 | - [Pluralsight 學習路徑:ASP.NET Core 6](https://www.pluralsight.com/paths/aspnet-core-6)
68 | - [Pluralsight 學習路徑:ASP.NET Core 6 Web API](https://www.pluralsight.com/paths/aspnet-core-6-web-api)
69 |
70 | 5. SOLID
71 |
72 | - [單一職責原則(SRP)](https://www.dotnetcurry.com/software-gardening/1148/solid-single-responsibility-principle)
73 | - [開放封閉原則(OCP)](https://www.dotnetcurry.com/software-gardening/1176/solid-open-closed-principle)
74 | - [里氏替換原則(LSP)](https://www.dotnetcurry.com/software-gardening/1235/liskov-substitution-principle-lsp-solid-patterns)
75 | - [介面隔離原則(ISP)](https://www.dotnetcurry.com/software-gardening/1257/interface-segregation-principle-isp-solid-principle)
76 | - [依賴反轉原則(DIP)](https://www.dotnetcurry.com/software-gardening/1284/dependency-injection-solid-principles)
77 |
78 | 6. 物件關聯對應 (ORM)
79 |
80 | - [Entity Framework Core](https://learn.microsoft.com/zh-tw/ef/core/)
81 | - 教學課程
82 | - [Pluralsight 學習路徑:EF Core 6](https://www.pluralsight.com/paths/ef-core-6)
83 | - [Dapper](https://github.com/StackExchange/Dapper)
84 | - [RepoDB](https://github.com/mikependon/RepoDB)
85 |
86 | 7. 相依注入 (Dependency Injection)
87 |
88 | 1. 注入容器
89 | - [Microsoft.Extensions.DependencyInjection](https://docs.microsoft.com/zh-tw/aspnet/core/fundamentals/dependency-injection)
90 | - [AutoFac](https://autofaccn.readthedocs.io/en/latest/integration/aspnetcore.html)
91 | - [Ninject](http://www.ninject.org)
92 | - [Castle Windsor](https://github.com/castleproject/Windsor)
93 | - [Simple Injector](https://github.com/simpleinjector/SimpleInjector)
94 | 2. [生命週期](https://docs.microsoft.com/zh-tw/aspnet/core/fundamentals/dependency-injection#service-lifetimes)
95 | 3. [Scrutor](https://github.com/khellang/Scrutor)
96 |
97 | 8. 資料庫 (Databases)
98 |
99 | 1. 關聯式
100 | - [SQL Server](https://www.microsoft.com/zh-tw/sql-server/sql-server-2022)
101 | - [PostgreSQL](https://www.postgresql.org)
102 | - [MariaDB](https://mariadb.org)
103 | - [MySQL](https://www.mysql.com)
104 | 2. 搜尋引擎
105 | - [ElasticSearch](https://www.elastic.co)
106 | - [Solr](http://lucene.apache.org/solr)
107 | - [Sphinx](http://sphinxsearch.com)
108 | 3. NoSQL
109 | - 落地
110 | - [Redis](https://redis.io)
111 | - [MongoDB](https://docs.microsoft.com/zh-tw/aspnet/core/tutorials/first-mongo-app)
112 | - [Apache Cassandra](http://cassandra.apache.org)
113 | - [LiteDB](https://github.com/mbdavid/LiteDB)
114 | - [RavenDB](https://github.com/ravendb/ravendb)
115 | - [CouchDB](http://couchdb.apache.org)
116 | - 雲端
117 | - [CosmosDB](https://docs.microsoft.com/azure/cosmos-db)
118 | - [DynamoDB](https://aws.amazon.com/dynamodb)
119 |
120 | 9. 快取 (Caching)
121 |
122 | - [記憶體快取](https://docs.microsoft.com/zh-tw/aspnet/core/performance/caching/memory)
123 | - [分散式快取](https://docs.microsoft.com/zh-tw/aspnet/core/performance/caching/distributed)
124 | 1. [Redis](https://redis.io/)
125 | 1. [StackExchange.Redis](https://stackexchange.github.io/StackExchange.Redis)
126 | 2. [EasyCaching](https://github.com/dotnetcore/EasyCaching)
127 | 2. [Memcached](https://memcached.org)
128 | - 應用程式層級
129 | - [回應快取](https://learn.microsoft.com/zh-tw/aspnet/core/performance/caching/response)
130 | - [輸出快取](https://learn.microsoft.com/zh-tw/aspnet/core/performance/caching/output?source=recommendations)
131 | - [Entity Framework 第二層快取](https://github.com/VahidN/EFCoreSecondLevelCacheInterceptor)
132 |
133 | 10. 日誌框架 (Log Frameworks)
134 |
135 | - [Serilog](https://github.com/serilog/serilog)
136 | - [NLog](https://github.com/NLog/NLog)
137 |
138 | 11. API 用戶端及通訊 (API Clients & Communications)
139 |
140 | 1. REST
141 | - [Sieve](https://github.com/Biarity/Sieve)
142 | - [OData](https://learn.microsoft.com/zh-tw/odata/webapi/first-odata-api)
143 | - [REPR (Request EndPoint Response) Pattern](https://ardalis.com/mvc-controllers-are-dinosaurs-embrace-api-endpoints/)
144 | - [Minimal APIs](https://learn.microsoft.com/zh-tw/aspnet/core/fundamentals/minimal-apis/overview)
145 | - [Fast Endpoints](https://github.com/FastEndpoints/FastEndpoints)
146 | - [Ardalis.Endpoints](https://github.com/ardalis/ApiEndpoints)
147 | 2. [gRPC](https://docs.microsoft.com/zh-tw/aspnet/core/grpc)
148 | 3. GraphQL
149 | - [HotChocolate](https://github.com/ChilliCream/hotchocolate)
150 | - [GraphQL-dotnet](https://github.com/graphql-dotnet/graphql-dotnet)
151 |
152 | 12. 即時通訊
153 |
154 | - [SignalR](https://docs.microsoft.com/zh-tw/aspnet/core/signalr/introduction)
155 | - [WebSockets](https://docs.microsoft.com/zh-tw/aspnet/core/fundamentals/websockets)
156 |
157 | 13. 物件對應 (Object Mapping)
158 |
159 | - [AutoMapper](https://github.com/AutoMapper/AutoMapper)
160 | - [Mapster](https://github.com/MapsterMapper/Mapster)
161 | - [ExpressMapper](http://expressmapper.org/)
162 | - [AgileMapper](https://github.com/agileobjects/AgileMapper)
163 |
164 | 14. 背景工作排程 (Background Task Scheduler)
165 |
166 | - [Native BackgroundService](https://docs.microsoft.com/zh-tw/aspnet/core/fundamentals/host/hosted-services)
167 | - [HangFire](https://github.com/HangfireIO/Hangfire)
168 | - [Quartz](https://github.com/quartznet/quartznet)
169 | - [Coravel](https://github.com/jamesmh/coravel)
170 |
171 | 15. 測試 (Testing)
172 |
173 | 1. 單元測試
174 | - 框架
175 | - [xUnit](https://learn.microsoft.com/zh-tw/dotnet/core/testing/unit-testing-with-dotnet-test)
176 | - [NUnit](https://learn.microsoft.com/zh-tw/dotnet/core/testing/unit-testing-with-nunit)
177 | - [MSTest](https://learn.microsoft.com/zh-tw/dotnet/core/testing/unit-testing-with-mstest)
178 | - 模擬
179 | - [Moq](https://github.com/moq/moq4)
180 | - [NSubstitute](https://github.com/nsubstitute/NSubstitute)
181 | - [FakeItEasy](https://github.com/FakeItEasy/FakeItEasy)
182 | - 判斷
183 | - [FluentAssertion](https://github.com/fluentassertions/fluentassertions)
184 | - [Shouldly](https://github.com/shouldly/shouldly)
185 | - 假資料產生器
186 | - [Bogus](https://github.com/bchavez/Bogus)
187 | - [AutoFixture](https://github.com/AutoFixture/AutoFixture)
188 | - [GenFu](https://github.com/MisterJames/GenFu)
189 | 2. 整合測試
190 | - [WebApplicationFactory](https://learn.microsoft.com/zh-tw/aspnet/core/test/integration-tests)
191 | - [TestServer](https://koukia.ca/integration-testing-in-asp-net-core-2-0-51d14ede3968)
192 | 3. 快照測試
193 | - [Verify](https://github.com/VerifyTests/Verify)
194 | 4. 行為測試
195 | - [SpecFlow](https://github.com/techtalk/SpecFlow/tree/DotNetCore)
196 | - [BDDfy](https://github.com/TestStack/TestStack.BDDfy)
197 | - [LightBDD](https://github.com/LightBDD/LightBDD)
198 | 5. 端對端測試
199 | - [Selenium](https://www.hanselman.com/blog/real-browser-integration-testing-with-selenium-standalone-chrome-and-aspnet-core-21)
200 | - [Puppeteer-Sharp](https://github.com/kblok/puppeteer-sharp)
201 | 6. 效能測試
202 | - [K6](https://github.com/grafana/k6)
203 | - [JMeter](https://github.com/apache/jmeter)
204 | - [Crank](https://github.com/dotnet/crank)
205 | - [Bombardier](https://github.com/codesenberg/bombardier)
206 |
207 | 16. 微服務 (Microservices)
208 |
209 | 1. 訊息代理人
210 | - [RabbitMQ](https://www.rabbitmq.com/tutorials/tutorial-one-dotnet.html)
211 | - [Apache Kafka](https://github.com/confluentinc/confluent-kafka-dotnet)
212 | - [ActiveMQ](https://github.com/apache/activemq)
213 | - [Azure Service Bus](https://learn.microsoft.com/zh-tw/azure/service-bus-messaging/service-bus-messaging-overview)
214 | - [NetMQ](https://github.com/zeromq/netmq)
215 | 2. 訊息匯流排
216 | - [MassTransit](https://github.com/MassTransit/MassTransit)
217 | - [NServiceBus](https://github.com/Particular/NServiceBus)
218 | - [EasyNetQ](https://github.com/EasyNetQ/EasyNetQ)
219 | - [CAP](https://github.com/dotnetcore/CAP)
220 | 3. API 閘道
221 | - [Ocelot](https://github.com/ThreeMammals/Ocelot)
222 | - [YARP](https://github.com/microsoft/reverse-proxy)
223 | 4. 容器化
224 | - [Docker](https://www.docker.com)
225 | 5. 協調流程
226 | - [Kubernetes](https://kubernetes.io)
227 | - [Rancher](https://github.com/rancher/rancher)
228 | - [Kubectl](https://kubernetes.io/docs/reference/kubectl)
229 | - [K9s](https://github.com/derailed/k9s)
230 | - [Docker Swarm](https://docs.docker.com/engine/swarm)
231 | 6. 其他
232 | - [Orleans](https://github.com/dotnet/orleans)
233 | - [Proto.Actor](https://github.com/asynkron/protoactor-dotnet)
234 | - [Steeltoe](https://steeltoe.io)
235 | - [Dapr](https://github.com/dapr/dapr)
236 | - [Tye](https://github.com/dotnet/tye)
237 |
238 | 17. 持續整合與部署 (Continuous Integration & Continuous Delivery)
239 |
240 | - [GitHub Actions](https://github.com/features/actions)
241 | - [Gitlab CI](https://docs.gitlab.com/ee/ci)
242 | - [Azure Pipelines](https://azure.microsoft.com/zh-tw/products/devops/pipelines/)
243 | - [Travis CI](https://travis-ci.org)
244 | - [Jenkins](https://www.jenkins.io)
245 | - [Circle CI](https://circleci.com)
246 | - [TeamCity](https://www.jetbrains.com/teamcity)
247 |
248 | 18. 設計模式 (Design Patterns)
249 |
250 | - 分類
251 | - [創建型模式](https://learn.microsoft.com/zh-tw/azure/architecture/patterns/cqrs)
252 | - [結構型模式](https://www.dofactory.com/net/decorator-design-pattern)
253 | - [行為型模式](https://www.dofactory.com/net/strategy-design-pattern)
254 | - 教學課程
255 | - [Pluralsight 學習路徑:C# 的設計模式](https://www.pluralsight.com/paths/design-patterns-in-c)
256 |
257 | 19. 監控/記錄/追蹤/警示 (Monitoring/Logging/Tracing/Alerting)
258 |
259 | - 監控
260 | - 地端
261 | - [Prometheus](https://github.com/prometheus/prometheus)
262 | - [Grafana](https://github.com/grafana/grafana)
263 | - 雲端
264 | - [Datadog](https://www.datadoghq.com)
265 | - 記錄
266 | - 地端
267 | - [ELK Stack](https://www.elastic.co/what-is/elk-stack)
268 | - [Seq](https://datalust.co/seq)
269 | - 雲端
270 | - [Datadog](https://docs.datadoghq.com/logs)
271 | - 追蹤
272 | - 地端
273 | - [OpenTelemetry](https://github.com/open-telemetry/opentelemetry-dotnet)
274 | - [Jaeger](https://github.com/jaegertracing/jaeger)
275 | - [Zipkin](https://github.com/openzipkin/zipkin)
276 | - 雲端
277 | - [Datadog](https://docs.datadoghq.com/tracing)
278 | - 警示
279 | - 地端
280 | - [Zabbix](https://www.zabbix.com)
281 | - [Alertmanager](https://github.com/prometheus/alertmanager)
282 | - 雲端
283 | - [Datadog](https://docs.datadoghq.com/monitors)
284 |
285 | 20. 用戶端 .NET (Client-Side .NET)
286 |
287 | - 範本引擎
288 | - [Razor](https://docs.microsoft.com/aspnet/core/mvc/views/razor)
289 | - [DotLiquid](https://github.com/dotliquid/dotliquid)
290 | - [Scriban](https://github.com/lunet-io/scriban)
291 | - [Fluid](https://github.com/sebastienros/fluid)
292 | - 框架
293 | - [Blazor](https://dotnet.microsoft.com/apps/aspnet/web-apps/blazor)
294 | - [.NET MAUI](https://github.com/dotnet/maui)
295 |
296 | 21. 進一步學習 (Good to Know)
297 |
298 | - [MediatR](https://github.com/jbogard/MediatR)
299 | - [Fluent Validation](https://github.com/JeremySkinner/FluentValidation)
300 | - [Polly](https://github.com/App-vNext/Polly)
301 | - [Benchmark.NET](https://github.com/dotnet/BenchmarkDotNet)
302 | - [NodaTime](https://github.com/nodatime/nodatime)
303 | - [Swashbuckle](https://github.com/domaindrivendev/Swashbuckle.AspNetCore)
304 | - [Nuke](https://github.com/nuke-build/nuke)
305 | - [EF Core Bulk Extensions](https://github.com/borisdj/EFCore.BulkExtensions)
306 |
307 | ## 總結 (Wrap Up)
308 |
309 | 如果您認為本指南可以改進,請提交包含任何更新的PR或提交任何Issue。此外,我將會持續改進這個存放庫,因此您可以按下 star 這個存放庫以便於重新訪問。
310 |
311 | 靈感來源: [React Developer RoadMap](https://github.com/adam-golab/react-developer-roadmap)
312 |
313 | ## 貢獻 (Contribution)
314 |
315 | 想做點貢獻嗎?我們鼓勵社群回饋與貢獻。
316 |
317 | 本指南是使用 [xMind](https://www.xmind.net/) 來建構。繁體中文版專案檔案為`aspnetcore-developer-roadmap.zh-Hant.xmind`。要修改它,在[此處](https://www.xmind.net/download/)下載 xMind,點選 **Open File** 並選擇 `xmind` 檔案,它將為您開啟此指南,更新它之後,上傳和更新 `ReadMe.zh-Hant.md` 中的圖片並建立一個PR。
318 |
319 | - 修改後提交PR
320 | - 在Issues中討論問題
321 | - 推廣此專案
322 |
323 | ## 許可協議 (License)
324 |
325 | 
本著作係採用創用 CC 姓名標示-非商業性-相同方式分享 4.0 國際 授權條款授權.
326 |
--------------------------------------------------------------------------------
/ReadMe.zh-Hans.md:
--------------------------------------------------------------------------------
1 | # ASP.NET Core开发者指南
2 |
3 | [](http://makeapullrequest.com)
4 | [](https://github.com/MoienTajik/AspNetCore-Developer-Roadmap/blob/master/ReadMe.md#backers)
5 | [](https://github.com/MoienTajik/AspNetCore-Developer-Roadmap/blob/master/ReadMe.md#sponsors)
6 |
7 | - [英文 ReadMe](ReadMe.md)
8 | - [繁體中文 ReadMe](ReadMe.zh-Hant.md)
9 | - [简体中文 ReadMe](ReadMe.zh-Hans.md)
10 | - [土耳其文 ReadMe](ReadMe-tr.md)
11 | - [日文 ReadMe](ReadMe.ja.md)
12 |
13 | > 2024年 [ASP.NET Core](https://docs.microsoft.com/zh-cn/aspnet/core/) 开发人员指南:
14 |
15 | 以下您会看到一张图,说明可以采取的学习路径以及要成为ASP.NET Core开发人员所要学习的库。我将此图作为提示,给每个问我「作为ASP.NET Core 开发人员,接下来应该学习什么?」的人。
16 |
17 | ## 免责声明
18 |
19 | > 这份指南的目的是为了给读者心里有个大概的轮廓。如果您对接下来要学习的内容感到困惑时,这张路线指南将引导您,而不是鼓励您选择时髦和前卫的东西。您应该逐渐理解为什么一种工具比另一种工具更适合某些场景,并且记住时髦和前卫的东西并不总是意味着最适合完成工作。
20 |
21 | ## 请给一个星星! :star:
22 |
23 | 如果您喜欢或正在使用这个项目进行学习或开始您的解决方案,请给它一个星星。谢谢!
24 |
25 | ## 路线图
26 |
27 | 
28 |
29 | ## 学习资源
30 |
31 | 1. 通用开发技能
32 |
33 | - 学习 [Git](https://git-scm.com/doc),在 [GitHub](https://docs.github.com/en/get-started/quickstart) 上创建几个仓库,与你的代码分享给其他人。
34 | - 了解 [HTTP(S) 协议](https://developer.mozilla.org/en-US/docs/Web/HTTP/Overview)、请求方法([GET](https://developer.mozilla.org/en-US/docs/Web/HTTP/Methods/GET)、[POST](https://developer.mozilla.org/en-US/docs/Web/HTTP/Methods/POST)、[PUT](https://developer.mozilla.org/en-US/docs/Web/HTTP/Methods/PUT)、[PATCH](https://developer.mozilla.org/en-US/docs/Web/HTTP/Methods/PATCH)、[DELETE](https://developer.mozilla.org/en-US/docs/Web/HTTP/Methods/DELETE)、[OPTIONS](https://developer.mozilla.org/en-US/docs/Web/HTTP/Methods/OPTIONS) 等)。
35 | - 什么是 [TLS](https://www.cloudflare.com/learning/ssl/transport-layer-security-tls/)?
36 | - 什么是 [SSL](https://www.cloudflare.com/learning/ssl/what-is-ssl/)?
37 | - 不要害怕使用 Google,[Google 强力搜索](http://www.powersearchingwithgoogle.com)。
38 | - 开始使用 [ChatGPT](https://chat.openai.com/chat)。
39 | - 读几本关于算法和数据结构的书](https://www.interviewbit.com/blog/data-structures-and-algorithms-books)。
40 |
41 | 2. C#
42 |
43 | - [C# 12](https://www.pluralsight.com/paths/c-12)
44 | - [.NET 8](https://devblogs.microsoft.com/dotnet/announcing-dotnet-8)
45 | - [.NET CLI](https://docs.microsoft.com/dotnet/core/tools)
46 | - [StyleCop 规则](https://github.com/DotNetAnalyzers/StyleCopAnalyzers/blob/master/DOCUMENTATION.md)
47 |
48 | 3. SQL 基础知识
49 |
50 | - 教程 📚
51 | - [Pluralsight 学习路径:使用 T-SQL 查询 SQL Server 数据](https://www.pluralsight.com/paths/querying-data-with-t-sql-from-sql-server)
52 |
53 | 4. ASP.NET Core 基础
54 |
55 | - [MVC](https://docs.microsoft.com/en-us/aspnet/core/mvc/overview)
56 | - [Minimal APIs](https://learn.microsoft.com/en-us/aspnet/core/fundamentals/minimal-apis)
57 | - [REST](https://docs.microsoft.com/en-us/aspnet/core/tutorials/first-web-api)
58 | - [Application Settings & Configurations](https://docs.microsoft.com/en-us/aspnet/core/fundamentals/configuration)
59 | - [Middlewares](https://docs.microsoft.com/en-us/aspnet/core/fundamentals/middleware)
60 | - [Filters & Attributes](https://docs.microsoft.com/en-us/aspnet/core/mvc/controllers/filters)
61 | - [Authentication](https://docs.microsoft.com/en-us/aspnet/core/security/authentication)
62 | - [Authorization](https://docs.microsoft.com/en-us/aspnet/core/security/authorization/introduction)
63 | - [IdentityServer](https://identityserver4.readthedocs.io/en/latest)
64 | - [Duende IdentityServer](https://duendesoftware.com)
65 | - [OpenIddict](https://github.com/openiddict/openiddict-core)
66 | - [Auth0](https://auth0.com/docs)
67 | - [OIDC](https://openid.net/connect)
68 | - [Razor Pages](https://docs.microsoft.com/en-us/aspnet/core/razor-pages)
69 | - [Razor Components](https://docs.microsoft.com/en-us/aspnet/core/blazor/components)
70 | - 教程 📚
71 | - [From Zero to Hero: REST APIs in .NET](https://dometrain.com/course/from-zero-to-hero-rest-apis-in-asp-net-core/?affcode=1115529_alq6yoqt)
72 | - [From Zero to Hero: Minimal APIs in .NET with C#](https://dometrain.com/course/from-zero-to-hero-minimal-apis-in-net-with-c/?affcode=1115529_alq6yoqt)
73 |
74 | 5. 五个面向对象设计原则(SOLID):
75 |
76 | - [Single Responsibility Principle (SRP)](https://www.dotnetcurry.com/software-gardening/1148/solid-single-responsibility-principle)
77 | - [Open-Closed Principle (OCP)](https://www.dotnetcurry.com/software-gardening/1176/solid-open-closed-principle)
78 | - [Liskov Substitution Principle (LSP)](https://www.dotnetcurry.com/software-gardening/1235/liskov-substitution-principle-lsp-solid-patterns)
79 | - [Interface Segregation Principle (ISP)](https://www.dotnetcurry.com/software-gardening/1257/interface-segregation-principle-isp-solid-principle)
80 | - [Dependency Inversion Principle (DIP)](https://www.dotnetcurry.com/software-gardening/1284/dependency-injection-solid-principles)
81 |
82 | 6. 面向对象关系映射(ORM)
83 |
84 | - [Entity Framework Core](https://learn.microsoft.com/en-us/ef/core)
85 | - 教程 📚
86 | - [From Zero to Hero: Entity Framework Core in .NET](https://dometrain.com/course/from-zero-to-hero-entity-framework-core-in-dotnet/?affcode=1115529_alq6yoqt)
87 | - [Dapper](https://github.com/StackExchange/Dapper)
88 |
89 | 7. 依赖注入(Dependency Injection)
90 |
91 | 1. 依赖注入容器(DI Containers)
92 | - [Microsoft.Extensions.DependencyInjection](https://docs.microsoft.com/aspnet/core/fundamentals/dependency-injection)
93 | - [AutoFac](https://autofaccn.readthedocs.io/en/latest/integration/aspnetcore.html)
94 | 2. 依赖注入开源库:[Scrutor](https://github.com/khellang/Scrutor)
95 |
96 | - 教程📚
97 | - [From Zero to Hero: Dependency Injection in .NET](https://dometrain.com/course/from-zero-to-hero-dependency-injection-in-net/?affcode=1115529_alq6yoqt)
98 |
99 | 8. 数据库(Databases)
100 |
101 | 1. 关系数据库(Relational)
102 | - [SQL Server](https://www.microsoft.com/sql-server/sql-server-2019)
103 | - [PostgreSQL](https://www.postgresql.org)
104 | - [MariaDB](https://mariadb.org)
105 | - [MySQL](https://www.mysql.com)
106 | 2. 搜索引擎(Search Engines)
107 | - [ElasticSearch](https://www.elastic.co)
108 | - [Meilisearch](https://github.com/meilisearch/meilisearch)
109 | - [ManticoreSearch](https://github.com/manticoresoftware/manticoresearch)
110 | - [OpenSearch](https://github.com/opensearch-project/OpenSearch)
111 | 3. NoSQL
112 | - 本地部署(On-Premises)
113 | - [Redis](https://redis.io)
114 | - [MongoDB](https://docs.microsoft.com/aspnet/core/tutorials/first-mongo-app)
115 | - [Apache Cassandra](http://cassandra.apache.org)
116 | - [LiteDB](https://github.com/mbdavid/LiteDB)
117 | - [RavenDB](https://github.com/ravendb/ravendb)
118 | - [CouchDB](http://couchdb.apache.org)
119 | - 云部署(Cloud)
120 | - [CosmosDB](https://docs.microsoft.com/azure/cosmos-db)
121 | - [DynamoDB](https://aws.amazon.com/dynamodb)
122 |
123 | 9. 缓存(Caching)
124 |
125 | - 内存缓存 [(Memory Cache)](https://docs.microsoft.com/aspnet/core/performance/caching/memory)
126 | - 分布式缓存 [(Distributed Cache)](https://docs.microsoft.com/aspnet/core/performance/caching/distributed)
127 | 1. [Redis](https://redis.io/)
128 | 1. [StackExchange.Redis](https://stackexchange.github.io/StackExchange.Redis)
129 | 2. [EasyCaching](https://github.com/dotnetcore/EasyCaching)
130 | 2. [Memcached](https://memcached.org)
131 | - 应用程序级缓存 (Application-Level)
132 | - 响应缓存(Response Caching)
133 | 1. [Built in](https://learn.microsoft.com/en-us/aspnet/core/performance/caching/response)
134 | 2. [Marvin.Cache.Headers](https://github.com/KevinDockx/HttpCacheHeaders)
135 | - 输出缓存[(Output Caching)](https://learn.microsoft.com/en-us/aspnet/core/performance/caching/output?source=recommendations)
136 | - Entity Framework 二级缓存[(Entity Framework 2nd Level Cache)](https://github.com/VahidN/EFCoreSecondLevelCacheInterceptor)
137 |
138 | 10. 日志框架(Log Frameworks)
139 |
140 | - [Serilog](https://github.com/serilog/serilog)
141 | - [NLog](https://github.com/NLog/NLog)
142 | - 教程 📚
143 | - [From Zero to Hero: Logging in .NET](https://dometrain.com/course/from-zero-to-hero-logging-in-dotnet/?affcode=1115529_alq6yoqt)
144 |
145 | 11. API 客户端与通信(API Clients & Communications)
146 |
147 | 1. REST
148 | - [Gridify](https://github.com/alirezanet/Gridify)
149 | - [OData](https://learn.microsoft.com/en-us/odata/webapi/first-odata-api)
150 | - REPR 模式([REPR Pattern](https://ardalis.com/mvc-controllers-are-dinosaurs-embrace-api-endpoints/))
151 | - [Minimal APIs](https://learn.microsoft.com/en-us/aspnet/core/fundamentals/minimal-apis/overview)
152 | - [Ardalis.Endpoints](https://github.com/ardalis/ApiEndpoints)
153 | - [Fast Endpoints](https://github.com/FastEndpoints/FastEndpoints)
154 | 2. [gRPC](https://docs.microsoft.com/en-us/aspnet/core/grpc)
155 | 3. GraphQL
156 | - [HotChocolate](https://github.com/ChilliCream/hotchocolate)
157 | - [GraphQL-dotnet](https://github.com/graphql-dotnet/graphql-dotnet)
158 |
159 | - 教程 📚
160 | - [From Zero to Hero: REST APIs in .NET](https://dometrain.com/course/from-zero-to-hero-rest-apis-in-asp-net-core/?affcode=1115529_alq6yoqt)
161 | - [From Zero to Hero: Minimal APIs in .NET with C#](https://dometrain.com/course/from-zero-to-hero-minimal-apis-in-net-with-c/?affcode=1115529_alq6yoqt)
162 | - [From Zero to Hero: gRPC in .NET](https://dometrain.com/course/from-zero-to-hero-grpc-in-dotnet/?affcode=1115529_alq6yoqt)
163 |
164 | 12. 实时通信(Real-Time Communication)
165 |
166 | - [SignalR](https://docs.microsoft.com/aspnet/core/signalr)
167 | - [WebSockets](https://docs.microsoft.com/en-us/aspnet/core/fundamentals/websockets)
168 |
169 | 13. 对象映射(Object Mapping)
170 |
171 | - [Manual mapping!](https://www.youtube.com/watch?v=U8gSdQN2jWI)
172 | - [Mapperly](https://github.com/riok/mapperly)
173 | - [AutoMapper](https://github.com/AutoMapper/AutoMapper)
174 |
175 | 14. 后台任务调度器(Background Task Scheduler)
176 |
177 | - [Native BackgroundService](https://docs.microsoft.com/en-us/aspnet/core/fundamentals/host/hosted-services)
178 | - [HangFire](https://github.com/HangfireIO/Hangfire)
179 | - [Quartz](https://github.com/quartznet/quartznet)
180 | - [Coravel](https://github.com/jamesmh/coravel)
181 |
182 | 15. 测试(Testing)
183 |
184 | 1. 单元测试(Unit Testing)
185 | - 框架(Frameworks)
186 | - [xUnit](https://docs.microsoft.com/dotnet/core/testing/unit-testing-with-dotnet-test)
187 | - [NUnit](https://docs.microsoft.com/dotnet/core/testing/unit-testing-with-nunit)
188 | - [MSTest](https://docs.microsoft.com/dotnet/core/testing/unit-testing-with-mstest)
189 | - 模拟(Mocking)
190 | - [Moq](https://github.com/moq/moq4)
191 | - [NSubstitute](https://github.com/nsubstitute/NSubstitute)
192 | - [FakeItEasy](https://github.com/FakeItEasy/FakeItEasy)
193 | - 断言(Assertion)
194 | - [FluentAssertion](https://github.com/fluentassertions/fluentassertions)
195 | - 假数据生成器(Fake Data Generators)
196 | - [Bogus](https://github.com/bchavez/Bogus)
197 | - [AutoFixture](https://github.com/AutoFixture/AutoFixture)
198 | 2. 集成测试(Integration Testing)
199 | - [WebApplicationFactory](https://docs.microsoft.com/aspnet/core/test/integration-tests)
200 | - [.NET Aspire](https://learn.microsoft.com/en-us/dotnet/aspire)
201 | - [Test Containers](https://github.com/testcontainers/testcontainers-dotnet)
202 | - [Respwan](https://github.com/jbogard/Respawn)
203 | 3. 快照测试(Snapshot Testing)
204 | - [Verify](https://github.com/VerifyTests/Verify)
205 | 4. 行为测试(Behavior Testing)
206 | - [SpecFlow](https://github.com/techtalk/SpecFlow/tree/DotNetCore)
207 | 5. 端到端测试(E2E Testing)
208 | - [Selenium](https://www.hanselman.com/blog/real-browser-integration-testing-with-selenium-standalone-chrome-and-aspnet-core-21)
209 | - [Puppeteer-Sharp](https://github.com/kblok/puppeteer-sharp)
210 | 6. 性能测试(Performance Testing)
211 | - [K6](https://github.com/grafana/k6)
212 | - [JMeter](https://github.com/apache/jmeter)
213 | - [Crank](https://github.com/dotnet/crank)
214 | - [Bombardier](https://github.com/codesenberg/bombardier)
215 | 7. 架构测试(Architecture Testing)
216 | - [ArchUnitNET](https://github.com/TNG/ArchUnitNET)
217 | - [NetArchTest](https://github.com/BenMorris/NetArchTest)
218 |
219 | - 教程 📚
220 | - [From Zero to Hero: Unit testing in C#](https://dometrain.com/course/from-zero-to-hero-unit-testing-in-c/?affcode=1115529_alq6yoqt)
221 | - [From Zero to Hero: Integration testing in ASP.NET Core](https://dometrain.com/course/from-zero-to-hero-integration-testing-in-asp-net-core/?affcode=1115529_alq6yoqt)
222 | - [From Zero to Hero: Test-Driven Development in C#](https://dometrain.com/course/from-zero-to-hero-test-driven-development-tdd-csharp/?affcode=1115529_alq6yoqt)
223 |
224 | 16. 微服务(Microservices)
225 |
226 | 1. 消息代理(Message-Broker)
227 | - [RabbitMQ](https://www.rabbitmq.com/tutorials/tutorial-one-dotnet.html)
228 | - [Apache Kafka](https://github.com/confluentinc/confluent-kafka-dotnet)
229 | - [Azure Service Bus](https://docs.microsoft.com/azure/service-bus-messaging)
230 | - [Amazon SQS](https://aws.amazon.com/sqs)
231 | - [NetMQ](https://github.com/zeromq/netmq)
232 | 2. 消息总线(Message-Bus)
233 | - [MassTransit](https://github.com/MassTransit/MassTransit)
234 | - [NServiceBus](https://github.com/Particular/NServiceBus)
235 | - [EasyNetQ](https://github.com/EasyNetQ/EasyNetQ)
236 | 3. API 网关(API Gateway)
237 | - [Ocelot](https://github.com/ThreeMammals/Ocelot)
238 | - [YARP](https://github.com/microsoft/reverse-proxy)
239 | 4. 容器化(Containerization)
240 | - [Docker](https://www.docker.com)
241 | - [Podman](https://podman.io)
242 | 5. 编排(Orchestration)
243 | - [Kubernetes](https://kubernetes.io)
244 | - [Rancher](https://github.com/rancher/rancher)
245 | - [Kubectl](https://kubernetes.io/docs/reference/kubectl)
246 | - [K9s](https://github.com/derailed/k9s)
247 | 6. 其他(Other)
248 | - [.NET Aspire](https://learn.microsoft.com/en-us/dotnet/aspire)
249 | - [Orleans](https://github.com/dotnet/orleans)
250 | - [Proto.Actor](https://github.com/asynkron/protoactor-dotnet)
251 | - [Dapr](https://github.com/dapr/dapr)
252 |
253 | - 教程 📚
254 | - [Getting Started: Microservices Architecture](https://dometrain.com/course/getting-started-microservices-architecture/?affcode=1115529_alq6yoqt)
255 | - [Getting Started: Solution Architecture](https://dometrain.com/course/getting-started-solution-architecture/?affcode=1115529_alq6yoqt)
256 | - [From Zero to Hero: Docker for Developers](https://dometrain.com/course/from-zero-to-hero-docker/?affcode=1115529_alq6yoqt)
257 |
258 | 17. 持续集成与交付(自动化)
259 |
260 | - [GitHub Actions](https://github.com/features/actions)
261 | - [Azure Pipelines](https://azure.microsoft.com/en-us/services/devops/pipelines)
262 | - [GitLab CI/CD](https://docs.gitlab.com/ee/ci)
263 | - [TeamCity CI/CD](https://www.jetbrains.com/teamcity)
264 |
265 | 18. 设计模式(Design Patterns)
266 |
267 | - 分类
268 | - [创建型(Creational)](https://refactoring.guru/design-patterns/creational-patterns)
269 | - [结构型(Structural)](https://refactoring.guru/design-patterns/structural-patterns)
270 | - [行为型(Behavioral)](https://refactoring.guru/design-patterns/behavioral-patterns)
271 | - 教程 📚
272 | - [Pluralsight Learning Path: Design Patterns in C#](https://www.pluralsight.com/paths/design-patterns-in-c)
273 |
274 | 19. 监控/日志记录/追踪/告警(Monitoring/Logging/Tracing/Alerting)
275 |
276 | - 监控(Monitoring)
277 | - 本地部署(On-Premises)
278 | - [Prometheus](https://github.com/prometheus/prometheus)
279 | - [Grafana](https://github.com/grafana/grafana)
280 | - 云部署(Cloud)
281 | - [Datadog](https://www.datadoghq.com)
282 | - 日志记录(Logging)
283 | - 本地部署(On-Premises)
284 | - [ELK Stack](https://www.elastic.co/what-is/elk-stack)
285 | - [Seq](https://datalust.co/seq)
286 | - [Sentry.io](https://sentry.io/welcome/)
287 | - 云部署(Cloud)
288 | - [Datadog](https://docs.datadoghq.com/logs)
289 | - [Sentry.io](https://sentry.io/welcome/)
290 | - 教程 📚
291 | - [From Zero to Hero: Logging in .NET](https://dometrain.com/course/from-zero-to-hero-logging-in-dotnet/?affcode=1115529_alq6yoqt)
292 | - 追踪(Tracing)
293 | - 本地部署(On-Premises)
294 | - [OpenTelemetry](https://github.com/open-telemetry/opentelemetry-dotnet)
295 | - [Jaeger](https://github.com/jaegertracing/jaeger)
296 | - [Zipkin](https://github.com/openzipkin/zipkin)
297 | - [Sentry.io](https://sentry.io/welcome/)
298 | - 云部署(Cloud)
299 | - [Datadog](https://docs.datadoghq.com/tracing)
300 | - [Sentry.io](https://sentry.io/welcome/)
301 | - 告警(Alerting)
302 | - 本地部署(On-Premises)
303 | - [Zabbix](https://www.zabbix.com)
304 | - [Alertmanager](https://github.com/prometheus/alertmanager)
305 | - 云部署(Cloud)
306 | - [Datadog](https://docs.datadoghq.com/monitors)
307 |
308 | 20. 客户端 .NET(Client-Side .NET)
309 |
310 | - 模板引擎(Template Engines)
311 | - [Razor](https://docs.microsoft.com/aspnet/core/mvc/views/razor)
312 | - [Scriban](https://github.com/lunet-io/scriban)
313 | - [Fluid](https://github.com/sebastienros/fluid)
314 | - 框架(Frameworks)
315 | - [Blazor](https://dotnet.microsoft.com/apps/aspnet/web-apps/blazor)
316 | - [.NET MAUI](https://github.com/dotnet/maui)
317 |
318 | 21. 实用库
319 |
320 | - [Swashbuckle](https://github.com/domaindrivendev/Swashbuckle.AspNetCore)
321 | - [MediatR](https://github.com/jbogard/MediatR)
322 | - [Fluent Validation](https://github.com/JeremySkinner/FluentValidation)
323 | - [Polly](https://github.com/App-vNext/Polly)
324 | - [Benchmark.NET](https://github.com/dotnet/BenchmarkDotNet)
325 | - [Distributed Lock](https://github.com/madelson/DistributedLock)
326 | - [EF Core Bulk Extensions](https://github.com/borisdj/EFCore.BulkExtensions)
327 | - [Nuke Build](https://github.com/nuke-build/nuke)
328 | - [Marten](https://github.com/JasperFx/marten)
329 |
330 | ## 总结
331 |
332 | 如果您认为本指南可以改进,请提交包含任何更新的PR或提交任何Issue。此外,我将会持续改进这个存放库,因此您可以按下 star 这个存放库以便于重新访问。
333 |
334 | 灵感来源: [React Developer RoadMap](https://github.com/adam-golab/react-developer-roadmap)
335 |
336 | ## 贡献
337 |
338 | 想做点贡献吗?我们鼓励社群回馈与贡献。
339 |
340 | 本指南是使用 [xMind](https://www.xmind.net/) 来建构。繁体中文版项目文件为`aspnetcore-developer-roadmap.zh-Hans.xmind`。要修改它,在[此处](https://www.xmind.net/download/)下载 xMind,点击 **Open File** 并选择 `xmind` 文件,它将为您打开此指南,更新它之后,上传和更新`ReadMe.zh-Hans.md`中的图片并创建一个PR。
341 |
342 | - 修改后提交PR
343 | - 在Issues中讨论问题
344 | - 推广此项目
345 |
346 | ## 赞助者
347 |
348 | ### 支持者
349 |
350 | 感谢所有支持者的支持! 🙏 [[成为支持者](https://opencollective.com/AspNetCore-Developer-Roadmap#backer)]
351 |
352 |
353 |
354 | ### 赞助商
355 |
356 | 通过成为赞助商来支持这个项目。您的标志将显示在这里,并链接到您的网站。[[成为赞助商](https://github.com/sponsors/MoienTajik)]
357 |
358 |
359 |
360 | ## 许可协议
361 |
362 | 
本著作系采用创用 CC 姓名标示-非商业性-相同方式分享 4.0 国际 授权条款授权.
363 |
364 |
--------------------------------------------------------------------------------
/ReadMe.md:
--------------------------------------------------------------------------------
1 | # ASP.NET Core Developer Roadmap
2 |
3 | [](http://makeapullrequest.com)
4 | [](#backers)
5 | [](#sponsors)
6 |
7 | - [Read-me in Traditional Chinese](ReadMe.zh-Hant.md)
8 | - [Read-me in Simplified Chinese](ReadMe.zh-Hans.md)
9 | - [Read-me in Turkish](ReadMe-tr.md)
10 | - [Read-me in Japanese](ReadMe.ja.md)
11 | - [Read-me in Russian](ReadMe.ru.md)
12 |
13 | > Roadmap to becoming an [ASP.NET Core](https://docs.microsoft.com/aspnet/core) developer in 2025:
14 |
15 | Below you can find a chart demonstrating the paths that you can take and the libraries that you would want to learn to become an ASP.NET Core developer. I made this chart as a tip for everyone who asks me, "What should I learn next as an ASP.NET Core developer?"
16 |
17 | ## Disclaimer
18 |
19 | > The purpose of this roadmap is to give you an idea about the landscape. The road map will guide you if you are confused about what to learn next, rather than encouraging you to pick what is hip and trendy. You should grow some understanding of why one tool would be better suited for some cases than the other and remember hip and trendy does not always mean best suited for the job.
20 |
21 | ## Give a Star! :star:
22 |
23 | If you like or are using this project to learn or start your solution, please give it a star. Thanks!
24 |
25 | ## Roadmap
26 |
27 | 
28 |
29 | ## Resources
30 |
31 | 1. General Development Skills
32 | - Learn [Git](https://git-scm.com/doc), create a few repositories on [GitHub](https://docs.github.com/en/get-started/quickstart), share your code with other people
33 | - Know [HTTP(S) protocol](https://developer.mozilla.org/en-US/docs/Web/HTTP/Overview), request methods ([GET](https://developer.mozilla.org/en-US/docs/Web/HTTP/Methods/GET), [POST](https://developer.mozilla.org/en-US/docs/Web/HTTP/Methods/POST), [PUT](https://developer.mozilla.org/en-US/docs/Web/HTTP/Methods/PUT), [PATCH](https://developer.mozilla.org/en-US/docs/Web/HTTP/Methods/PATCH), [DELETE](https://developer.mozilla.org/en-US/docs/Web/HTTP/Methods/DELETE), [OPTIONS](https://developer.mozilla.org/en-US/docs/Web/HTTP/Methods/OPTIONS), etc.)
34 | - What is [TLS](https://www.cloudflare.com/learning/ssl/transport-layer-security-tls/)?
35 | - What is [SSL](https://www.cloudflare.com/learning/ssl/what-is-ssl/)?
36 | - Don't be afraid of using Google, [Power Searching with Google](http://www.powersearchingwithgoogle.com)
37 | - Start using [ChatGPT](https://chat.openai.com/chat)
38 | - [Read a few books about algorithms and data structures](https://www.interviewbit.com/blog/data-structures-and-algorithms-books)
39 |
40 | 2. C#
41 | - [C#](https://www.pluralsight.com/paths/c-12)
42 | - [.NET 8](https://devblogs.microsoft.com/dotnet/announcing-dotnet-8)
43 | - [.NET CLI](https://docs.microsoft.com/dotnet/core/tools)
44 | - [StyleCop rules](https://github.com/DotNetAnalyzers/StyleCopAnalyzers/blob/master/DOCUMENTATION.md)
45 |
46 | 3. SQL Fundamentals
47 | - Tutorials 📚
48 | - [Pluralsight Learning Path: Querying Data with T-SQL from SQL Server](https://www.pluralsight.com/paths/querying-data-with-t-sql-from-sql-server)
49 |
50 | 4. ASP.NET Core Basics
51 | - [MVC](https://docs.microsoft.com/en-us/aspnet/core/mvc/overview)
52 | - [Minimal APIs](https://learn.microsoft.com/en-us/aspnet/core/fundamentals/minimal-apis)
53 | - [REST](https://docs.microsoft.com/en-us/aspnet/core/tutorials/first-web-api)
54 | - [Application Settings & Configurations](https://docs.microsoft.com/en-us/aspnet/core/fundamentals/configuration)
55 | - [Middlewares](https://docs.microsoft.com/en-us/aspnet/core/fundamentals/middleware)
56 | - [Filters & Attributes](https://docs.microsoft.com/en-us/aspnet/core/mvc/controllers/filters)
57 | - [Background Tasks](https://learn.microsoft.com/en-us/aspnet/core/fundamentals/host/hosted-services)
58 | - [Authentication](https://docs.microsoft.com/en-us/aspnet/core/security/authentication)
59 | - [Authorization](https://docs.microsoft.com/en-us/aspnet/core/security/authorization/introduction)
60 | - [IdentityServer](https://identityserver4.readthedocs.io/en/latest)
61 | - [Duende IdentityServer](https://duendesoftware.com)
62 | - [OpenIddict](https://github.com/openiddict/openiddict-core)
63 | - [Auth0](https://auth0.com/docs)
64 | - [OIDC](https://openid.net/connect)
65 | - [Caching](https://learn.microsoft.com/en-us/aspnet/core/performance/caching/overview)
66 | - [Razor Pages](https://docs.microsoft.com/en-us/aspnet/core/razor-pages)
67 | - [Razor Components](https://docs.microsoft.com/en-us/aspnet/core/blazor/components)
68 | - Tutorials 📚
69 | - [From Zero to Hero: REST APIs in .NET](https://dometrain.com/course/from-zero-to-hero-rest-apis-in-asp-net-core/?affcode=1115529_alq6yoqt)
70 | - [From Zero to Hero: Minimal APIs in .NET with C#](https://dometrain.com/course/from-zero-to-hero-minimal-apis-in-net-with-c/?affcode=1115529_alq6yoqt)
71 |
72 | 5. SOLID
73 | - [Single Responsibility Principle (SRP)](https://www.dotnetcurry.com/software-gardening/1148/solid-single-responsibility-principle)
74 | - [Open-Closed Principle (OCP)](https://www.dotnetcurry.com/software-gardening/1176/solid-open-closed-principle)
75 | - [Liskov Substitution Principle (LSP)](https://www.dotnetcurry.com/software-gardening/1235/liskov-substitution-principle-lsp-solid-patterns)
76 | - [Interface Segregation Principle (ISP)](https://www.dotnetcurry.com/software-gardening/1257/interface-segregation-principle-isp-solid-principle)
77 | - [Dependency Inversion Principle (DIP)](https://www.dotnetcurry.com/software-gardening/1284/dependency-injection-solid-principles)
78 |
79 | 6. ORM
80 | - [Entity Framework Core](https://learn.microsoft.com/en-us/ef/core)
81 | - Tutorials 📚
82 | - [From Zero to Hero: Entity Framework Core in .NET](https://dometrain.com/course/from-zero-to-hero-entity-framework-core-in-dotnet/?affcode=1115529_alq6yoqt)
83 | - [Dapper](https://github.com/StackExchange/Dapper)
84 |
85 | 7. Dependency Injection
86 | 1. DI Containers
87 | - [Microsoft.Extensions.DependencyInjection](https://docs.microsoft.com/aspnet/core/fundamentals/dependency-injection)
88 | - [AutoFac](https://autofaccn.readthedocs.io/en/latest/integration/aspnetcore.html)
89 | 2. [Scrutor](https://github.com/khellang/Scrutor)
90 | - Tutorials 📚
91 | - [From Zero to Hero: Dependency Injection in .NET](https://dometrain.com/course/from-zero-to-hero-dependency-injection-in-net/?affcode=1115529_alq6yoqt)
92 |
93 | 8. Databases
94 | 1. Relational
95 | - [SQL Server](https://www.microsoft.com/sql-server/sql-server-2019)
96 | - [PostgreSQL](https://www.postgresql.org)
97 | - [MariaDB](https://mariadb.org)
98 | - [MySQL](https://www.mysql.com)
99 | 2. Search Engines
100 | - [ElasticSearch](https://www.elastic.co)
101 | - [Meilisearch](https://github.com/meilisearch/meilisearch)
102 | - [ManticoreSearch](https://github.com/manticoresoftware/manticoresearch)
103 | - [OpenSearch](https://github.com/opensearch-project/OpenSearch)
104 | 3. NoSQL
105 | - On-Premises
106 | - [Redis](https://redis.io)
107 | - [MongoDB](https://docs.microsoft.com/aspnet/core/tutorials/first-mongo-app)
108 | - [Apache Cassandra](http://cassandra.apache.org)
109 | - [LiteDB](https://github.com/mbdavid/LiteDB)
110 | - [RavenDB](https://github.com/ravendb/ravendb)
111 | - [CouchDB](http://couchdb.apache.org)
112 | - Cloud
113 | - [CosmosDB](https://docs.microsoft.com/azure/cosmos-db)
114 | - [DynamoDB](https://aws.amazon.com/dynamodb)
115 |
116 | 9. Caching
117 | - [Memory Cache](https://docs.microsoft.com/aspnet/core/performance/caching/memory)
118 | - [Distributed Cache](https://docs.microsoft.com/aspnet/core/performance/caching/distributed)
119 | 1. [Redis](https://redis.io/)
120 | 1. [StackExchange.Redis](https://stackexchange.github.io/StackExchange.Redis)
121 | 2. [EasyCaching](https://github.com/dotnetcore/EasyCaching)
122 | 2. [Memcached](https://memcached.org)
123 | - Application-Level
124 | - Response Caching
125 | 1. [Built in](https://learn.microsoft.com/en-us/aspnet/core/performance/caching/response)
126 | 2. [Marvin.Cache.Headers](https://github.com/KevinDockx/HttpCacheHeaders)
127 | - [Output Caching](https://learn.microsoft.com/en-us/aspnet/core/performance/caching/output?source=recommendations)
128 | - [Entity Framework 2nd Level Cache](https://github.com/VahidN/EFCoreSecondLevelCacheInterceptor)
129 |
130 | 10. Log Frameworks
131 | - [Serilog](https://github.com/serilog/serilog)
132 | - [NLog](https://github.com/NLog/NLog)
133 | - Tutorials 📚
134 | - [From Zero to Hero: Logging in .NET](https://dometrain.com/course/from-zero-to-hero-logging-in-dotnet/?affcode=1115529_alq6yoqt)
135 |
136 | 11. API Clients & Communications
137 | 1. REST
138 | - [Gridify](https://github.com/alirezanet/Gridify)
139 | - [OData](https://learn.microsoft.com/en-us/odata/webapi/first-odata-api)
140 | - [REPR Pattern](https://ardalis.com/mvc-controllers-are-dinosaurs-embrace-api-endpoints/)
141 | - [Minimal APIs](https://learn.microsoft.com/en-us/aspnet/core/fundamentals/minimal-apis/overview)
142 | - [Ardalis.Endpoints](https://github.com/ardalis/ApiEndpoints)
143 | - [Fast Endpoints](https://github.com/FastEndpoints/FastEndpoints)
144 | 2. [gRPC](https://docs.microsoft.com/en-us/aspnet/core/grpc)
145 | 3. GraphQL
146 | - [HotChocolate](https://github.com/ChilliCream/hotchocolate)
147 | - [GraphQL-dotnet](https://github.com/graphql-dotnet/graphql-dotnet)
148 | - Tutorials 📚
149 | - [From Zero to Hero: REST APIs in .NET](https://dometrain.com/course/from-zero-to-hero-rest-apis-in-asp-net-core/?affcode=1115529_alq6yoqt)
150 | - [From Zero to Hero: Minimal APIs in .NET with C#](https://dometrain.com/course/from-zero-to-hero-minimal-apis-in-net-with-c/?affcode=1115529_alq6yoqt)
151 | - [From Zero to Hero: gRPC in .NET](https://dometrain.com/course/from-zero-to-hero-grpc-in-dotnet/?affcode=1115529_alq6yoqt)
152 |
153 | 12. Real-Time Communication
154 | - [SignalR](https://docs.microsoft.com/aspnet/core/signalr)
155 | - [WebSockets](https://docs.microsoft.com/en-us/aspnet/core/fundamentals/websockets)
156 |
157 | 13. Object Mapping
158 | - [Manual mapping!](https://www.youtube.com/watch?v=U8gSdQN2jWI)
159 | - [Mapperly](https://github.com/riok/mapperly)
160 | - [AutoMapper](https://github.com/AutoMapper/AutoMapper)
161 |
162 | 14. Background Task Scheduler
163 | - [Native BackgroundService](https://docs.microsoft.com/en-us/aspnet/core/fundamentals/host/hosted-services)
164 | - [HangFire](https://github.com/HangfireIO/Hangfire)
165 | - [Quartz](https://github.com/quartznet/quartznet)
166 | - [Coravel](https://github.com/jamesmh/coravel)
167 |
168 | 15. Testing
169 | 1. Unit Testing
170 | - Frameworks
171 | - [xUnit](https://docs.microsoft.com/dotnet/core/testing/unit-testing-with-dotnet-test)
172 | - [NUnit](https://docs.microsoft.com/dotnet/core/testing/unit-testing-with-nunit)
173 | - [MSTest](https://docs.microsoft.com/dotnet/core/testing/unit-testing-with-mstest)
174 | - Mocking
175 | - [Moq](https://github.com/moq/moq4)
176 | - [NSubstitute](https://github.com/nsubstitute/NSubstitute)
177 | - [FakeItEasy](https://github.com/FakeItEasy/FakeItEasy)
178 | - Assertion
179 | - [FluentAssertion](https://github.com/fluentassertions/fluentassertions)
180 | - Fake Data Generators
181 | - [Bogus](https://github.com/bchavez/Bogus)
182 | - [AutoFixture](https://github.com/AutoFixture/AutoFixture)
183 | 2. Integration Testing
184 | - [WebApplicationFactory](https://docs.microsoft.com/aspnet/core/test/integration-tests)
185 | - [.NET Aspire](https://learn.microsoft.com/en-us/dotnet/aspire)
186 | - [Test Containers](https://github.com/testcontainers/testcontainers-dotnet)
187 | - [Respwan](https://github.com/jbogard/Respawn)
188 | 3. Snapshot Testing
189 | - [Verify](https://github.com/VerifyTests/Verify)
190 | 4. Behavior Testing
191 | - [SpecFlow](https://github.com/techtalk/SpecFlow/tree/DotNetCore)
192 | 5. E2E Testing
193 | - [Selenium](https://www.hanselman.com/blog/real-browser-integration-testing-with-selenium-standalone-chrome-and-aspnet-core-21)
194 | - [Puppeteer-Sharp](https://github.com/kblok/puppeteer-sharp)
195 | 6. Performance Testing
196 | - [K6](https://github.com/grafana/k6)
197 | - [JMeter](https://github.com/apache/jmeter)
198 | - [Crank](https://github.com/dotnet/crank)
199 | - [Bombardier](https://github.com/codesenberg/bombardier)
200 | 7. Architecture Testing
201 | - [ArchUnitNET](https://github.com/TNG/ArchUnitNET)
202 | - [NetArchTest](https://github.com/BenMorris/NetArchTest)
203 | - Tutorials 📚
204 | - [From Zero to Hero: Unit testing in C#](https://dometrain.com/course/from-zero-to-hero-unit-testing-in-c/?affcode=1115529_alq6yoqt)
205 | - [From Zero to Hero: Integration testing in ASP.NET Core](https://dometrain.com/course/from-zero-to-hero-integration-testing-in-asp-net-core/?affcode=1115529_alq6yoqt)
206 | - [From Zero to Hero: Test-Driven Development in C#](https://dometrain.com/course/from-zero-to-hero-test-driven-development-tdd-csharp/?affcode=1115529_alq6yoqt)
207 |
208 | 16. Microservices
209 | 1. Message-Brokers
210 | - [RabbitMQ](https://www.rabbitmq.com/tutorials/tutorial-one-dotnet.html)
211 | - [Apache Kafka](https://github.com/confluentinc/confluent-kafka-dotnet)
212 | - [Azure Service Bus](https://docs.microsoft.com/azure/service-bus-messaging)
213 | - [Amazon SQS](https://aws.amazon.com/sqs)
214 | - [NetMQ](https://github.com/zeromq/netmq)
215 | 2. Message-Bus
216 | - [MassTransit](https://github.com/MassTransit/MassTransit)
217 | - [NServiceBus](https://github.com/Particular/NServiceBus)
218 | - [EasyNetQ](https://github.com/EasyNetQ/EasyNetQ)
219 | 3. API Gateway
220 | - [Ocelot](https://github.com/ThreeMammals/Ocelot)
221 | - [YARP](https://github.com/microsoft/reverse-proxy)
222 | 4. Containerization
223 | - [Docker](https://www.docker.com)
224 | - [Podman](https://podman.io)
225 | 5. Orchestration
226 | - [Kubernetes](https://kubernetes.io)
227 | - [Rancher](https://github.com/rancher/rancher)
228 | - [Kubectl](https://kubernetes.io/docs/reference/kubectl)
229 | - [K9s](https://github.com/derailed/k9s)
230 | 6. Other
231 | - [.NET Aspire](https://learn.microsoft.com/en-us/dotnet/aspire)
232 | - [Orleans](https://github.com/dotnet/orleans)
233 | - [Proto.Actor](https://github.com/asynkron/protoactor-dotnet)
234 | - [Dapr](https://github.com/dapr/dapr)
235 | - [Akka.NET](https://github.com/akkadotnet/akka.net)
236 | - Tutorials 📚
237 | - [Getting Started: Microservices Architecture](https://dometrain.com/course/getting-started-microservices-architecture/?affcode=1115529_alq6yoqt)
238 | - [Getting Started: Solution Architecture](https://dometrain.com/course/getting-started-solution-architecture/?affcode=1115529_alq6yoqt)
239 | - [From Zero to Hero: Docker for Developers](https://dometrain.com/course/from-zero-to-hero-docker/?affcode=1115529_alq6yoqt)
240 |
241 | 17. Continuous Integration & Continuous Delivery
242 | - [GitHub Actions](https://github.com/features/actions)
243 | - [Azure Pipelines](https://azure.microsoft.com/en-us/services/devops/pipelines)
244 | - [GitLab CI/CD](https://docs.gitlab.com/ee/ci)
245 | - [TeamCity CI/CD](https://www.jetbrains.com/teamcity)
246 |
247 | 18. Design Patterns
248 | - Categories
249 | - [Creational](https://refactoring.guru/design-patterns/creational-patterns)
250 | - [Structural](https://refactoring.guru/design-patterns/structural-patterns)
251 | - [Behavioral](https://refactoring.guru/design-patterns/behavioral-patterns)
252 | - Tutorials 📚
253 | - [Pluralsight Learning Path: Design Patterns in C#](https://www.pluralsight.com/paths/design-patterns-in-c)
254 |
255 | 19. Monitoring/Logging/Tracing/Alerting
256 | - Monitoring
257 | - On-Premises
258 | - [Prometheus](https://github.com/prometheus/prometheus)
259 | - [Grafana](https://github.com/grafana/grafana)
260 | - Cloud
261 | - [Datadog](https://www.datadoghq.com)
262 | - Logging
263 | - On-Premises
264 | - [ELK Stack](https://www.elastic.co/what-is/elk-stack)
265 | - [Seq](https://datalust.co/seq)
266 | - [Sentry.io](https://sentry.io/welcome/)
267 | - Cloud
268 | - [Datadog](https://docs.datadoghq.com/logs)
269 | - [Sentry.io](https://sentry.io/welcome/)
270 | - Tutorials 📚
271 | - [From Zero to Hero: Logging in .NET](https://dometrain.com/course/from-zero-to-hero-logging-in-dotnet/?affcode=1115529_alq6yoqt)
272 | - Tracing
273 | - On-Premises
274 | - [OpenTelemetry](https://github.com/open-telemetry/opentelemetry-dotnet)
275 | - [Jaeger](https://github.com/jaegertracing/jaeger)
276 | - [Zipkin](https://github.com/openzipkin/zipkin)
277 | - [Sentry.io](https://sentry.io/welcome/)
278 | - Cloud
279 | - [Datadog](https://docs.datadoghq.com/tracing)
280 | - [Sentry.io](https://sentry.io/welcome/)
281 | - Alerting
282 | - On-Premises
283 | - [Zabbix](https://www.zabbix.com)
284 | - [Alertmanager](https://github.com/prometheus/alertmanager)
285 | - Cloud
286 | - [Datadog](https://docs.datadoghq.com/monitors)
287 |
288 | 20. Client-Side .NET
289 | - Template Engines
290 | - [Razor](https://docs.microsoft.com/aspnet/core/mvc/views/razor)
291 | - [Scriban](https://github.com/lunet-io/scriban)
292 | - [Fluid](https://github.com/sebastienros/fluid)
293 | - Frameworks
294 | - [Blazor](https://dotnet.microsoft.com/apps/aspnet/web-apps/blazor)
295 | - [.NET MAUI](https://github.com/dotnet/maui)
296 |
297 | 21. AI / LLMs
298 | - [Semantic Kernel](https://github.com/microsoft/semantic-kernel)
299 | - [OpenAI .NET](https://github.com/openai/openai-dotnet)
300 |
301 | 22. Good to Know
302 | - [Scalar](https://github.com/scalar/scalar)
303 | - [MediatR](https://github.com/jbogard/MediatR)
304 | - [Fluent Validation](https://github.com/JeremySkinner/FluentValidation)
305 | - [Polly](https://github.com/App-vNext/Polly)
306 | - [Benchmark.NET](https://github.com/dotnet/BenchmarkDotNet)
307 | - [Distributed Lock](https://github.com/madelson/DistributedLock)
308 | - [EF Core Bulk Extensions](https://github.com/borisdj/EFCore.BulkExtensions)
309 | - [Nuke Build](https://github.com/nuke-build/nuke)
310 | - [Marten](https://github.com/JasperFx/marten)
311 |
312 | ## Microsoft courses
313 | Microsoft has some very interesting [online courses](https://learn.microsoft.com/training/browse/) on its technologies. They're all free.
314 |
315 | ## Wrap Up
316 |
317 | If you think the roadmap can be improved, please do open a PR with any updates and submit any issues. Also, I will continue to improve this, so you might want to star this repository to revisit.
318 |
319 | Idea from : [React Developer RoadMap](https://github.com/adam-golab/react-developer-roadmap)
320 |
321 | ## Contribution
322 |
323 | Want to contribute? We encourage community feedback and contributions. Please follow our [contributing guidelines](https://github.com/MoienTajik/AspNetCore-Developer-Roadmap/blob/master/CONTRIBUTING.md).
324 |
325 | ## Credits
326 |
327 | ### Backers
328 |
329 | Thank you to all our backers! 🙏 [[Become a backer](https://opencollective.com/AspNetCore-Developer-Roadmap#backer)]
330 |
331 |
332 |
333 | ### Sponsors
334 |
335 | Support this project by becoming a sponsor. Your logo will show up here with a link to your website. [[Become a sponsor](https://github.com/sponsors/MoienTajik)]
336 |
337 |
338 |
339 |
340 | ## License
341 |
342 | [](https://creativecommons.org/licenses/by-nc-sa/4.0)
343 |
--------------------------------------------------------------------------------
/ReadMe.uz.md:
--------------------------------------------------------------------------------
1 | # ASP.NET Core Dasturchi Yo'l Xaritasi
2 |
3 | [](http://makeapullrequest.com)
4 | [](#backers)
5 | [](#sponsors)
6 |
7 | - [Read-me An'anaviy Xitoy Tilida](ReadMe.zh-Hant.md)
8 | - [Read-me Soddalashtirilgan Xitoy Tilida](ReadMe.zh-Hans.md)
9 | - [Read-me Turk Tilida](ReadMe-tr.md)
10 | - [Read-me Yapon Tilida](ReadMe.ja.md)
11 | - [Read-me Rus Tilida](ReadMe.ru.md)
12 |
13 | > 2024 yilda [ASP.NET Core](https://docs.microsoft.com/aspnet/core) dasturchisi bo'lish uchun yo'l xaritasi:
14 |
15 | Quyida siz ASP.NET Core dasturchisi bo'lishni o'rganishingiz mumkin bo'lgan yo'llar va kutubxonalarni ko'rsatadigan jadvalni topishingiz mumkin. Men ushbu jadvalni mendan “ASP.NET Core dasturchisi sifatida keyin nimani o‘rganishim kerak?” deb so‘ragan har bir kishi uchun maslahat sifatida tuzdim.
16 |
17 | ## Disclaimer
18 |
19 | > Ushbu yo'l xaritasining maqsadi sizga landshaft haqida tushuncha berishdir. Yo'l xaritasi sizni nimani o'rganishingiz kerakligi haqida bosh qotirsangiz, sizni zamonaviy bo'lgan narsalarni tanlashga undashdan ko'ra, sizga yo'l ko'rsatadi. Siz nima uchun bir vosita ba'zi holatlar uchun boshqasiga qaraganda yaxshiroq mos kelishini tushunishingiz kerak va esda tutingki, zamonaviysi har doim ham ish uchun eng mos keladi degani emas.
20 |
21 | ## Yulduzchani Bosing! :star:
22 |
23 | Agar siz ushbu loyihani o'rganish yoki yechimingizni boshlash uchun yoqtirgan bo'lsangiz yoki foydalanayotgan bo'lsangiz, unga yulduzchani bosing. Rahmat!
24 |
25 | ## Yo'l Xaritasi
26 |
27 | 
28 |
29 | ## Resurslar
30 |
31 | 1. Umumiy rivojlanish ko'nikmalari
32 | - [Git](https://www.youtube.com/playlist?list=PLd1cTxGen2d42uGivV8rlaUY1LR2s5zHr) ni o'rganing, [GitHub](https://www.youtube.com/watch?v=BtNnhUOCYrI) da bir nechta repositoriyalarni yarating, kodingizni boshqa odamlar bilan baham ko'ring
33 | - [HTTP(S) protokol](https://www.youtube.com/watch?v=0mwO6QmtY5A), so'rov usullari ([GET](https://developer.mozilla.org/en-US/docs/Web/HTTP/Methods/GET), [POST](https://developer.mozilla.org/en-US/docs/Web/HTTP/Methods/POST), [PUT](https://developer.mozilla.org/en-US/docs/Web/HTTP/Methods/PUT), [PATCH](https://developer.mozilla.org/en-US/docs/Web/HTTP/Methods/PATCH), [DELETE](https://developer.mozilla.org/en-US/docs/Web/HTTP/Methods/DELETE), [OPTIONS](https://developer.mozilla.org/en-US/docs/Web/HTTP/Methods/OPTIONS), va boshqalar)
34 | - [TLS](https://www.youtube.com/watch?v=EIoMdjLL2yc) nima?
35 | - [SSL](https://www.youtube.com/watch?v=OI3JrPMd25E) nima?
36 | - Google'dan foydalanishdan qo'rqmang, [Google yordamida kuchli qidiruv](https://www.youtube.com/watch?v=6mkBrvLM-7g)
37 | - [ChatGPT](https://chat.openai.com/chat) dan foydalanishni boshlang
38 | - [Algoritmlar va ma'lumotlar tuzilmalari haqida o'rganing](https://www.youtube.com/playlist?list=PL_WK6W0Gn1I7rCQ28pxKwHbSO1EGzB381)
39 |
40 | 2. C#
41 | - [C#](https://docs.dot-net.uz/c-.net/basic/starter)
42 | - [.NET 8](https://docs.dot-net.uz/c-.net/dotnetga-xushkelibsiz)
43 | - [.NET CLI](https://docs.dot-net.uz/c-.net/.net-dasturchi/cli)
44 | - [StyleCop qoidalari](https://github.com/DotNetAnalyzers/StyleCopAnalyzers/blob/master/DOCUMENTATION.md)
45 |
46 | 3. SQL Asoslari
47 | - Darsliklar 📚
48 | - [MS SQL Server (Farkhod Dadajanov)](https://www.youtube.com/watch?v=zNqayVWmAbA&list=PL1538BF8E4A3E5D56)
49 |
50 | 5. ASP.NET Core asoslari
51 | - [MVC](https://docs.dot-net.uz/c-.net/web-development/asp.net-core-mvc/mvc-nima)
52 | - [Minimal APIs](youtube.com/watch?v=cBW2HBsQ5X0&t=2872s)
53 | - [REST](https://docs.microsoft.com/en-us/aspnet/core/tutorials/first-web-api)
54 | - [Ilova Sozlamalari & Konfiguratsiyalari](https://docs.microsoft.com/en-us/aspnet/core/fundamentals/configuration)
55 | - [Middlewares](https://www.youtube.com/watch?v=FCf8GmfuF2U)
56 | - [Filtrlar & Attribute-lar](https://docs.microsoft.com/en-us/aspnet/core/mvc/controllers/filters)
57 | - [Autentifikatsiya](https://docs.microsoft.com/en-us/aspnet/core/security/authentication)
58 | - [Avtorizatsiya](https://docs.microsoft.com/en-us/aspnet/core/security/authorization/introduction)
59 | - [IdentityServer](https://www.youtube.com/watch?v=7mzVukehoXo&t=4360s)
60 | - [Duende IdentityServer](https://duendesoftware.com)
61 | - [OpenIddict](https://github.com/openiddict/openiddict-core)
62 | - [Auth0](https://auth0.com/docs)
63 | - [OIDC](https://openid.net/connect)
64 | - [Razor Pages](https://docs.microsoft.com/en-us/aspnet/core/razor-pages)
65 | - [Razor Components](https://docs.microsoft.com/en-us/aspnet/core/blazor/components)
66 | - Darsliklar 📚
67 | - [ASP .Net Core batafsil (Farkhod Dadajanov)](https://www.youtube.com/playlist?list=PL_WK6W0Gn1I6OqYlkP_evQKq4K6xFwpu8)
68 |
69 | 6. SOLID
70 | - [Yagona Javobgarlik Prinsipi (SRP)](https://docs.dot-net.uz/c-.net/.net-dasturchi/clean-architecture/design-tamoyillari/solid/yagona-masuliyat-tamoyili-srp)
71 | - [Ochiqlik-Yopiqlik Prinsipi (OCP)](https://docs.dot-net.uz/c-.net/.net-dasturchi/clean-architecture/design-tamoyillari/solid/ochiq-yopiq-tamoyili-o-cp)
72 | - [Liskovning Almashtirish Prinsipi (LSP)](https://docs.dot-net.uz/c-.net/.net-dasturchi/clean-architecture/design-tamoyillari/solid/liskovning-almashtirish-tamoyili-lsp)
73 | - [Interfeysni Ajratish Prinsipi (ISP)](https://docs.dot-net.uz/c-.net/.net-dasturchi/clean-architecture/design-tamoyillari/solid/interfeysga-ajratish-tamoyili-isp)
74 | - [Bog'liqlik Inversiyasi Prinsipi (DIP)](https://docs.dot-net.uz/c-.net/.net-dasturchi/clean-architecture/design-tamoyillari/solid/qaramlik-inversiya-tamoyili-dip)
75 |
76 | 7. ORM
77 | - [Entity Framework Core](https://docs.dot-net.uz/c-.net/orm)
78 | - Darsliklar 📚
79 | - [Entity Framework Core bilan ishlash](https://www.youtube.com/watch?v=6XR2lV3ErNk&t=1s)
80 | - [ASP.NET Core da Dapper](https://www.youtube.com/watch?v=sGJmMR16lfI&t=1s)
81 |
82 | 8. Dependency Injection
83 | 1. DI Konteynerlari
84 | - [Microsoft.Extensions.DependencyInjection](https://docs.microsoft.com/aspnet/core/fundamentals/dependency-injection)
85 | - [AutoFac](https://autofaccn.readthedocs.io/en/latest/integration/aspnetcore.html)
86 | 2. [Scrutor](https://github.com/khellang/Scrutor)
87 | - Darsliklar 📚
88 | - [Dependency Injection haqida (Farkhod Dadajanov)](https://www.youtube.com/watch?v=S7_B2lSrNB4)
89 |
90 | 9. Ma'lumotlar Bazasi
91 | 1. Relyatsion
92 | - [SQL Server](https://docs.dot-net.uz/database/ms-sql-server)
93 | - [PostgreSQL](https://docs.dot-net.uz/database/postgresql)
94 | - [MariaDB](https://mariadb.org)
95 | - [MySQL](https://www.youtube.com/watch?v=9A6bqFUtUz8&list=PLcVkxa4hDY3HMSLeg6QOLftJUhLX2JJP)
96 | 2. Qidiruv tizimlari
97 | - [ElasticSearch](https://www.elastic.co)
98 | - [Meilisearch](https://github.com/meilisearch/meilisearch)
99 | - [ManticoreSearch](https://github.com/manticoresoftware/manticoresearch)
100 | - [OpenSearch](https://github.com/opensearch-project/OpenSearch)
101 | 3. NoSQL
102 | - Mahalliy
103 | - [Redis](https://www.youtube.com/watch?v=fCjRbWW4mzM&t=1s)
104 | - [MongoDB](https://www.youtube.com/watch?v=Gm0vrNrP45U&list=PL_WK6W0Gn1I7ishKsAaB8JaOVcg6NpndK)
105 | - [Apache Cassandra](http://cassandra.apache.org)
106 | - [LiteDB](https://github.com/mbdavid/LiteDB)
107 | - [RavenDB](https://github.com/ravendb/ravendb)
108 | - [CouchDB](http://couchdb.apache.org)
109 | - Bulut
110 | - [CosmosDB](https://docs.microsoft.com/azure/cosmos-db)
111 | - [DynamoDB](https://aws.amazon.com/dynamodb)
112 |
113 | 10. Keshlash
114 | - [Xotira keshi](https://www.youtube.com/watch?v=fCjRbWW4mzM&t=2s&pp=ygUXa2VzaGxhc2ggTURDIFV6YmVraXN0YW4%3D)
115 | - [Tarqatilgan kesh](https://www.youtube.com/watch?v=fCjRbWW4mzM&t=2s&pp=ygUXa2VzaGxhc2ggTURDIFV6YmVraXN0YW4%3D)
116 | 1. [Redis](https://www.youtube.com/watch?v=fCjRbWW4mzM&t=2s&pp=ygUXa2VzaGxhc2ggTURDIFV6YmVraXN0YW4%3D)
117 | 1. [StackExchange.Redis](https://stackexchange.github.io/StackExchange.Redis)
118 | 2. [EasyCaching](https://github.com/dotnetcore/EasyCaching)
119 | 2. [Memcached](https://memcached.org)
120 | - Ilova darajasi
121 | - Javobni keshlash
122 | 1. [Built in](https://learn.microsoft.com/en-us/aspnet/core/performance/caching/response)
123 | 2. [Marvin.Cache.Headers](https://github.com/KevinDockx/HttpCacheHeaders)
124 | - [Chiqishni keshlash](https://learn.microsoft.com/en-us/aspnet/core/performance/caching/output?source=recommendations)
125 | - [Entity Framework 2-darajali kesh](https://github.com/VahidN/EFCoreSecondLevelCacheInterceptor)
126 |
127 | 11. Log Frameworks
128 | - [Serilog](https://www.youtube.com/watch?v=RyjuC-TAxHk&t=1s&pp=ygUWU2VyaWxvZyBNREMgVXpiZWtpc3Rhbg%3D%3D)
129 | - [NLog](https://github.com/NLog/NLog)
130 |
131 | 12. API Mijozlari va Aloqalari
132 | 1. REST
133 | - [Gridify](https://github.com/alirezanet/Gridify)
134 | - [OData](https://learn.microsoft.com/en-us/odata/webapi/first-odata-api)
135 | - [REPR Pattern](https://ardalis.com/mvc-controllers-are-dinosaurs-embrace-api-endpoints/)
136 | - [Minimal APIs](https://learn.microsoft.com/en-us/aspnet/core/fundamentals/minimal-apis/overview)
137 | - [Ardalis.Endpoints](https://github.com/ardalis/ApiEndpoints)
138 | - [Fast Endpoints](https://github.com/FastEndpoints/FastEndpoints)
139 | 2. [gRPC](https://docs.microsoft.com/en-us/aspnet/core/grpc)
140 | 3. GraphQL
141 | - [HotChocolate](https://github.com/ChilliCream/hotchocolate)
142 | - [GraphQL-dotnet](https://github.com/graphql-dotnet/graphql-dotnet)
143 | - Darsliklar 📚
144 | - [From Zero to Hero: REST APIs in .NET](https://dometrain.com/course/from-zero-to-hero-rest-apis-in-asp-net-core/?affcode=1115529_alq6yoqt)
145 | - [From Zero to Hero: Minimal APIs in .NET with C#](https://dometrain.com/course/from-zero-to-hero-minimal-apis-in-net-with-c/?affcode=1115529_alq6yoqt)
146 | - [From Zero to Hero: gRPC in .NET](https://dometrain.com/course/from-zero-to-hero-grpc-in-dotnet/?affcode=1115529_alq6yoqt)
147 |
148 | 13. Real vaqtda aloqa
149 | - [SignalR](https://www.youtube.com/watch?v=mj_9_IYBJvY&t=1s&pp=ygUWU2lnbmFsUiBNREMgVXpiZWtpc3Rhbg%3D%3D)
150 | - [WebSockets](https://www.youtube.com/watch?v=6Ps7dxJ6qdo&pp=ygUZV2ViU29ja2V0cyBNREMgVXpiZWtpc3Rhbg%3D%3D)
151 |
152 | 14. Obyektni map qilish
153 | - [Qo'lda map qilish!](https://www.youtube.com/watch?v=U8gSdQN2jWI)
154 | - [Mapperly](https://github.com/riok/mapperly)
155 | - [AutoMapper](https://github.com/AutoMapper/AutoMapper)
156 |
157 | 15. Fondagi vazifalarni rejalashtiruvchisi
158 | - [Native BackgroundService](https://docs.microsoft.com/en-us/aspnet/core/fundamentals/host/hosted-services)
159 | - [HangFire](https://github.com/HangfireIO/Hangfire)
160 | - [Quartz](https://github.com/quartznet/quartznet)
161 | - [Coravel](https://github.com/jamesmh/coravel)
162 |
163 | 16. Testlash
164 | 1. Unit Testlash
165 | - Frameworks
166 | - [xUnit](https://www.youtube.com/watch?v=DtvNioh9eHo&t=1s&pp=ygUTdGVzdCBNREMgVXpiZWtpc3Rhbg%3D%3D)
167 | - [NUnit](https://docs.microsoft.com/dotnet/core/testing/unit-testing-with-nunit)
168 | - [MSTest](https://docs.microsoft.com/dotnet/core/testing/unit-testing-with-mstest)
169 | - Mocking
170 | - [Moq](https://github.com/moq/moq4)
171 | - [NSubstitute](https://github.com/nsubstitute/NSubstitute)
172 | - [FakeItEasy](https://github.com/FakeItEasy/FakeItEasy)
173 | - Assertion
174 | - [FluentAssertion](https://github.com/fluentassertions/fluentassertions)
175 | - Soxta ma'lumotlar generatorlari
176 | - [Bogus](https://github.com/bchavez/Bogus)
177 | - [AutoFixture](https://github.com/AutoFixture/AutoFixture)
178 | 2. Integratsion Testlash
179 | - [WebApplicationFactory](https://docs.microsoft.com/aspnet/core/test/integration-tests)
180 | - [.NET Aspire](https://learn.microsoft.com/en-us/dotnet/aspire)
181 | - [Test Containers](https://github.com/testcontainers/testcontainers-dotnet)
182 | - [Respwan](https://github.com/jbogard/Respawn)
183 | 3. Snapshot Testlash
184 | - [Verify](https://github.com/VerifyTests/Verify)
185 | 4. Xulq-atvor Testing
186 | - [SpecFlow](https://github.com/techtalk/SpecFlow/tree/DotNetCore)
187 | 5. E2E Testlash
188 | - [Selenium](https://www.hanselman.com/blog/real-browser-integration-testing-with-selenium-standalone-chrome-and-aspnet-core-21)
189 | - [Puppeteer-Sharp](https://github.com/kblok/puppeteer-sharp)
190 | 6. Ishlashni Testlash
191 | - [K6](https://github.com/grafana/k6)
192 | - [JMeter](https://github.com/apache/jmeter)
193 | - [Crank](https://github.com/dotnet/crank)
194 | - [Bombardier](https://github.com/codesenberg/bombardier)
195 | - Darsliklar 📚
196 | - [From Zero to Hero: Unit testing in C#](https://dometrain.com/course/from-zero-to-hero-unit-testing-in-c/?affcode=1115529_alq6yoqt)
197 | - [From Zero to Hero: Integration testing in ASP.NET Core](https://dometrain.com/course/from-zero-to-hero-integration-testing-in-asp-net-core/?affcode=1115529_alq6yoqt)
198 | - [From Zero to Hero: Test-Driven Development in C#](https://dometrain.com/course/from-zero-to-hero-test-driven-development-tdd-csharp/?affcode=1115529_alq6yoqt)
199 |
200 | 17. Mikroservislar
201 | 1. Xabar-Brokerlari
202 | - [RabbitMQ](https://www.youtube.com/watch?v=8tfAazpwqik&t=1s&pp=ygUXUmFiYml0TVEgTURDIFV6YmVraXN0YW4%3D)
203 | - [Apache Kafka](https://github.com/confluentinc/confluent-kafka-dotnet)
204 | - [Azure Service Bus](https://docs.microsoft.com/azure/service-bus-messaging)
205 | - [Amazon SQS](https://aws.amazon.com/sqs)
206 | - [NetMQ](https://github.com/zeromq/netmq)
207 | 2. Message-Bus
208 | - [MassTransit](https://github.com/MassTransit/MassTransit)
209 | - [NServiceBus](https://github.com/Particular/NServiceBus)
210 | - [EasyNetQ](https://github.com/EasyNetQ/EasyNetQ)
211 | 3. API Gateway
212 | - [Ocelot](https://github.com/ThreeMammals/Ocelot)
213 | - [YARP](https://github.com/microsoft/reverse-proxy)
214 | 4. Konteynerlash
215 | - [Docker](https://www.youtube.com/watch?v=trW0gihZ78E&list=PL_WK6W0Gn1I4jcUIwAUkcLM76k08Bqi2K)
216 | - [Podman](https://podman.io)
217 | 5. Orkestratsiya
218 | - [Kubernetes](https://kubernetes.io)
219 | - [Rancher](https://github.com/rancher/rancher)
220 | - [Kubectl](https://kubernetes.io/docs/reference/kubectl)
221 | - [K9s](https://github.com/derailed/k9s)
222 | 6. Boshqa
223 | - [.NET Aspire](https://learn.microsoft.com/en-us/dotnet/aspire)
224 | - [Orleans](https://github.com/dotnet/orleans)
225 | - [Proto.Actor](https://github.com/asynkron/protoactor-dotnet)
226 | - [Dapr](https://github.com/dapr/dapr)
227 | - Darsliklar 📚
228 | - [Getting Started: Microservices Architecture](https://dometrain.com/course/getting-started-microservices-architecture/?affcode=1115529_alq6yoqt)
229 | - [Getting Started: Solution Architecture](https://dometrain.com/course/getting-started-solution-architecture/?affcode=1115529_alq6yoqt)
230 | - [From Zero to Hero: Docker for Developers](https://dometrain.com/course/from-zero-to-hero-docker/?affcode=1115529_alq6yoqt)
231 |
232 | 18. Uzluksiz integratsiya va uzluksiz yetkazib berish
233 | - [GitHub Actions](https://www.youtube.com/watch?v=7O4MCfJs8aY&pp=ygUdR2l0SHViIEFjdGlvbnMgTURDIFV6YmVraXN0YW4%3D)
234 | - [Azure Pipelines](https://azure.microsoft.com/en-us/services/devops/pipelines)
235 | - [GitLab CI/CD](https://docs.gitlab.com/ee/ci)
236 | - [TeamCity CI/CD](https://www.jetbrains.com/teamcity)
237 |
238 | 19. Dizayn patternlari
239 | - Kategoriyalar
240 | - [Yaratuvchanlik](https://refactoring.guru/design-patterns/creational-patterns)
241 | - [Strukturaviy](https://refactoring.guru/design-patterns/structural-patterns)
242 | - [Xulq-atvor](https://refactoring.guru/design-patterns/behavioral-patterns)
243 | - Darsliklar 📚
244 | - [Design Pattern (Farkhod Dadajanov)](https://www.youtube.com/watch?v=dreyroBhzL4&list=PL_WK6W0Gn1I6IM4WkC7B62mdslDdhH2fY&pp=iAQB)
245 |
246 | 20. Monitoring/Logging/Kuzatish/Ogohlantirish
247 | - Monitoring
248 | - Mahalliy
249 | - [Prometheus](https://github.com/prometheus/prometheus)
250 | - [Grafana](https://github.com/grafana/grafana)
251 | - Bulut
252 | - [Datadog](https://www.datadoghq.com)
253 | - Logging
254 | - Mahalliy
255 | - [ELK Stack](https://www.elastic.co/what-is/elk-stack)
256 | - [Seq](https://datalust.co/seq)
257 | - [Sentry.io](https://sentry.io/welcome/)
258 | - Bulut
259 | - [Datadog](https://docs.datadoghq.com/logs)
260 | - [Sentry.io](https://sentry.io/welcome/)
261 | - Darsliklar 📚
262 | - [From Zero to Hero: Logging in .NET](https://dometrain.com/course/from-zero-to-hero-logging-in-dotnet/?affcode=1115529_alq6yoqt)
263 | - Kuzatish
264 | - Mahalliy
265 | - [OpenTelemetry](https://github.com/open-telemetry/opentelemetry-dotnet)
266 | - [Jaeger](https://github.com/jaegertracing/jaeger)
267 | - [Zipkin](https://github.com/openzipkin/zipkin)
268 | - [Sentry.io](https://sentry.io/welcome/)
269 | - Bulut
270 | - [Datadog](https://docs.datadoghq.com/tracing)
271 | - [Sentry.io](https://sentry.io/welcome/)
272 | - Ogohlantirish
273 | - Mahalliy
274 | - [Zabbix](https://www.zabbix.com)
275 | - [Alertmanager](https://github.com/prometheus/alertmanager)
276 | - Bulut
277 | - [Datadog](https://docs.datadoghq.com/monitors)
278 |
279 | 21. .NET Mijoz tomoni
280 | - Shablon enjinlari
281 | - [Razor](https://docs.microsoft.com/aspnet/core/mvc/views/razor)
282 | - [Scriban](https://github.com/lunet-io/scriban)
283 | - [Fluid](https://github.com/sebastienros/fluid)
284 | - Frameworks
285 | - [Blazor](https://www.youtube.com/watch?v=fCD4OUM2dxA&t=1s&pp=ygUVQmxhem9yIE1EQyBVemJla2lzdGFu)
286 | - [.NET MAUI](https://github.com/dotnet/maui)
287 |
288 | 22. Bilish yaxshi
289 | - [Swashbuckle](https://github.com/domaindrivendev/Swashbuckle.AspNetCore)
290 | - [MediatR](https://github.com/jbogard/MediatR)
291 | - [Fluent Validation](https://github.com/JeremySkinner/FluentValidation)
292 | - [Polly](https://github.com/App-vNext/Polly)
293 | - [Benchmark.NET](https://github.com/dotnet/BenchmarkDotNet)
294 | - [Distributed Lock](https://github.com/madelson/DistributedLock)
295 | - [EF Core Bulk Extensions](https://github.com/borisdj/EFCore.BulkExtensions)
296 | - [Nuke Build](https://github.com/nuke-build/nuke)
297 | - [Marten](https://github.com/JasperFx/marten)
298 |
299 |
300 | ## Wrap Up
301 |
302 | Agar yo'l xaritasini yaxshilash mumkin deb hisoblasangiz, iltimos, har qanday yangilanishlar bilan PRni oching va har qanday muammolarni yuboring. Bundan tashqari, men buni yaxshilashda davom etaman, shuning uchun siz ushbu repository-ni qayta ko'rib chiqish uchun yulduzchani bosib qo'ying.
303 |
304 | [React Dasturcih yo'l xaritasi](https://github.com/adam-golab/react-developer-roadmap) dan g'oya olingan
305 |
306 | ## Hissa Qo'shish
307 |
308 | Hissa qo'shishni xohlaysizmi? Biz hamjamiyatning fikr-mulohazalari va hissalarini qo'llab-quvvatlaymiz. Iltimos, [hissa qoʻshish boʻyicha koʻrsatmalarimizga](https://github.com/MoienTajik/AspNetCore-Developer-Roadmap/blob/master/CONTRIBUTING.md) amal qiling.
309 |
310 | ## Kreditlar
311 |
312 | ### Qo'llab-Quvvatlovchilar
313 |
314 | Barcha qo'llab-quvvatlovchilarimizga rahmat! 🙏 [[Qo'llab-quvvatlovchiga aylaning](https://opencollective.com/AspNetCore-Developer-Roadmap#backer)]
315 |
316 |
317 |
318 | ### Homiylar
319 |
320 | Homiy bo'lish orqali ushbu loyihani qo'llab-quvvatlang. Sizning logotipingiz veb-saytingizga havola bilan bu erda ko'rsatiladi. [[Homiy bo'ling](https://github.com/sponsors/MoienTajik)]
321 |
322 |
323 |
324 |
325 | ## Litsenziya
326 |
327 | [](https://creativecommons.org/licenses/by-nc-sa/4.0)
328 |
--------------------------------------------------------------------------------
/ReadMe.ru.md:
--------------------------------------------------------------------------------
1 | # Дорожная карта разработчика ASP.NET Core
2 |
3 | [](http://makeapullrequest.com)
4 | [](#backers)
5 | [](#sponsors)
6 |
7 | - [Read-me на Английском](ReadMe.md)
8 | - [Read-me на Традиционном китайском](ReadMe.zh-Hant.md)
9 | - [Read-me на Упрощенном китайском](ReadMe.zh-Hans.md)
10 | - [Read-me на Турецком](ReadMe-tr.md)
11 | - [Read-me на Японском](ReadMe.ja.md)
12 |
13 | > Дорожная карта разработчика [ASP.NET Core](https://docs.microsoft.com/aspnet/core) в 2025:
14 | На данной карте представлен список технологий и библиотек, которые вам стоит изучить, чтобы стать разработчиком ASP.NET Core. Я создал эту карту в качестве простого руководства для всех, кто спрашивает меня: "Что я должен изучить дальше, чтобы стать разработчиком ASP.NET Core?"
15 |
16 | ## Дисклеймер
17 |
18 | > Цель этой дорожной карты - помочь вам понять общую картину. Она поможет вам определить, что изучать дальше, а не просто следовать модным технологиям. Важно разобраться, когда и какие технологии лучше использовать в конкретных ситуациях и помнить, что модные и трендовые технологии не всегда подходят для всех задач.
19 |
20 | ## Поставьте звездочку! :star:
21 |
22 | Если вам понравилась эта карта или вы собираетесь использовать ее или просто разобрались с ее применением, пожалуйста, поставьте звездочку. Мы благодарим вас!
23 |
24 | ## Дорожная карта
25 |
26 | 
27 |
28 | ## Материалы
29 |
30 | 1. Общие навыки разработчика
31 | - Освойте [Git](https://git-scm.com/doc), создайте пару репозиториев на [GitHub](https://docs.github.com/en/get-started/quickstart), покажите свой код другим.
32 | - Освойте [протокол HTTP(S)](https://developer.mozilla.org/ru/docs/Web/HTTP/Overview), методы запросов ([GET](https://developer.mozilla.org/ru/docs/Web/HTTP/Methods/GET), [POST](https://developer.mozilla.org/ru/docs/Web/HTTP/Methods/POST), [PUT](https://developer.mozilla.org/ru/docs/Web/HTTP/Methods/PUT), [PATCH](https://developer.mozilla.org/ru/docs/Web/HTTP/Methods/PATCH), [DELETE](https://developer.mozilla.org/ru/docs/Web/HTTP/Methods/DELETE), [OPTIONS](https://developer.mozilla.org/ru/docs/Web/HTTP/Methods/OPTIONS), etc.)
33 | - Что такое [TLS](https://www.cloudflare.com/learning/ssl/transport-layer-security-tls/)?
34 | - Что такое [SSL](https://www.cloudflare.com/learning/ssl/what-is-ssl/)?
35 | - Не бойтесь использовать Google, [прокачайте навык гугления](http://www.powersearchingwithgoogle.com)
36 | - Начните использовать [ChatGPT](https://chat.openai.com/chat)
37 | - [Прочтите несколько книг о структурах данных и алгоритмах](https://www.interviewbit.com/blog/data-structures-and-algorithms-books)
38 |
39 | 2. C#
40 | - [C#](https://www.pluralsight.com/paths/c-10)
41 | - [.NET 7](https://devblogs.microsoft.com/dotnet/announcing-dotnet-7)
42 | - Интерфейс командной строки [dotnet CLI](https://docs.microsoft.com/dotnet/core/tools)
43 | - [Правила StyleCop ](https://github.com/DotNetAnalyzers/StyleCopAnalyzers/blob/master/DOCUMENTATION.md)
44 |
45 | 3. Основы SQL
46 | - Обучающие материалы 📚
47 | - [Pluralsight Learning Path: Querying Data with T-SQL from SQL Server](https://www.pluralsight.com/paths/querying-data-with-t-sql-from-sql-server)
48 |
49 | 4. Основы ASP.NET Core
50 | - [MVC](https://docs.microsoft.com/en-us/aspnet/core/mvc/overview)
51 | - [Minimal APIs](https://learn.microsoft.com/en-us/aspnet/core/fundamentals/minimal-apis)
52 | - [REST](https://docs.microsoft.com/en-us/aspnet/core/tutorials/first-web-api)
53 | - [Application Settings & Configurations](https://docs.microsoft.com/en-us/aspnet/core/fundamentals/configuration)
54 | - [Middlewares](https://docs.microsoft.com/en-us/aspnet/core/fundamentals/middleware)
55 | - [Filters & Attributes](https://docs.microsoft.com/en-us/aspnet/core/mvc/controllers/filters)
56 | - [Background Tasks](https://learn.microsoft.com/en-us/aspnet/core/fundamentals/host/hosted-services)
57 | - [Authentication](https://docs.microsoft.com/en-us/aspnet/core/security/authentication)
58 | - [Authorization](https://docs.microsoft.com/en-us/aspnet/core/security/authorization/introduction)
59 | - [IdentityServer](https://identityserver4.readthedocs.io/en/latest)
60 | - [Duende IdentityServer](https://duendesoftware.com)
61 | - [OpenIddict](https://github.com/openiddict/openiddict-core)
62 | - [Auth0](https://auth0.com/docs)
63 | - [OIDC](https://openid.net/connect)
64 | - [Caching](https://learn.microsoft.com/en-us/aspnet/core/performance/caching/overview)
65 | - [Razor Pages](https://docs.microsoft.com/en-us/aspnet/core/razor-pages)
66 | - [Razor Components](https://docs.microsoft.com/en-us/aspnet/core/blazor/components)
67 | - Обучающие материалы 📚
68 | - [From Zero to Hero: REST APIs in .NET](https://dometrain.com/course/from-zero-to-hero-rest-apis-in-asp-net-core/?affcode=1115529_alq6yoqt)
69 | - [From Zero to Hero: Minimal APIs in .NET with C#](https://dometrain.com/course/from-zero-to-hero-minimal-apis-in-net-with-c/?affcode=1115529_alq6yoqt)
70 |
71 | 5. SOLID
72 | - [Принцип единственной ответственности (SRP)](https://www.dotnetcurry.com/software-gardening/1148/solid-single-responsibility-principle)
73 | - [Принцип открытости/закрытости (OCP)](https://www.dotnetcurry.com/software-gardening/1176/solid-open-closed-principle)
74 | - [Принцип подстановки Лисков (LSP)](https://www.dotnetcurry.com/software-gardening/1235/liskov-substitution-principle-lsp-solid-patterns)
75 | - [Принцип разделения интерфейса (ISP)](https://www.dotnetcurry.com/software-gardening/1257/interface-segregation-principle-isp-solid-principle)
76 | - [Принцип инверсии зависимостей (DIP)](https://www.dotnetcurry.com/software-gardening/1284/dependency-injection-solid-principles)
77 |
78 | 6. Объектно-реляционное отображение данных (ORM)
79 | - [Основы платформы сущностей(EF Core)](https://learn.microsoft.com/ru-ru/ef/core)
80 | - Обучающие материалы 📚
81 | - [From Zero to Hero: Entity Framework Core in .NET](https://dometrain.com/course/from-zero-to-hero-entity-framework-core-in-dotnet/?affcode=1115529_alq6yoqt)
82 | - [Dapper](https://github.com/StackExchange/Dapper)
83 |
84 |
85 | 7. Внедрение зависимости
86 | 1. Контейнеры DI
87 | - [Microsoft.Extensions.DependencyInjection](https://docs.microsoft.com/aspnet/core/fundamentals/dependency-injection)
88 | - [AutoFac](https://autofaccn.readthedocs.io/en/latest/integration/aspnetcore.html)
89 | 3. [Scrutor](https://github.com/khellang/Scrutor)
90 | - Обучающие материалы 📚
91 | - [From Zero to Hero: Dependency Injection in .NET](https://dometrain.com/course/from-zero-to-hero-dependency-injection-in-net/?affcode=1115529_alq6yoqt)
92 | 8. Базы данных
93 | 1. Реляционные
94 | - [SQL Server](https://www.microsoft.com/sql-server/sql-server-2019)
95 | - [PostgreSQL](https://www.postgresql.org)
96 | - [MariaDB](https://mariadb.org)
97 | - [MySQL](https://www.mysql.com)
98 | 2. Поисковые системы
99 | - [ElasticSearch](https://www.elastic.co)
100 | - [Meilisearch](https://github.com/meilisearch/meilisearch)
101 | - [ManticoreSearch](https://github.com/manticoresoftware/manticoresearch)
102 | - [OpenSearch](https://github.com/opensearch-project/OpenSearch)
103 | 3. NoSQL
104 | - Локальный
105 | - [Redis](https://redis.io)
106 | - [MongoDB](https://docs.microsoft.com/aspnet/core/tutorials/first-mongo-app)
107 | - [Apache Cassandra](http://cassandra.apache.org)
108 | - [LiteDB](https://github.com/mbdavid/LiteDB)
109 | - [RavenDB](https://github.com/ravendb/ravendb)
110 | - [CouchDB](http://couchdb.apache.org)
111 | - Облачный
112 | - [CosmosDB](https://docs.microsoft.com/azure/cosmos-db)
113 | - [DynamoDB](https://aws.amazon.com/dynamodb)
114 |
115 | 9. Кэширование
116 | - [Кэширование в памяти](https://docs.microsoft.com/aspnet/core/performance/caching/memory)
117 | - [Распределенный кэш](https://docs.microsoft.com/aspnet/core/performance/caching/distributed)
118 | 1. [Redis](https://redis.io/)
119 | 1. [StackExchange.Redis](https://stackexchange.github.io/StackExchange.Redis)
120 | 2. [EasyCaching](https://github.com/dotnetcore/EasyCaching)
121 | 2. [Memcached](https://memcached.org)
122 | - Прикладной уровень
123 | - Кэширование ответов
124 | 1. [Built in](https://learn.microsoft.com/en-us/aspnet/core/performance/caching/response)
125 | 2. [Marvin.Cache.Headers](https://github.com/KevinDockx/HttpCacheHeaders)
126 | - [Output Caching](https://learn.microsoft.com/en-us/aspnet/core/performance/caching/output?source=recommendations)
127 | - [Entity Framework 2nd Level Cache](https://github.com/VahidN/EFCoreSecondLevelCacheInterceptor)
128 |
129 | 10. Фреймворки логирования
130 | - [Serilog](https://github.com/serilog/serilog)
131 | - [NLog](https://github.com/NLog/NLog)
132 | - Обучающие материалы 📚
133 | - [From Zero to Hero: Logging in .NET](https://dometrain.com/course/from-zero-to-hero-logging-in-dotnet/?affcode=1115529_alq6yoqt)
134 |
135 | 11. API-клиенты и коммуникации
136 | 1. REST
137 | - [Sieve](https://github.com/Biarity/Sieve)
138 | - [OData](https://learn.microsoft.com/ru-ru/odata/webapi/first-odata-api)
139 | - [REPR Pattern](https://ardalis.com/mvc-controllers-are-dinosaurs-embrace-api-endpoints/)
140 | - [Minimal APIs](https://learn.microsoft.com/ru-ru/aspnet/core/fundamentals/minimal-apis/overview)
141 | - [Fast Endpoints](https://github.com/FastEndpoints/FastEndpoints)
142 | - [Ardalis.Endpoints](https://github.com/ardalis/ApiEndpoints)
143 | 2. [gRPC](https://docs.microsoft.com/ru-ru/aspnet/core/grpc)
144 | 3. GraphQL
145 | - [HotChocolate](https://github.com/ChilliCream/hotchocolate)
146 | - [GraphQL-dotnet](https://github.com/graphql-dotnet/graphql-dotnet)
147 | - Обучающие материалы 📚
148 | - [From Zero to Hero: REST APIs in .NET](https://dometrain.com/course/from-zero-to-hero-rest-apis-in-asp-net-core/?affcode=1115529_alq6yoqt)
149 | - [From Zero to Hero: Minimal APIs in .NET with C#](https://dometrain.com/course/from-zero-to-hero-minimal-apis-in-net-with-c/?affcode=1115529_alq6yoqt)
150 | - [From Zero to Hero: gRPC in .NET](https://dometrain.com/course/from-zero-to-hero-grpc-in-dotnet/?affcode=1115529_alq6yoqt)
151 |
152 | 12. Коммуникации в реальном времени
153 | - [SignalR](https://docs.microsoft.com/aspnet/core/signalr)
154 | - [WebSockets](https://docs.microsoft.com/ru-ru/aspnet/core/fundamentals/websockets)
155 |
156 | 13. Объектное отображение (маппинг)
157 | - [Manual mapping!](https://www.youtube.com/watch?v=U8gSdQN2jWI)
158 | - [Mapperly](https://github.com/riok/mapperly)
159 | - [AutoMapper](https://github.com/AutoMapper/AutoMapper)
160 |
161 | 14. Планировка фоновых задач
162 | - [Native BackgroundService](https://docs.microsoft.com/ru-ru/aspnet/core/fundamentals/host/hosted-services)
163 | - [HangFire](https://github.com/HangfireIO/Hangfire)
164 | - [Quartz](https://github.com/quartznet/quartznet)
165 | - [Coravel](https://github.com/jamesmh/coravel)
166 |
167 | 15. Тестирование
168 | 1. Юнит тестирование
169 | - Фреймворки
170 | - [xUnit](https://docs.microsoft.com/dotnet/core/testing/unit-testing-with-dotnet-test)
171 | - [NUnit](https://docs.microsoft.com/dotnet/core/testing/unit-testing-with-nunit)
172 | - [MSTest](https://docs.microsoft.com/dotnet/core/testing/unit-testing-with-mstest)
173 | - Mocking
174 | - [Moq](https://github.com/moq/moq4)
175 | - [NSubstitute](https://github.com/nsubstitute/NSubstitute)
176 | - [FakeItEasy](https://github.com/FakeItEasy/FakeItEasy)
177 | - Утверждения (assertions)
178 | - [FluentAssertion](https://github.com/fluentassertions/fluentassertions)
179 | - Генераторы фиктивных данных
180 | - [Bogus](https://github.com/bchavez/Bogus)
181 | - [AutoFixture](https://github.com/AutoFixture/AutoFixture)
182 | 2. Интеграционное тестирование
183 | - [WebApplicationFactory](https://docs.microsoft.com/aspnet/core/test/integration-tests)
184 | - [.NET Aspire](https://learn.microsoft.com/en-us/dotnet/aspire)
185 | - [Test Containers](https://github.com/testcontainers/testcontainers-dotnet)
186 | - [Respwan](https://github.com/jbogard/Respawn)
187 | 3. Снэпшот тестирование
188 | - [Verify](https://github.com/VerifyTests/Verify)
189 | 4. Тестирование поведения
190 | - [SpecFlow](https://github.com/techtalk/SpecFlow/tree/DotNetCore)
191 | 5. E2E тестирование
192 | - [Selenium](https://www.hanselman.com/blog/real-browser-integration-testing-with-selenium-standalone-chrome-and-aspnet-core-21)
193 | - [Puppeteer-Sharp](https://github.com/kblok/puppeteer-sharp)
194 | 6. Тестирование производительности
195 | - [K6](https://github.com/grafana/k6)
196 | - [JMeter](https://github.com/apache/jmeter)
197 | - [Crank](https://github.com/dotnet/crank)
198 | - [Bombardier](https://github.com/codesenberg/bombardier)
199 | 7. Архитектурное тестирование
200 | - [ArchUnitNET](https://github.com/TNG/ArchUnitNET)
201 | - [NetArchTest](https://github.com/BenMorris/NetArchTest)
202 | - Обучающие материалы 📚
203 | - [From Zero to Hero: Unit testing in C#](https://dometrain.com/course/from-zero-to-hero-unit-testing-in-c/?affcode=1115529_alq6yoqt)
204 | - [From Zero to Hero: Integration testing in ASP.NET Core](https://dometrain.com/course/from-zero-to-hero-integration-testing-in-asp-net-core/?affcode=1115529_alq6yoqt)
205 | - [From Zero to Hero: Test-Driven Development in C#](https://dometrain.com/course/from-zero-to-hero-test-driven-development-tdd-csharp/?affcode=1115529_alq6yoqt)
206 |
207 | 16. Микросервисы
208 | 1. Брокеры сообщении
209 | - [RabbitMQ](https://www.rabbitmq.com/tutorials/tutorial-one-dotnet.html)
210 | - [Apache Kafka](https://github.com/confluentinc/confluent-kafka-dotnet)
211 | - [ActiveMQ](https://github.com/apache/activemq)
212 | - [Azure Service Bus](https://docs.microsoft.com/azure/service-bus-messaging/service-bus-messaging-overview)
213 | - [NetMQ](https://github.com/zeromq/netmq)
214 | 2. Шина передачи сообщении
215 | - [MassTransit](https://github.com/MassTransit/MassTransit)
216 | - [NServiceBus](https://github.com/Particular/NServiceBus)
217 | - [EasyNetQ](https://github.com/EasyNetQ/EasyNetQ)
218 | 3. Шлюз API
219 | - [Ocelot](https://github.com/ThreeMammals/Ocelot)
220 | - [YARP](https://github.com/microsoft/reverse-proxy)
221 | 4. Контейнеризация
222 | - [Docker](https://www.docker.com)
223 | - [Podman](https://podman.io)
224 | 5. Оркестрация
225 | - [Kubernetes](https://kubernetes.io)
226 | - [Rancher](https://github.com/rancher/rancher)
227 | - [Kubectl](https://kubernetes.io/docs/reference/kubectl)
228 | - [K9s](https://github.com/derailed/k9s)
229 | 6. Прочее
230 | - [.NET Aspire](https://learn.microsoft.com/en-us/dotnet/aspire)
231 | - [Orleans](https://github.com/dotnet/orleans)
232 | - [Proto.Actor](https://github.com/asynkron/protoactor-dotnet)
233 | - [Dapr](https://github.com/dapr/dapr)
234 | - [Akka.NET](https://github.com/akkadotnet/akka.net)
235 | - Обучающие материалы 📚
236 | - [Getting Started: Microservices Architecture](https://dometrain.com/course/getting-started-microservices-architecture/?affcode=1115529_alq6yoqt)
237 | - [Getting Started: Solution Architecture](https://dometrain.com/course/getting-started-solution-architecture/?affcode=1115529_alq6yoqt)
238 | - [From Zero to Hero: Docker for Developers](https://dometrain.com/course/from-zero-to-hero-docker/?affcode=1115529_alq6yoqt)
239 |
240 | 17. Непрерывная интеграция и развертывание(CI/CD)
241 | - [GitHub Actions](https://github.com/features/actions)
242 | - [Azure Pipelines](https://azure.microsoft.com/en-us/services/devops/pipelines)
243 | - [GitLab CI/CD](https://docs.gitlab.com/ee/ci)
244 | - [TeamCity CI/CD](https://www.jetbrains.com/teamcity)
245 |
246 | 18. Паттерны проектирования
247 | - Категории
248 | - [Creational](https://docs.microsoft.com/azure/architecture/patterns/cqrs)
249 | - [Structural](https://www.dofactory.com/net/decorator-design-pattern)
250 | - [Behavioral](https://www.dofactory.com/net/strategy-design-pattern)
251 | - Обучающие материалы 📚
252 | - [Pluralsight Learning Path: Design Patterns in C#](https://www.pluralsight.com/paths/design-patterns-in-c)
253 |
254 | 19. Мониторинг/Логирование/Отслеживание/Оповещение
255 | - Мониторинг
256 | - Локальный
257 | - [Prometheus](https://github.com/prometheus/prometheus)
258 | - [Grafana](https://github.com/grafana/grafana)
259 | - Облачный
260 | - [Datadog](https://www.datadoghq.com)
261 | - Логирование
262 | - Локальное
263 | - [ELK Stack](https://www.elastic.co/what-is/elk-stack)
264 | - [Seq](https://datalust.co/seq)
265 | - [Sentry.io](https://sentry.io/welcome/)
266 | - Облачное
267 | - [Datadog](https://docs.datadoghq.com/logs)
268 | - [Sentry.io](https://sentry.io/welcome/)
269 | - Обучающие материалы 📚
270 | - [From Zero to Hero: Logging in .NET](https://dometrain.com/course/from-zero-to-hero-logging-in-dotnet/?affcode=1115529_alq6yoqt)
271 | - Отслеживание
272 | - Локальное
273 | - [OpenTelemetry](https://github.com/open-telemetry/opentelemetry-dotnet)
274 | - [Jaeger](https://github.com/jaegertracing/jaeger)
275 | - [Zipkin](https://github.com/openzipkin/zipkin)
276 | - [Sentry.io](https://sentry.io/welcome/)
277 | - Облачное
278 | - [Datadog](https://docs.datadoghq.com/tracing)
279 | - [Sentry.io](https://sentry.io/welcome/)
280 | - Оповещение
281 | - Локальное
282 | - [Zabbix](https://www.zabbix.com)
283 | - [Alertmanager](https://github.com/prometheus/alertmanager)
284 | - Облачное
285 | - [Datadog](https://docs.datadoghq.com/monitors)
286 |
287 | 20. Клиентский.NET
288 | - Шаблонизаторы
289 | - [Razor](https://docs.microsoft.com/aspnet/core/mvc/views/razor)
290 | - [Scriban](https://github.com/lunet-io/scriban)
291 | - [Fluid](https://github.com/sebastienros/fluid)
292 | - Фреймворки
293 | - [Blazor](https://dotnet.microsoft.com/apps/aspnet/web-apps/blazor)
294 | - [.NET MAUI](https://github.com/dotnet/maui)
295 |
296 | 21. AI / LLMs
297 | - [Semantic Kernel](https://github.com/microsoft/semantic-kernel)
298 | - [OpenAI .NET](https://github.com/openai/openai-dotnet)
299 |
300 | 22. Будет полезным
301 | - [Scalar](https://github.com/scalar/scalar)
302 | - [MediatR](https://github.com/jbogard/MediatR)
303 | - [Fluent Validation](https://github.com/JeremySkinner/FluentValidation)
304 | - [Polly](https://github.com/App-vNext/Polly)
305 | - [Benchmark.NET](https://github.com/dotnet/BenchmarkDotNet)
306 | - [Distributed Lock](https://github.com/madelson/DistributedLock)
307 | - [EF Core Bulk Extensions](https://github.com/borisdj/EFCore.BulkExtensions)
308 | - [Nuke Build](https://github.com/nuke-build/nuke)
309 | - [Marten](https://github.com/JasperFx/marten)
310 |
311 |
312 | ## Заключение
313 |
314 | Если у вас есть предложения по улучшению этой карты, пожалуйста, отправьте запрос на изменение (PR) с вашими обновлениями или задайте вопросы в разделе Issues. Кроме того, я буду продолжать обновлять эту карту, поэтому не забудьте поставить звезду, чтобы не пропустить новые обновления.
315 |
316 | Идя взята из : [React Developer RoadMap](https://github.com/adam-golab/react-developer-roadmap)
317 |
318 | ## Участие
319 |
320 | Хотите поучаствовать? Мы ценим фидбек и участие сообщества. Просьба придерживатся [гайдлайну по участию](https://github.com/MoienTajik/AspNetCore-Developer-Roadmap/blob/master/CONTRIBUTING.md).
321 |
322 | ## Упоминания
323 |
324 | ### Поддержка
325 |
326 | Благодарим всех кто нас поддерживает! 🙏 [[Поддержать](https://opencollective.com/AspNetCore-Developer-Roadmap#backer)]
327 |
328 |
329 |
330 | ### Спонсоры
331 |
332 | Поддержите этот проект став спонсором. Ваше лого будет отображено здесь со ссылкой на ваш сайт. [[Стать спонсором](https://github.com/sponsors/MoienTajik)]
333 |
334 |
335 |
336 |
337 | ## Лицензия
338 |
339 | [](https://creativecommons.org/licenses/by-nc-sa/4.0)
340 |
--------------------------------------------------------------------------------