# Clean Architecture (.NET) > Architektura warstwowa, CQRS, MediatR, repository pattern, separacja odpowiedzialności, testowalność - 20 pytań z rozmów - Mid-Level - [Pytania z rozmów: .NET](https://sharpskill.dev/pl/technologies/dotnet/pytania-rekrutacyjne.md) ## 1. Czym jest zasada Clean Architecture? **Odpowiedź** Clean Architecture organizuje kod w koncentryczne warstwy, w których zależności wskazują tylko do wewnątrz (w stronę Domain). Warstwa Domain (encje, reguły biznesowe) nie ma zależności od infrastruktury. Warstwy zewnętrzne (UI, Database, API) zależą od abstrakcji Domain poprzez Dependency Inversion. Zapewnia to testowalność, niezależność od frameworków i łatwość utrzymania kodu. ## 2. Jakie są główne warstwy Clean Architecture? **Odpowiedź** Clean Architecture ma 4 główne warstwy: Domain (encje, reguły biznesowe, interfejsy repository), Application (use case'y, DTO, logika aplikacji), Infrastructure (implementacje repository, DbContext, usługi zewnętrzne) oraz Presentation (API controllers, UI). Domain znajduje się w centrum i od niczego nie zależy. Application zależy od Domain. Infrastructure i Presentation zależą od Application i Domain. ## 3. Czym jest wzorzec CQRS? **Odpowiedź** CQRS (Command Query Responsibility Segregation) oddziela operacje odczytu (Queries) od zapisu (Commands). Commands zmieniają stan i zwracają void lub prosty wynik. Queries zwracają dane bez zmiany stanu. Ten podział pozwala na niezależną optymalizację odczytów (Dapper, widoki SQL) i zapisów (EF Core, agregaty DDD) oraz na różne skalowanie każdej strony. ## Jeszcze 17 dostępnych pytań - Jaka jest rola MediatR w Clean Architecture? - Jak zdefiniować Command w MediatR? Zarejestruj się za darmo: https://sharpskill.dev/pl/login ## Inne tematy rekrutacyjne .NET - [Podstawy C#](https://sharpskill.dev/pl/technologies/dotnet/pytania-rekrutacyjne/csharp-basics.md): 25 pytań, Junior - [LINQ & Delegates](https://sharpskill.dev/pl/technologies/dotnet/pytania-rekrutacyjne/csharp-linq-delegates.md): 20 pytań, Junior - [Podstawy języka C#](https://sharpskill.dev/pl/technologies/dotnet/pytania-rekrutacyjne/csharp-language-essentials.md): 15 pytań, Junior - [Podstawy ASP.NET Core](https://sharpskill.dev/pl/technologies/dotnet/pytania-rekrutacyjne/aspnet-core-fundamentals.md): 18 pytań, Junior - [Cykl życia żądania w ASP.NET Core](https://sharpskill.dev/pl/technologies/dotnet/pytania-rekrutacyjne/aspnet-core-request-lifecycle.md): 20 pytań, Junior - [Configuration & Settings](https://sharpskill.dev/pl/technologies/dotnet/pytania-rekrutacyjne/configuration-settings.md): 20 pytań, Junior - [Cykl życia aplikacji](https://sharpskill.dev/pl/technologies/dotnet/pytania-rekrutacyjne/application-lifecycle.md): 20 pytań, Junior - [Dependency Injection](https://sharpskill.dev/pl/technologies/dotnet/pytania-rekrutacyjne/dependency-injection.md): 24 pytań, Mid-Level - [Entity Framework Core](https://sharpskill.dev/pl/technologies/dotnet/pytania-rekrutacyjne/entity-framework-core.md): 25 pytań, Mid-Level - [Minimal APIs](https://sharpskill.dev/pl/technologies/dotnet/pytania-rekrutacyjne/minimal-apis.md): 18 pytań, Mid-Level - [Tworzenie Web API](https://sharpskill.dev/pl/technologies/dotnet/pytania-rekrutacyjne/web-api-development.md): 22 pytań, Mid-Level - [Async w ASP.NET Core](https://sharpskill.dev/pl/technologies/dotnet/pytania-rekrutacyjne/async-aspnet-core.md): 20 pytań, Mid-Level - [Authentication & Authorization](https://sharpskill.dev/pl/technologies/dotnet/pytania-rekrutacyjne/authentication-authorization.md): 18 pytań, Mid-Level - [HttpClient & Networking](https://sharpskill.dev/pl/technologies/dotnet/pytania-rekrutacyjne/httpclient-networking.md): 20 pytań, Mid-Level - [Serializacja JSON](https://sharpskill.dev/pl/technologies/dotnet/pytania-rekrutacyjne/json-serialization.md): 20 pytań, Mid-Level - [Entity Framework Core zaawansowany](https://sharpskill.dev/pl/technologies/dotnet/pytania-rekrutacyjne/ef-core-advanced.md): 25 pytań, Mid-Level - [Zaawansowane funkcje C#](https://sharpskill.dev/pl/technologies/dotnet/pytania-rekrutacyjne/csharp-advanced-features.md): 20 pytań, Mid-Level - [Logging, Monitoring & Observability](https://sharpskill.dev/pl/technologies/dotnet/pytania-rekrutacyjne/logging-monitoring.md): 22 pytań, Mid-Level - [Testy jednostkowe & xUnit](https://sharpskill.dev/pl/technologies/dotnet/pytania-rekrutacyjne/unit-testing-xunit.md): 20 pytań, Mid-Level - [Testy integracyjne](https://sharpskill.dev/pl/technologies/dotnet/pytania-rekrutacyjne/integration-testing.md): 18 pytań, Mid-Level - [Docker & Containerization](https://sharpskill.dev/pl/technologies/dotnet/pytania-rekrutacyjne/docker-containerization.md): 16 pytań, Mid-Level - [Zarządzanie pakietami NuGet](https://sharpskill.dev/pl/technologies/dotnet/pytania-rekrutacyjne/nuget-package-management.md): 16 pytań, Mid-Level - [Memory Management & GC](https://sharpskill.dev/pl/technologies/dotnet/pytania-rekrutacyjne/memory-management-gc.md): 22 pytań, Senior - [Programowanie reaktywne](https://sharpskill.dev/pl/technologies/dotnet/pytania-rekrutacyjne/reactive-programming.md): 24 pytań, Senior - [Async/await i wzorce](https://sharpskill.dev/pl/technologies/dotnet/pytania-rekrutacyjne/async-await-patterns.md): 26 pytań, Senior - [.NET Design Patterns](https://sharpskill.dev/pl/technologies/dotnet/pytania-rekrutacyjne/dotnet-design-patterns.md): 24 pytań, Senior - [Optymalizacja wydajności](https://sharpskill.dev/pl/technologies/dotnet/pytania-rekrutacyjne/performance-optimization.md): 22 pytań, Senior - [Bezpieczeństwo i Best Practices](https://sharpskill.dev/pl/technologies/dotnet/pytania-rekrutacyjne/security-best-practices.md): 24 pytań, Senior - [SignalR i czas rzeczywisty](https://sharpskill.dev/pl/technologies/dotnet/pytania-rekrutacyjne/signalr-realtime.md): 22 pytań, Senior - [Architektura Mikroserwisów](https://sharpskill.dev/pl/technologies/dotnet/pytania-rekrutacyjne/microservices-architecture.md): 25 pytań, Senior --- Source: SharpSkill (https://sharpskill.dev), tech interview preparation for your real stack. HTML version of this page: https://sharpskill.dev/pl/technologies/dotnet/pytania-rekrutacyjne/clean-architecture