
Clean Architecture
Kiến trúc phân lớp, CQRS, MediatR, repository pattern, tách biệt mối quan tâm, khả năng kiểm thử
1Nguyên tắc của Clean Architecture là gì?
Nguyên tắc của Clean Architecture là gì?
Câu trả lời
Clean Architecture tổ chức mã thành các lớp đồng tâm, trong đó các phụ thuộc chỉ hướng vào trong (về phía Domain). Lớp Domain (thực thể, quy tắc nghiệp vụ) không có phụ thuộc hạ tầng. Các lớp bên ngoài (UI, Database, API) phụ thuộc vào các abstraction của Domain thông qua Dependency Inversion. Điều này đảm bảo khả năng kiểm thử, sự độc lập với framework và khả năng bảo trì của mã.
2Các lớp chính của Clean Architecture là gì?
Các lớp chính của Clean Architecture là gì?
Câu trả lời
Clean Architecture có 4 lớp chính: Domain (thực thể, quy tắc nghiệp vụ, interface của repository), Application (use case, DTO, logic ứng dụng), Infrastructure (triển khai repository, DbContext, dịch vụ bên ngoài) và Presentation (API controller, UI). Domain nằm ở trung tâm và không phụ thuộc vào gì cả. Application phụ thuộc vào Domain. Infrastructure và Presentation phụ thuộc vào Application và Domain.
3Mẫu CQRS là gì?
Mẫu CQRS là gì?
Câu trả lời
CQRS (Command Query Responsibility Segregation) tách biệt các thao tác đọc (Queries) và ghi (Commands). Commands thay đổi trạng thái và trả về void hoặc một kết quả đơn giản. Queries trả về dữ liệu mà không thay đổi trạng thái. Sự tách biệt này cho phép tối ưu hóa độc lập các thao tác đọc (Dapper, view SQL) và ghi (EF Core, aggregate DDD), và mở rộng quy mô mỗi phía theo cách khác nhau.
Vai trò của MediatR trong Clean Architecture là gì?
Làm thế nào để định nghĩa một Command trong MediatR?
+17 câu hỏi phỏng vấn
Các chủ đề phỏng vấn .NET khác
Cơ bản về C#
LINQ & Delegates
Kiến thức cốt lõi ngôn ngữ C#
Kiến thức cơ bản về ASP.NET Core
Vòng đời request trong ASP.NET Core
Configuration & Settings
Vòng đời ứng dụng
Dependency Injection
Entity Framework Core
Minimal APIs
Phát triển Web API
Async trong ASP.NET Core
Authentication & Authorization
HttpClient & Networking
Tuần tự hóa JSON
Entity Framework Core nâng cao
Các tính năng nâng cao của C#
Logging, Monitoring & Observability
Kiểm thử đơn vị & xUnit
Kiểm thử tích hợp
Docker & Containerization
Quản lý gói NuGet
Memory Management & GC
Lập trình phản ứng
Async/await & Mẫu thiết kế
.NET Design Patterns
Tối ưu hóa hiệu năng
Bảo mật & Best Practices
SignalR & Thời gian thực
Kiến trúc Microservices
Nắm vững .NET cho lần phỏng vấn tiếp theo
Truy cập tất cả câu hỏi, flashcards, bài kiểm tra kỹ thuật, bài tập code review và mô phỏng phỏng vấn.
Bắt đầu miễn phí