Đề thi, bài tập trắc nghiệm online Lập trình .NET – Đề 10

0

Bạn đã sẵn sàng chưa? 45 phút làm bài bắt đầu!!!

Bạn đã hết giờ làm bài! Xem kết quả các câu hỏi đã làm nhé!!!


Đề thi, bài tập trắc nghiệm online Lập trình .NET

Đề 10 - Bài tập, đề thi trắc nghiệm online Lập trình .NET

1. Trong mô hình lập trình hướng đối tượng (OOP), `tính đóng gói` (encapsulation) mang lại lợi ích chính nào?

A. Tăng tốc độ thực thi chương trình.
B. Ẩn giấu chi tiết triển khai và bảo vệ dữ liệu, tăng tính module hóa.
C. Cho phép đa kế thừa.
D. Giảm dung lượng bộ nhớ sử dụng.

2. Attribute trong C# được sử dụng để làm gì?

A. Tối ưu hóa hiệu suất.
B. Cung cấp metadata (thông tin mô tả) cho code, có thể được đọc và xử lý bởi runtime hoặc các công cụ khác.
C. Bảo mật code.
D. Tạo ra các sự kiện (events).

3. Middleware trong ASP.NET Core là gì?

A. Một thành phần để lưu trữ dữ liệu tạm thời.
B. Một pipeline xử lý request HTTP, mỗi middleware thực hiện một chức năng cụ thể (ví dụ: logging, authentication).
C. Một công cụ để tạo API RESTful.
D. Một loại cơ sở dữ liệu NoSQL.

4. Reflection trong .NET cho phép làm gì?

A. Biên dịch mã nguồn nhanh hơn.
B. Khám phá và thao tác với metadata và code của assembly tại runtime (ví dụ: tạo đối tượng, gọi phương thức...).
C. Quản lý bộ nhớ.
D. Xây dựng giao diện người dùng.

5. Partial class trong C# được sử dụng khi nào?

A. Để tăng tốc độ biên dịch.
B. Để chia một định nghĩa lớp lớn thành nhiều file code nhỏ hơn, dễ quản lý và làm việc nhóm.
C. Để tạo ra các lớp trừu tượng.
D. Để bảo mật code.

6. Kiểu dữ liệu `value type` nào sau đây KHÔNG tồn tại trong C#?

A. int
B. float
C. string
D. bool

7. LINQ (Language Integrated Query) trong .NET cung cấp khả năng gì?

A. Xây dựng giao diện người dùng web.
B. Truy vấn dữ liệu từ nhiều nguồn khác nhau (collections, databases, XML...).
C. Quản lý phiên làm việc (session) trong ứng dụng web.
D. Tạo ra các dịch vụ web RESTful.

8. Unit testing là gì và tại sao nó quan trọng trong phát triển phần mềm .NET?

A. Một phương pháp để kiểm tra hiệu suất ứng dụng.
B. Kiểm thử từng đơn vị code nhỏ nhất (ví dụ: phương thức, lớp) để đảm bảo chúng hoạt động đúng như mong đợi, giúp phát hiện lỗi sớm và cải thiện chất lượng code.
C. Kiểm tra giao diện người dùng.
D. Kiểm tra bảo mật ứng dụng.

9. Lambda expression trong C# là gì?

A. Một loại vòng lặp mới.
B. Một cách viết ngắn gọn cho anonymous methods (phương thức vô danh) hoặc delegate.
C. Một kỹ thuật để xử lý ngoại lệ.
D. Một cách để tạo ra các kiểu dữ liệu mới.

10. Sự khác biệt chính giữa .NET Framework và .NET (trước đây là .NET Core) là gì?

A. .NET Framework là mã nguồn mở, .NET thì không.
B. .NET là nền tảng đa nền tảng (cross-platform), .NET Framework chủ yếu dành cho Windows.
C. .NET Framework hỗ trợ lập trình web, .NET thì không.
D. .NET Framework nhanh hơn .NET về hiệu suất.

11. Trong EF Core, `DbContext` đóng vai trò gì?

A. Định nghĩa cấu trúc cơ sở dữ liệu.
B. Đại diện cho một session làm việc với cơ sở dữ liệu, quản lý các entity và thực hiện các truy vấn.
C. Tạo ra các migration cho cơ sở dữ liệu.
D. Kết nối đến cơ sở dữ liệu.

12. Entity Framework Core (EF Core) là một ORM (Object-Relational Mapper) cho .NET. Chức năng chính của ORM là gì?

A. Tăng tốc độ truy cập cơ sở dữ liệu.
B. Ánh xạ giữa cơ sở dữ liệu quan hệ và các đối tượng trong code, giúp làm việc với dữ liệu dễ dàng hơn.
C. Bảo mật cơ sở dữ liệu.
D. Quản lý kết nối cơ sở dữ liệu.

13. Assembly trong .NET là gì?

A. Một đoạn mã nguồn C# chưa được biên dịch.
B. Đơn vị triển khai, tái sử dụng và kiểm soát phiên bản của .NET code (ví dụ: .dll, .exe).
C. Một công cụ để debug ứng dụng .NET.
D. Một loại cơ sở dữ liệu trong .NET.

