
Clean Architecture
Architektura warstwowa, CQRS, MediatR, repository pattern, separacja odpowiedzialności, testowalność
1Czym jest zasada Clean Architecture?
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.
2Jakie są główne warstwy Clean Architecture?
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.
3Czym jest wzorzec CQRS?
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.
Jaka jest rola MediatR w Clean Architecture?
Jak zdefiniować Command w MediatR?
+17 pytań z rozmów
Inne tematy rekrutacyjne .NET
Podstawy C#
LINQ & Delegates
Podstawy języka C#
Podstawy ASP.NET Core
Cykl życia żądania w ASP.NET Core
Configuration & Settings
Cykl życia aplikacji
Dependency Injection
Entity Framework Core
Minimal APIs
Tworzenie Web API
Async w ASP.NET Core
Authentication & Authorization
HttpClient & Networking
Serializacja JSON
Entity Framework Core zaawansowany
Zaawansowane funkcje C#
Logging, Monitoring & Observability
Testy jednostkowe & xUnit
Testy integracyjne
Docker & Containerization
Zarządzanie pakietami NuGet
Memory Management & GC
Programowanie reaktywne
Async/await i wzorce
.NET Design Patterns
Optymalizacja wydajności
Bezpieczeństwo i Best Practices
SignalR i czas rzeczywisty
Architektura Mikroserwisów
Opanuj .NET na następną rozmowę
Uzyskaj dostęp do wszystkich pytań, flashcards, testów technicznych, ćwiczeń code review i symulatorów rozmów.
Zacznij za darmo