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

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é!!!


Lập trình .NET

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

1. ASP.NET Core khác biệt gì so với ASP.NET Framework truyền thống?

A. ASP.NET Core chỉ hỗ trợ phát triển ứng dụng desktop.
B. ASP.NET Core là mã nguồn đóng, ASP.NET Framework là mã nguồn mở.
C. ASP.NET Core là cross-platform (chạy trên Windows, macOS, Linux), ASP.NET Framework chỉ chạy trên Windows.
D. ASP.NET Framework sử dụng mô hình MVC, ASP.NET Core sử dụng Web Forms.

2. Hot Reload trong .NET là gì?

A. Một kỹ thuật để tải lại trang web nhanh hơn.
B. Tính năng cho phép sửa đổi code ứng dụng đang chạy và thấy thay đổi ngay lập tức mà không cần build và restart lại toàn bộ ứng dụng.
C. Một phương pháp để tối ưu hóa bộ nhớ.
D. Một công cụ để kiểm thử hiệu suất ứng dụng.

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

A. Định nghĩa lớp trừu tượng.
B. Đại diện cho tham chiếu đến phương thức, cho phép truyền phương thức như tham số.
C. Quản lý bộ nhớ và giải phóng tài nguyên.
D. Xử lý ngoại lệ trong ứng dụng.

4. Async và Await trong C# được sử dụng để làm gì?

A. Tạo giao diện người dùng bất đồng bộ.
B. Viết mã bất đồng bộ một cách dễ đọc và dễ bảo trì, tránh blocking thread chính.
C. Tăng tốc độ thực thi các phép tính phức tạp.
D. Quản lý đa luồng và đồng bộ hóa luồng.

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

A. Interface có thể chứa code thực thi, abstract class thì không.
B. Một lớp có thể kế thừa nhiều interface, nhưng chỉ kế thừa một abstract class.
C. Abstract class nhanh hơn interface về hiệu suất.
D. Interface hỗ trợ đa kế thừa, abstract class thì không.

6. Ref và Out parameters trong C# khác nhau như thế nào?

A. Không có sự khác biệt, cả hai đều truyền tham chiếu.
B. 'ref′ yêu cầu biến phải được khởi tạo trước khi truyền vào phương thức, 'out′ không yêu cầu và phải được gán giá trị bên trong phương thức.
C. 'ref′ chỉ dùng cho kiểu giá trị, 'out′ chỉ dùng cho kiểu tham chiếu.
D. 'out′ tạo ra một bản sao của biến, 'ref′ thì không.

7. Entity Framework (EF) Core là gì và vai trò của nó trong .NET?

A. Một framework để xây dựng giao diện người dùng web.
B. Một ORM (Object-Relational Mapper) giúp tương tác với database dễ dàng hơn bằng cách làm việc với các đối tượng C# thay vì SQL trực tiếp.
C. Một công cụ để quản lý phiên bản code.
D. Một thư viện để xử lý các tác vụ bất đồng bộ.

8. Kestrel trong ASP.NET Core là gì?

A. Một ORM (Object-Relational Mapper).
B. Một web server cross-platform, mặc định cho ASP.NET Core, có hiệu suất cao.
C. Một framework để xây dựng giao diện người dùng client-side.
D. Một công cụ để kiểm thử hiệu suất ứng dụng web.

9. Razor Pages trong ASP.NET Core là gì?

A. Một mô hình kiến trúc thay thế MVC, đơn giản hóa việc xây dựng UI-driven web pages với C# trực tiếp trong trang Razor.
B. Một công cụ để tạo RESTful APIs.
C. Một thư viện JavaScript cho ASP.NET Core.
D. Một cách để triển khai ứng dụng ASP.NET Core lên Azure.

10. NuGet Package Manager trong .NET dùng để làm gì?