14. Delegate trong C# được sử dụng chủ yếu cho mục đích nào?

A. Quản lý bộ nhớ tự động.
B. Thực hiện đa luồng.
C. Triển khai callback functions và event handling.
D. Tạo ra các kiểu dữ liệu generic.

15. Async và Await trong C# được sử dụng để giải quyết vấn đề gì?

A. Bảo mật ứng dụng.
B. Xử lý bất đồng bộ (asynchronous operations) để cải thiện hiệu suất và độ phản hồi.
C. Quản lý bộ nhớ hiệu quả hơn.
D. Tạo ra các ứng dụng đa nền tảng.

16. Ngôn ngữ lập trình nào sau đây KHÔNG phải là ngôn ngữ chính thức được hỗ trợ trên nền tảng .NET?

A. C#
B. VB.NET
C. F#
D. Java

17. Interface trong C# khác với Abstract Class như thế nào?

A. Interface có thể chứa code thực thi, Abstract Class thì không.
B. Lớp có thể kế thừa từ nhiều Interface, nhưng chỉ có thể kế thừa từ một Abstract Class.
C. Abstract Class định nghĩa hợp đồng, Interface chỉ định nghĩa hành vi.
D. Không có sự khác biệt, Interface và Abstract Class là như nhau.

18. Dynamic keyword trong C# có tác dụng gì?

A. Tối ưu hóa hiệu suất code.
B. Bỏ qua kiểm tra kiểu dữ liệu tại thời điểm biên dịch, kiểm tra kiểu dữ liệu được thực hiện tại runtime.
C. Tạo ra các kiểu dữ liệu động.
D. Quản lý bộ nhớ động.

19. Trong .NET, CLR (Common Language Runtime) chịu trách nhiệm chính cho việc gì?

A. Biên dịch mã nguồn C# thành mã máy.
B. Quản lý bộ nhớ, thực thi mã IL và cung cấp các dịch vụ runtime.
C. Xây dựng giao diện người dùng đồ họa (GUI).
D. Quản lý kết nối cơ sở dữ liệu.

20. Indexer trong C# cho phép làm gì?

A. Tăng tốc độ truy cập mảng.
B. Cho phép truy cập các đối tượng của một lớp giống như truy cập mảng (sử dụng cú pháp index []).
C. Bảo mật dữ liệu trong mảng.
D. Sắp xếp mảng.

21. Boxing và Unboxing trong C# là gì?

A. Kỹ thuật mã hóa và giải mã dữ liệu.
B. Boxing là chuyển đổi kiểu giá trị sang kiểu tham chiếu (object), Unboxing là ngược lại.
C. Quá trình tạo và hủy đối tượng.
D. Các phương pháp xử lý ngoại lệ.

22. Dependency Injection (DI) là gì và lợi ích chính của nó trong .NET là gì?

A. Một kỹ thuật để tối ưu hóa hiệu suất ứng dụng.
B. Một pattern thiết kế giúp giảm sự phụ thuộc giữa các thành phần, tăng tính kiểm thử và bảo trì.
C. Một phương pháp để quản lý bộ nhớ tự động.
D. Một công cụ để tạo giao diện người dùng.

23. Sự khác biệt chính giữa `class` và `struct` trong C# là gì?

A. Class hỗ trợ đa kế thừa, struct thì không.
B. Class là kiểu tham chiếu, struct là kiểu giá trị.
C. Struct có thể chứa phương thức, class thì không.
D. Struct được lưu trữ trên heap, class được lưu trữ trên stack.

24. Generic trong C# mang lại lợi ích chính nào?

A. Tăng tốc độ thực thi chương trình.
B. Tái sử dụng code cho nhiều kiểu dữ liệu khác nhau một cách type-safe (an toàn kiểu dữ liệu), tránh boxing/unboxing.
C. Giảm dung lượng bộ nhớ sử dụng.
D. Đơn giản hóa việc debug.

25. Trong C#, từ khóa `sealed` được sử dụng để làm gì?

A. Ngăn chặn việc kế thừa từ một lớp.
B. Đảm bảo một phương thức luôn được thực thi cuối cùng (finally).
C. Khai báo một biến là hằng số.
D. Tạo ra một lớp trừu tượng.

26. Garbage Collection (GC) trong .NET hoạt động như thế nào?

A. GC là một tiến trình thủ công do lập trình viên gọi để giải phóng bộ nhớ.
B. GC là một tiến trình tự động chạy ngầm, định kỳ thu hồi bộ nhớ không còn được tham chiếu đến.
C. GC chỉ hoạt động khi bộ nhớ vật lý đầy.
D. GC chỉ hoạt động trong các ứng dụng web ASP.NET.

27. HttpContext trong ASP.NET Core được sử dụng để làm gì?

A. Quản lý cơ sở dữ liệu.
B. Truy cập thông tin về request HTTP hiện tại (headers, cookies, session...).
C. Xây dựng giao diện người dùng.
D. Thực hiện xác thực và ủy quyền người dùng.

