Roadmap to becoming a developer in 2022
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

172 lines
19 KiB

{
"home": "/roadmaps/116-aspnet-core/content/readme.md",
"basics-of-csharp": "/roadmaps/116-aspnet-core/content/100-basics-of-csharp/readme.md",
"basics-of-csharp:csharp": "/roadmaps/116-aspnet-core/content/100-basics-of-csharp/100-csharp.md",
"basics-of-csharp:dotnet": "/roadmaps/116-aspnet-core/content/100-basics-of-csharp/101-dotnet.md",
"basics-of-csharp:dotnet-cli": "/roadmaps/116-aspnet-core/content/100-basics-of-csharp/102-dotnet-cli.md",
"general-development-skills": "/roadmaps/116-aspnet-core/content/101-general-development-skills/readme.md",
"general-development-skills:git": "/roadmaps/116-aspnet-core/content/101-general-development-skills/100-git.md",
"general-development-skills:azure-devops-services": "/roadmaps/116-aspnet-core/content/101-general-development-skills/101-azure-devops-services.md",
"general-development-skills:vcs-hosting-services": "/roadmaps/116-aspnet-core/content/101-general-development-skills/102-vcs-hosting-services.md",
"general-development-skills:http-https": "/roadmaps/116-aspnet-core/content/101-general-development-skills/103-http-https.md",
"general-development-skills:datastructures-and-algorithms": "/roadmaps/116-aspnet-core/content/101-general-development-skills/104-datastructures-and-algorithms.md",
"database-fundamentals": "/roadmaps/116-aspnet-core/content/102-database-fundamentals/readme.md",
"database-fundamentals:database-design-basics": "/roadmaps/116-aspnet-core/content/102-database-fundamentals/100-database-design-basics.md",
"database-fundamentals:sql-basics": "/roadmaps/116-aspnet-core/content/102-database-fundamentals/101-sql-basics.md",
"database-fundamentals:stored-procedures": "/roadmaps/116-aspnet-core/content/102-database-fundamentals/102-stored-procedures.md",
"database-fundamentals:constraints": "/roadmaps/116-aspnet-core/content/102-database-fundamentals/103-constraints.md",
"database-fundamentals:triggers": "/roadmaps/116-aspnet-core/content/102-database-fundamentals/104-triggers.md",
"basics-of-aspnet-core": "/roadmaps/116-aspnet-core/content/103-basics-of-aspnet-core/readme.md",
"basics-of-aspnet-core:mvc": "/roadmaps/116-aspnet-core/content/103-basics-of-aspnet-core/100-mvc.md",
"basics-of-aspnet-core:rest": "/roadmaps/116-aspnet-core/content/103-basics-of-aspnet-core/101-rest.md",
"basics-of-aspnet-core:razor-pages": "/roadmaps/116-aspnet-core/content/103-basics-of-aspnet-core/102-razor-pages.md",
"basics-of-aspnet-core:razor-components": "/roadmaps/116-aspnet-core/content/103-basics-of-aspnet-core/103-razor-components.md",
"basics-of-aspnet-core:middlewares": "/roadmaps/116-aspnet-core/content/103-basics-of-aspnet-core/104-middlewares.md",
"basics-of-aspnet-core:filters-and-attributes": "/roadmaps/116-aspnet-core/content/103-basics-of-aspnet-core/105-filters-and-attributes.md",
"basics-of-aspnet-core:app-settings-and-configurations": "/roadmaps/116-aspnet-core/content/103-basics-of-aspnet-core/106-app-settings-and-configurations.md",
"orm": "/roadmaps/116-aspnet-core/content/104-orm/readme.md",
"orm:entity-framework-core": "/roadmaps/116-aspnet-core/content/104-orm/100-entity-framework-core/readme.md",
"orm:entity-framework-core:framework-basics": "/roadmaps/116-aspnet-core/content/104-orm/100-entity-framework-core/100-framework-basics.md",
"orm:entity-framework-core:codefirst-migrations": "/roadmaps/116-aspnet-core/content/104-orm/100-entity-framework-core/101-codefirst-migrations.md",
"orm:entity-framework-core:change-tracker-api": "/roadmaps/116-aspnet-core/content/104-orm/100-entity-framework-core/102-change-tracker-api.md",
"orm:entity-framework-core:lazy-eager-explicit-loading": "/roadmaps/116-aspnet-core/content/104-orm/100-entity-framework-core/103-lazy-eager-explicit-loading.md",
"orm:dapper": "/roadmaps/116-aspnet-core/content/104-orm/101-dapper.md",
"orm:repodb": "/roadmaps/116-aspnet-core/content/104-orm/102-repodb.md",
"orm:nhibernate": "/roadmaps/116-aspnet-core/content/104-orm/103-nhibernate.md",
"dependency-injection": "/roadmaps/116-aspnet-core/content/105-dependency-injection/readme.md",
"dependency-injection:scrutor": "/roadmaps/116-aspnet-core/content/105-dependency-injection/100-scrutor.md",
"dependency-injection:di-containers": "/roadmaps/116-aspnet-core/content/105-dependency-injection/101-di-containers/readme.md",
"dependency-injection:di-containers:microsoft-extensions-dependency-injection": "/roadmaps/116-aspnet-core/content/105-dependency-injection/101-di-containers/100-microsoft-extensions-dependency-injection.md",
"dependency-injection:di-containers:auto-fac": "/roadmaps/116-aspnet-core/content/105-dependency-injection/101-di-containers/101-auto-fac.md",
"dependency-injection:di-containers:ninject": "/roadmaps/116-aspnet-core/content/105-dependency-injection/101-di-containers/102-ninject.md",
"dependency-injection:di-containers:castle-windsor": "/roadmaps/116-aspnet-core/content/105-dependency-injection/101-di-containers/103-castle-windsor.md",
"dependency-injection:di-containers:simple-injector": "/roadmaps/116-aspnet-core/content/105-dependency-injection/101-di-containers/104-simple-injector.md",
"dependency-injection:life-cycles": "/roadmaps/116-aspnet-core/content/105-dependency-injection/102-life-cycles/readme.md",
"dependency-injection:life-cycles:scoped": "/roadmaps/116-aspnet-core/content/105-dependency-injection/102-life-cycles/100-scoped.md",
"dependency-injection:life-cycles:transient": "/roadmaps/116-aspnet-core/content/105-dependency-injection/102-life-cycles/101-transient.md",
"dependency-injection:life-cycles:singleton": "/roadmaps/116-aspnet-core/content/105-dependency-injection/102-life-cycles/102-singleton.md",
"caching": "/roadmaps/116-aspnet-core/content/106-caching/readme.md",
"caching:memory-cache": "/roadmaps/116-aspnet-core/content/106-caching/100-memory-cache.md",
"caching:entity-framework-cache": "/roadmaps/116-aspnet-core/content/106-caching/101-entity-framework-cache.md",
"caching:distributed-cache": "/roadmaps/116-aspnet-core/content/106-caching/102-distributed-cache/readme.md",
"caching:distributed-cache:memcached": "/roadmaps/116-aspnet-core/content/106-caching/102-distributed-cache/100-memcached.md",
"caching:distributed-cache:redis": "/roadmaps/116-aspnet-core/content/106-caching/102-distributed-cache/101-redis/readme.md",
"caching:distributed-cache:redis:stackexchange-redis": "/roadmaps/116-aspnet-core/content/106-caching/102-distributed-cache/101-redis/stackexchange-redis.md",
"caching:distributed-cache:redis:easy-caching": "/roadmaps/116-aspnet-core/content/106-caching/102-distributed-cache/101-redis/easy-caching.md",
"databases": "/roadmaps/116-aspnet-core/content/107-databases/readme.md",
"databases:search-engines": "/roadmaps/116-aspnet-core/content/107-databases/100-search-engines/readme.md",
"databases:search-engines:elasticsearch": "/roadmaps/116-aspnet-core/content/107-databases/100-search-engines/100-elasticsearch.md",
"databases:search-engines:solr": "/roadmaps/116-aspnet-core/content/107-databases/100-search-engines/101-solr.md",
"databases:search-engines:sphinx": "/roadmaps/116-aspnet-core/content/107-databases/100-search-engines/102-sphinx.md",
"databases:cloud": "/roadmaps/116-aspnet-core/content/107-databases/101-cloud/readme.md",
"databases:cloud:dynamodb": "/roadmaps/116-aspnet-core/content/107-databases/101-cloud/100-dynamodb.md",
"databases:cloud:cosmosdb": "/roadmaps/116-aspnet-core/content/107-databases/101-cloud/101-cosmosdb.md",
"databases:relational": "/roadmaps/116-aspnet-core/content/107-databases/102-relational/readme.md",
"databases:relational:sql-server": "/roadmaps/116-aspnet-core/content/107-databases/102-relational/100-sql-server.md",
"databases:relational:postgresql": "/roadmaps/116-aspnet-core/content/107-databases/102-relational/101-postgresql.md",
"databases:relational:mariadb": "/roadmaps/116-aspnet-core/content/107-databases/102-relational/102-mariadb.md",
"databases:relational:mysql": "/roadmaps/116-aspnet-core/content/107-databases/102-relational/103-mysql.md",
"databases:nosql": "/roadmaps/116-aspnet-core/content/107-databases/103-nosql/readme.md",
"databases:nosql:redis": "/roadmaps/116-aspnet-core/content/107-databases/103-nosql/100-redis.md",
"databases:nosql:mongodb": "/roadmaps/116-aspnet-core/content/107-databases/103-nosql/101-mongodb.md",
"databases:nosql:litedb": "/roadmaps/116-aspnet-core/content/107-databases/103-nosql/102-litedb.md",
"databases:nosql:cassandra": "/roadmaps/116-aspnet-core/content/107-databases/103-nosql/103-cassandra.md",
"databases:nosql:ravendb": "/roadmaps/116-aspnet-core/content/107-databases/103-nosql/104-ravendb.md",
"databases:nosql:couchdb": "/roadmaps/116-aspnet-core/content/107-databases/103-nosql/105-couchdb.md",
"log-frameworks": "/roadmaps/116-aspnet-core/content/108-log-frameworks/readme.md",
"log-frameworks:serilog": "/roadmaps/116-aspnet-core/content/108-log-frameworks/100-serilog.md",
"log-frameworks:nlog": "/roadmaps/116-aspnet-core/content/108-log-frameworks/101-nlog.md",
"log-frameworks:log-management-system": "/roadmaps/116-aspnet-core/content/108-log-frameworks/102-log-management-system/readme.md",
"log-frameworks:log-management-system:elk-stack": "/roadmaps/116-aspnet-core/content/108-log-frameworks/102-log-management-system/100-elk-stack.md",
"log-frameworks:log-management-system:sentry": "/roadmaps/116-aspnet-core/content/108-log-frameworks/102-log-management-system/101-sentry.md",
"log-frameworks:log-management-system:datadog": "/roadmaps/116-aspnet-core/content/108-log-frameworks/102-log-management-system/102-datadog.md",
"log-frameworks:log-management-system:loggly": "/roadmaps/116-aspnet-core/content/108-log-frameworks/102-log-management-system/103-loggly.md",
"log-frameworks:log-management-system:elmah": "/roadmaps/116-aspnet-core/content/108-log-frameworks/102-log-management-system/104-elmah.md",
"api-clients": "/roadmaps/116-aspnet-core/content/109-api-clients/readme.md",
"api-clients:rest": "/roadmaps/116-aspnet-core/content/109-api-clients/100-rest/readme.md",
"api-clients:rest:odata": "/roadmaps/116-aspnet-core/content/109-api-clients/100-rest/101-odata.md",
"api-clients:rest:sieve": "/roadmaps/116-aspnet-core/content/109-api-clients/100-rest/102-sieve.md",
"api-clients:grpc": "/roadmaps/116-aspnet-core/content/109-api-clients/101-grpc.md",
"api-clients:graphql": "/roadmaps/116-aspnet-core/content/109-api-clients/102-graphql/readme.md",
"api-clients:graphql:graphql-dotnet": "/roadmaps/116-aspnet-core/content/109-api-clients/102-graphql/100-graphql-dotnet.md",
"api-clients:graphql:hot-chocolate": "/roadmaps/116-aspnet-core/content/109-api-clients/102-graphql/101-hot-chocolate.md",
"real-time-communication": "/roadmaps/116-aspnet-core/content/110-real-time-communication/readme.md",
"real-time-communication:web-sockets": "/roadmaps/116-aspnet-core/content/110-real-time-communication/100-web-sockets.md",
"real-time-communication:singlar-core": "/roadmaps/116-aspnet-core/content/110-real-time-communication/101-singlar-core.md",
"object-mapping": "/roadmaps/116-aspnet-core/content/111-object-mapping/readme.md",
"object-mapping:atuo-mapper": "/roadmaps/116-aspnet-core/content/111-object-mapping/100-atuo-mapper.md",
"object-mapping:express-mapper": "/roadmaps/116-aspnet-core/content/111-object-mapping/101-express-mapper.md",
"object-mapping:agile-mapper": "/roadmaps/116-aspnet-core/content/111-object-mapping/102-agile-mapper.md",
"object-mapping:mapster": "/roadmaps/116-aspnet-core/content/111-object-mapping/103-mapster.md",
"task-scheduling": "/roadmaps/116-aspnet-core/content/112-task-scheduling/readme.md",
"task-scheduling:hangfire": "/roadmaps/116-aspnet-core/content/112-task-scheduling/100-hangfire.md",
"task-scheduling:native-background-service": "/roadmaps/116-aspnet-core/content/112-task-scheduling/101-native-background-service.md",
"task-scheduling:quartz": "/roadmaps/116-aspnet-core/content/112-task-scheduling/102-quartz.md",
"task-scheduling:coravel": "/roadmaps/116-aspnet-core/content/112-task-scheduling/103-coravel.md",
"testing": "/roadmaps/116-aspnet-core/content/113-testing/readme.md",
"testing:e2e-testing": "/roadmaps/116-aspnet-core/content/113-testing/100-e2e-testing/readme.md",
"testing:e2e-testing:selenium": "/roadmaps/116-aspnet-core/content/113-testing/100-e2e-testing/100-selenium.md",
"testing:e2e-testing:playwright": "/roadmaps/116-aspnet-core/content/113-testing/100-e2e-testing/101-playwright.md",
"testing:e2e-testing:puppeteer": "/roadmaps/116-aspnet-core/content/113-testing/100-e2e-testing/102-puppeteer.md",
"testing:e2e-testing:cypress": "/roadmaps/116-aspnet-core/content/113-testing/100-e2e-testing/103-cypress.md",
"testing:unit-testing": "/roadmaps/116-aspnet-core/content/113-testing/101-unit-testing/readme.md",
"testing:unit-testing:fluent-assertions": "/roadmaps/116-aspnet-core/content/113-testing/101-unit-testing/100-fluent-assertions.md",
"testing:unit-testing:shouldly": "/roadmaps/116-aspnet-core/content/113-testing/101-unit-testing/101-shouldly.md",
"testing:unit-testing:mstest": "/roadmaps/116-aspnet-core/content/113-testing/101-unit-testing/102-mstest.md",
"testing:unit-testing:xunit": "/roadmaps/116-aspnet-core/content/113-testing/101-unit-testing/103-xunit.md",
"testing:unit-testing:nunit": "/roadmaps/116-aspnet-core/content/113-testing/101-unit-testing/104-nunit.md",
"testing:unit-testing:nsubstitute": "/roadmaps/116-aspnet-core/content/113-testing/101-unit-testing/105-nsubstitute.md",
"testing:unit-testing:moq": "/roadmaps/116-aspnet-core/content/113-testing/101-unit-testing/106-moq.md",
"testing:unit-testing:fake-it-easy": "/roadmaps/116-aspnet-core/content/113-testing/101-unit-testing/107-fake-it-easy.md",
"testing:integration-testing": "/roadmaps/116-aspnet-core/content/113-testing/102-integration-testing/readme.md",
"testing:integration-testing:web-application-factory": "/roadmaps/116-aspnet-core/content/113-testing/102-integration-testing/100-web-application-factory.md",
"testing:integration-testing:test-server": "/roadmaps/116-aspnet-core/content/113-testing/102-integration-testing/101-test-server.md",
"testing:behavior-testing": "/roadmaps/116-aspnet-core/content/113-testing/103-behavior-testing/readme.md",
"testing:behavior-testing:spec-flow": "/roadmaps/116-aspnet-core/content/113-testing/103-behavior-testing/100-spec-flow.md",
"testing:behavior-testing:bddfy": "/roadmaps/116-aspnet-core/content/113-testing/103-behavior-testing/101-bddfy.md",
"testing:behavior-testing:light-bdd": "/roadmaps/116-aspnet-core/content/113-testing/103-behavior-testing/102-light-bdd.md",
"microservices": "/roadmaps/116-aspnet-core/content/114-microservices/readme.md",
"microservices:message-brokers": "/roadmaps/116-aspnet-core/content/114-microservices/100-message-brokers/readme.md",
"microservices:message-brokers:active-mq": "/roadmaps/116-aspnet-core/content/114-microservices/100-message-brokers/100-active-mq.md",
"microservices:message-brokers:apache-kafka": "/roadmaps/116-aspnet-core/content/114-microservices/100-message-brokers/101-apache-kafka.md",
"microservices:message-brokers:rabbit-mq": "/roadmaps/116-aspnet-core/content/114-microservices/100-message-brokers/102-rabbit-mq.md",
"microservices:message-brokers:net-mq": "/roadmaps/116-aspnet-core/content/114-microservices/100-message-brokers/103-net-mq.md",
"microservices:message-brokers:azure-service-bus": "/roadmaps/116-aspnet-core/content/114-microservices/100-message-brokers/104-azure-service-bus.md",
"microservices:message-bus": "/roadmaps/116-aspnet-core/content/114-microservices/101-message-bus/readme.md",
"microservices:message-bus:mass-transit": "/roadmaps/116-aspnet-core/content/114-microservices/101-message-bus/100-mass-transit.md",
"microservices:message-bus:nservice-bus": "/roadmaps/116-aspnet-core/content/114-microservices/101-message-bus/101-nservice-bus.md",
"microservices:message-bus:easy-net-q": "/roadmaps/116-aspnet-core/content/114-microservices/101-message-bus/102-easy-net-q.md",
"microservices:kubernetes": "/roadmaps/116-aspnet-core/content/114-microservices/102-kubernetes.md",
"microservices:docker-swarm": "/roadmaps/116-aspnet-core/content/114-microservices/103-docker-swarm.md",
"microservices:ocelot": "/roadmaps/116-aspnet-core/content/114-microservices/104-ocelot.md",
"microservices:docker": "/roadmaps/116-aspnet-core/content/114-microservices/105-docker.md",
"microservices:yarp": "/roadmaps/116-aspnet-core/content/114-microservices/106-yarp.md",
"microservices:orleans": "/roadmaps/116-aspnet-core/content/114-microservices/107-orleans.md",
"microservices:steel-toe": "/roadmaps/116-aspnet-core/content/114-microservices/108-steel-toe.md",
"microservices:dapr": "/roadmaps/116-aspnet-core/content/114-microservices/109-dapr.md",
"microservices:tye": "/roadmaps/116-aspnet-core/content/114-microservices/110-tye.md",
"ci-cd": "/roadmaps/116-aspnet-core/content/115-ci-cd/readme.md",
"ci-cd:github-actions": "/roadmaps/116-aspnet-core/content/115-ci-cd/100-github-actions.md",
"ci-cd:azure-pipelines": "/roadmaps/116-aspnet-core/content/115-ci-cd/101-azure-pipelines.md",
"ci-cd:travis-ci": "/roadmaps/116-aspnet-core/content/115-ci-cd/102-travis-ci.md",
"ci-cd:jenkins": "/roadmaps/116-aspnet-core/content/115-ci-cd/103-jenkins.md",
"ci-cd:circle-ci": "/roadmaps/116-aspnet-core/content/115-ci-cd/104-circle-ci.md",
"ci-cd:team-city": "/roadmaps/116-aspnet-core/content/115-ci-cd/105-team-city.md",
"client-side-libraries": "/roadmaps/116-aspnet-core/content/116-client-side-libraries/readme.md",
"client-side-libraries:blazor": "/roadmaps/116-aspnet-core/content/116-client-side-libraries/100-blazor.md",
"template-engines": "/roadmaps/116-aspnet-core/content/117-template-engines/readme.md",
"template-engines:razor": "/roadmaps/116-aspnet-core/content/117-template-engines/100-razor.md",
"template-engines:dot-liquid": "/roadmaps/116-aspnet-core/content/117-template-engines/101-dot-liquid.md",
"template-engines:scriban": "/roadmaps/116-aspnet-core/content/117-template-engines/102-scriban.md",
"template-engines:fluid": "/roadmaps/116-aspnet-core/content/117-template-engines/103-fluid.md",
"good-to-know-libraries": "/roadmaps/116-aspnet-core/content/118-good-to-know-libraries/readme.md",
"good-to-know-libraries:mediatr": "/roadmaps/116-aspnet-core/content/118-good-to-know-libraries/100-mediatr.md",
"good-to-know-libraries:fluent-validation": "/roadmaps/116-aspnet-core/content/118-good-to-know-libraries/101-fluent-validation.md",
"good-to-know-libraries:polly": "/roadmaps/116-aspnet-core/content/118-good-to-know-libraries/102-polly.md",
"good-to-know-libraries:nuke": "/roadmaps/116-aspnet-core/content/118-good-to-know-libraries/103-nuke.md",
"good-to-know-libraries:benchmark-net": "/roadmaps/116-aspnet-core/content/118-good-to-know-libraries/104-benchmark-net.md",
"good-to-know-libraries:noda-time": "/roadmaps/116-aspnet-core/content/118-good-to-know-libraries/105-noda-time.md",
"good-to-know-libraries:gen-fu": "/roadmaps/116-aspnet-core/content/118-good-to-know-libraries/106-gen-fu.md",
"good-to-know-libraries:swash-buckle": "/roadmaps/116-aspnet-core/content/118-good-to-know-libraries/107-swash-buckle.md"
}