A. Quản lý bộ nhớ và garbage collection.
B. Quản lý các thư viện và dependencies của dự án .NET, giúp dễ dàng thêm, cập nhật và xóa các thư viện bên ngoài.
C. Biên dịch mã nguồn C# thành mã máy.
D. Tạo và quản lý database cho ứng dụng.

11. IActionResult trong ASP.NET Core MVC dùng để làm gì?

A. Định nghĩa model cho view.
B. Trả về kết quả của action method trong controller, đại diện cho các loại response HTTP khác nhau (View, JSON, Redirect, etc.).
C. Xử lý ngoại lệ trong controller.
D. Xác thực dữ liệu model.

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

A. Thành phần xử lý giao diện người dùng.
B. Các thành phần phần mềm được lắp ghép vào pipeline xử lý request HTTP, thực hiện các tác vụ như authentication, logging, routing.
C. Thư viện để kết nối với database.
D. Công cụ để triển khai ứng dụng lên server.

13. gRPC trong .NET được sử dụng để làm gì?

A. Xây dựng giao diện người dùng web.
B. Phát triển các dịch vụ microservices hiệu suất cao, giao tiếp real-time, sử dụng Protocol Buffers và HTTP∕2.
C. Quản lý database.
D. Triển khai ứng dụng lên cloud.

14. Phương thức `Dispose()` trong .NET Framework thường được sử dụng để làm gì?

A. Giải phóng bộ nhớ được quản lý bởi Garbage Collector.
B. Giải phóng tài nguyên không được quản lý (unmanaged resources) như file handles, database connections.
C. Khởi tạo lại đối tượng về trạng thái ban đầu.
D. Đăng ký đối tượng để Garbage Collector thu gom sớm hơn.

15. Thuộc tính 'virtual′ trong C# được sử dụng để làm gì?

A. Ngăn không cho lớp kế thừa từ lớp hiện tại.
B. Cho phép phương thức trong lớp con ghi đè (override) phương thức cùng tên trong lớp cha.
C. Khai báo một biến chỉ đọc.
D. Tạo một lớp tĩnh (static class).

16. Blazor trong .NET là gì?

A. Một ORM (Object-Relational Mapper).
B. Một framework để xây dựng ứng dụng web client-side tương tác sử dụng C# thay vì JavaScript.
C. Một công cụ quản lý database.
D. Một web server cho ASP.NET Core.

17. Attribute trong .NET được sử dụng để làm gì?

A. Định nghĩa cấu trúc dữ liệu phức tạp.
B. Cung cấp metadata (dữ liệu về dữ liệu) cho các thành phần code, có thể được đọc bởi reflection.
C. Tối ưu hiệu suất ứng dụng.
D. Xác thực dữ liệu đầu vào của người dùng.

18. Minimal APIs trong ASP.NET Core là gì và ưu điểm của chúng?

A. API được xây dựng với ít code hơn so với Controller-based APIs, đơn giản hóa việc tạo APIs nhỏ và nhanh.
B. API chỉ có thể trả về JSON.
C. API không hỗ trợ middleware.
D. API chỉ dành cho ứng dụng console.

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

A. Một kỹ thuật để giảm sự phụ thuộc giữa các module bằng cách 'inject′ dependencies vào đối tượng thay vì đối tượng tự tạo.
B. Một mẫu thiết kế để tạo ra các đối tượng singleton.
C. Một phương pháp để quản lý bộ nhớ hiệu quả hơn.
D. Một công cụ để tự động hóa quá trình kiểm thử đơn vị.

20. LINQ (Language Integrated Query) trong .NET dùng để làm gì?

A. Thiết kế giao diện người dùng.
B. Truy vấn dữ liệu từ nhiều nguồn khác nhau (collections, databases, XML, etc.) một cách thống nhất.
C. Quản lý phiên làm việc (session) trong ứng dụng web.
D. Tạo và quản lý các tiến trình đa luồng.

21. Phiên bản .NET mới nhất hiện tại (tại thời điểm tháng 10∕2024) là phiên bản nào?

