
Các tính năng nâng cao của C#
Pattern matching, records, tuples, deconstruction, local functions, tham số ref/out
1Record trong C# là gì?
Record trong C# là gì?
Câu trả lời
Record là một reference type bất biến được giới thiệu trong C# 9, cung cấp cú pháp ngắn gọn để tạo các kiểu dữ liệu với sự bằng nhau dựa trên giá trị. Khác với class thông thường sử dụng sự bằng nhau theo tham chiếu, record so sánh giá trị của các thuộc tính. Hãy dùng record cho DTO, value object và các kiểu bất biến nơi cần sự bằng nhau dựa trên giá trị.
2Sự khác biệt giữa out và ref trong C# là gì?
Sự khác biệt giữa out và ref trong C# là gì?
Câu trả lời
Tham số out không yêu cầu khởi tạo trước khi gọi method nhưng phải được gán trong method, trong khi ref yêu cầu khởi tạo trước khi gọi và có thể được sửa đổi hoặc không trong method. Cả hai đều truyền theo tham chiếu nhưng out được tối ưu hóa để trả về nhiều giá trị trong khi ref được dùng để sửa đổi một biến đã có. Hãy dùng out cho các method trả về nhiều kết quả và ref khi cần sửa đổi một giá trị đã có.
3Pattern matching trong C# là gì?
Pattern matching trong C# là gì?
Câu trả lời
Pattern matching là một tính năng cho phép kiểm tra một giá trị với các pattern khác nhau (kiểu, giá trị, thuộc tính) và thực thi mã dựa trên pattern khớp. Được giới thiệu trong C# 7 và cải tiến ở các phiên bản sau, nó đơn giản hóa các cấu trúc điều kiện phức tạp với switch expression, property pattern và type pattern. Hãy dùng pattern matching để thay thế các chuỗi if-else phức tạp và cải thiện khả năng đọc mã.
Tuple trong C# là gì và khai báo nó như thế nào?
Local function trong C# là gì?
+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
Clean Architecture
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í