28. Namespace trong C# được sử dụng để làm gì?

A. Tăng tốc độ biên dịch mã nguồn.
B. Tổ chức code thành các nhóm logic, tránh xung đột tên.
C. Quản lý bộ nhớ.
D. Xây dựng giao diện người dùng.

29. Thành phần nào của .NET Framework chứa các lớp và kiểu dữ liệu cơ bản, cung cấp nền tảng cho các ứng dụng .NET?

A. ASP.NET
B. ADO.NET
C. .NET Framework Class Library (FCL)
D. Common Language Infrastructure (CLI)

30. Extension methods trong C# cho phép làm gì?

A. Thay đổi hành vi của các lớp đã có.
B. Thêm phương thức mới vào các kiểu dữ liệu đã tồn tại mà không cần sửa đổi lớp gốc.
C. Tăng tốc độ thực thi phương thức.
D. Giảm dung lượng bộ nhớ sử dụng.

1 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình .NET

Tags: Bộ đề 10

1. Trong mô hình lập trình hướng đối tượng (OOP), 'tính đóng gói' (encapsulation) mang lại lợi ích chính nào?

2 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình .NET

Tags: Bộ đề 10

2. Attribute trong C# được sử dụng để làm gì?

3 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình .NET

Tags: Bộ đề 10

3. Middleware trong ASP.NET Core là gì?

4 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình .NET

Tags: Bộ đề 10

4. Reflection trong .NET cho phép làm gì?

5 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình .NET

Tags: Bộ đề 10

5. Partial class trong C# được sử dụng khi nào?

6 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình .NET

Tags: Bộ đề 10

6. Kiểu dữ liệu 'value type' nào sau đây KHÔNG tồn tại trong C#?

7 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình .NET

Tags: Bộ đề 10

7. LINQ (Language Integrated Query) trong .NET cung cấp khả năng gì?

8 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình .NET

Tags: Bộ đề 10

8. Unit testing là gì và tại sao nó quan trọng trong phát triển phần mềm .NET?

9 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình .NET

Tags: Bộ đề 10

9. Lambda expression trong C# là gì?

10 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình .NET

Tags: Bộ đề 10

10. Sự khác biệt chính giữa .NET Framework và .NET (trước đây là .NET Core) là gì?

11 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình .NET

Tags: Bộ đề 10

11. Trong EF Core, 'DbContext' đóng vai trò gì?

12 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình .NET

Tags: Bộ đề 10

12. Entity Framework Core (EF Core) là một ORM (Object-Relational Mapper) cho .NET. Chức năng chính của ORM là gì?

13 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình .NET

Tags: Bộ đề 10

13. Assembly trong .NET là gì?

14 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình .NET

Tags: Bộ đề 10

14. Delegate trong C# được sử dụng chủ yếu cho mục đích nào?

15 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình .NET

Tags: Bộ đề 10

15. Async và Await trong C# được sử dụng để giải quyết vấn đề gì?

16 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình .NET

Tags: Bộ đề 10

16. Ngôn ngữ lập trình nào sau đây KHÔNG phải là ngôn ngữ chính thức được hỗ trợ trên nền tảng .NET?

17 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình .NET

Tags: Bộ đề 10

17. Interface trong C# khác với Abstract Class như thế nào?

18 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình .NET

Tags: Bộ đề 10

18. Dynamic keyword trong C# có tác dụng gì?

19 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình .NET

Tags: Bộ đề 10

19. Trong .NET, CLR (Common Language Runtime) chịu trách nhiệm chính cho việc gì?

20 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình .NET

Tags: Bộ đề 10

20. Indexer trong C# cho phép làm gì?

21 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình .NET

Tags: Bộ đề 10

21. Boxing và Unboxing trong C# là gì?

22 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình .NET

Tags: Bộ đề 10

22. Dependency Injection (DI) là gì và lợi ích chính của nó trong .NET là gì?

23 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình .NET

Tags: Bộ đề 10

23. Sự khác biệt chính giữa 'class' và 'struct' trong C# là gì?

24 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình .NET

Tags: Bộ đề 10

24. Generic trong C# mang lại lợi ích chính nào?

25 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình .NET

Tags: Bộ đề 10

25. Trong C#, từ khóa 'sealed' được sử dụng để làm gì?

26 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình .NET

Tags: Bộ đề 10

26. Garbage Collection (GC) trong .NET hoạt động như thế nào?

27 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình .NET

Tags: Bộ đề 10

27. HttpContext trong ASP.NET Core được sử dụng để làm gì?

28 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình .NET

Tags: Bộ đề 10

28. Namespace trong C# được sử dụng để làm gì?

29 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình .NET

Tags: Bộ đề 10

29. Thành phần nào của .NET Framework chứa các lớp và kiểu dữ liệu cơ bản, cung cấp nền tảng cho các ứng dụng .NET?

30 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình .NET

Tags: Bộ đề 10

30. Extension methods trong C# cho phép làm gì?