A. .NET Framework 4.8
B. .NET 5
C. .NET 7
D. .NET 8

22. IActionResult 'Ok()′ và 'BadRequest()′ khác nhau như thế nào trong ASP.NET Core Web API?

A. 'Ok()′ dùng cho response lỗi, 'BadRequest()′ dùng cho response thành công.
B. 'Ok()′ trả về HTTP status code 200 (Success), 'BadRequest()′ trả về 400 (Client Error), thường dùng để báo lỗi validation hoặc input không hợp lệ.
C. Không có sự khác biệt, cả hai đều trả về response thành công.
D. Cả hai đều trả về HTTP status code 400 (Client Error).

23. Unit Testing trong .NET Framework dùng để làm gì?

A. Kiểm tra hiệu suất của ứng dụng.
B. Kiểm thử từng đơn vị (unit) code nhỏ nhất (thường là phương thức) để đảm bảo hoạt động đúng như mong đợi.
C. Kiểm thử tích hợp giữa các module khác nhau.
D. Kiểm thử giao diện người dùng.

24. Đâu là sự khác biệt chính giữa `StringBuilder` và `string` trong C#?

A. `StringBuilder` là kiểu dữ liệu giá trị, `string` là kiểu dữ liệu tham chiếu.
B. `string` là bất biến (immutable), `StringBuilder` là khả biến (mutable).
C. `StringBuilder` nhanh hơn `string` trong các phép toán so sánh chuỗi.
D. `string` có thể chứa ký tự null, `StringBuilder` thì không.

25. Extension methods trong C# là gì và lợi ích của chúng?

A. Phương thức được thêm vào interface.
B. Cho phép thêm phương thức mới vào kiểu dữ liệu đã tồn tại mà không cần sửa đổi code gốc của kiểu đó, tăng tính mở rộng.
C. Phương thức để tạo ra các lớp con.
D. Phương thức để tối ưu hiệu suất ứng dụng.

26. Sự khác biệt giữa 'public′, 'private′, 'protected′ và 'internal′ trong C# là gì?

A. Chúng là các kiểu dữ liệu khác nhau.
B. Chúng là các access modifiers, quy định phạm vi truy cập của các thành viên lớp. 'public′ (mọi nơi), 'private′ (trong lớp), 'protected′ (trong lớp và lớp con), 'internal′ (trong assembly).
C. Chúng được sử dụng để quản lý bộ nhớ.
D. Chúng định nghĩa các loại lớp khác nhau.

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

A. Giải phóng bộ nhớ ngay khi đối tượng không còn được tham chiếu đến.
B. Chạy theo lịch trình định kỳ để thu gom các đối tượng không còn được tham chiếu đến.
C. Yêu cầu lập trình viên gọi hàm giải phóng bộ nhớ thủ công.
D. Chỉ giải phóng bộ nhớ khi ứng dụng kết thúc.

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

A. Cơ chế mã hóa và giải mã dữ liệu.
B. Chuyển đổi giữa kiểu dữ liệu giá trị và kiểu object (tham chiếu). Boxing chuyển giá trị sang object, unboxing ngược lại.
C. Quá trình đóng gói và giải nén ứng dụng .NET để triển khai.
D. Kỹ thuật tối ưu hóa hiệu suất bộ nhớ.

29. Trong .NET, Common Language Runtime (CLR) 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ã và cung cấp các dịch vụ runtime.
C. Cung cấp các thư viện lớp cơ sở cho phát triển ứng dụng web.
D. Hỗ trợ gỡ lỗi và kiểm thử ứng dụng.

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

A. Tạo một lớp trừu tượng.
B. Ngăn không cho lớp khác kế thừa từ lớp hiện tại hoặc phương thức virtual bị override thêm nữa trong lớp con.
C. Khai báo một biến hằng số.
D. Tạo một interface.

1 / 30

Category: Lập trình .NET

Tags: Bộ đề 15

1. ASP.NET Core khác biệt gì so với ASP.NET Framework truyền thống?

2 / 30

Category: Lập trình .NET

Tags: Bộ đề 15

2. Hot Reload trong .NET là gì?

3 / 30

Category: Lập trình .NET

Tags: Bộ đề 15

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

4 / 30

Category: Lập trình .NET

Tags: Bộ đề 15

4. Async và Await trong C# được sử dụng để làm gì?

5 / 30

Category: Lập trình .NET

Tags: Bộ đề 15

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

6 / 30

Category: Lập trình .NET

Tags: Bộ đề 15

6. Ref và Out parameters trong C# khác nhau như thế nào?

7 / 30

Category: Lập trình .NET

Tags: Bộ đề 15

7. Entity Framework (EF) Core là gì và vai trò của nó trong .NET?

8 / 30

Category: Lập trình .NET

Tags: Bộ đề 15

8. Kestrel trong ASP.NET Core là gì?

9 / 30

Category: Lập trình .NET

Tags: Bộ đề 15

9. Razor Pages trong ASP.NET Core là gì?

10 / 30

Category: Lập trình .NET

Tags: Bộ đề 15

10. NuGet Package Manager trong .NET dùng để làm gì?

11 / 30

Category: Lập trình .NET

Tags: Bộ đề 15

11. IActionResult trong ASP.NET Core MVC dùng để làm gì?

12 / 30

Category: Lập trình .NET

Tags: Bộ đề 15

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

13 / 30

Category: Lập trình .NET

Tags: Bộ đề 15

13. gRPC trong .NET được sử dụng để làm gì?

14 / 30

Category: Lập trình .NET

Tags: Bộ đề 15

14. Phương thức `Dispose()` trong .NET Framework thường được sử dụng để làm gì?

15 / 30

Category: Lập trình .NET

Tags: Bộ đề 15

15. Thuộc tính `virtual′ trong C# được sử dụng để làm gì?

16 / 30

Category: Lập trình .NET

Tags: Bộ đề 15

16. Blazor trong .NET là gì?

17 / 30

Category: Lập trình .NET

Tags: Bộ đề 15

17. Attribute trong .NET được sử dụng để làm gì?

18 / 30

Category: Lập trình .NET

Tags: Bộ đề 15

18. Minimal APIs trong ASP.NET Core là gì và ưu điểm của chúng?

19 / 30

Category: Lập trình .NET

Tags: Bộ đề 15

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

20 / 30

Category: Lập trình .NET

Tags: Bộ đề 15

20. LINQ (Language Integrated Query) trong .NET dùng để làm gì?

21 / 30

Category: Lập trình .NET

Tags: Bộ đề 15

21. Phiên bản .NET mới nhất hiện tại (tại thời điểm tháng 10∕2024) là phiên bản nào?

22 / 30

Category: Lập trình .NET

Tags: Bộ đề 15

22. IActionResult `Ok()′ và `BadRequest()′ khác nhau như thế nào trong ASP.NET Core Web API?

23 / 30

Category: Lập trình .NET

Tags: Bộ đề 15

23. Unit Testing trong .NET Framework dùng để làm gì?

24 / 30

Category: Lập trình .NET

Tags: Bộ đề 15

24. Đâu là sự khác biệt chính giữa `StringBuilder` và `string` trong C#?

25 / 30

Category: Lập trình .NET

Tags: Bộ đề 15

25. Extension methods trong C# là gì và lợi ích của chúng?

26 / 30

Category: Lập trình .NET

Tags: Bộ đề 15

26. Sự khác biệt giữa `public′, `private′, `protected′ và `internal′ trong C# là gì?

27 / 30

Category: Lập trình .NET

Tags: Bộ đề 15

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

28 / 30

Category: Lập trình .NET

Tags: Bộ đề 15

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

29 / 30

Category: Lập trình .NET

Tags: Bộ đề 15

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

30 / 30

Category: Lập trình .NET

Tags: Bộ đề 15

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