Bài Tập, Đề Thi Trắc Nghiệm Online – Môn 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é!!!


Môn Lập Trình .net

Bài Tập, Đề Thi Trắc Nghiệm Online - Môn Lập Trình .net - Đề 10

Bài Tập, Đề Thi Trắc Nghiệm Online - Môn Lập Trình .net - Đề 10 bao gồm nhiều câu hỏi hay, bám sát chương trình. Cùng làm bài tập trắc nghiệm ngay.

Câu 1: Trong .NET, Common Language Runtime (CLR) chịu trách nhiệm chính cho việc gì trong quá trình thực thi ứng dụng?

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

Câu 2: Cho đoạn mã C# sau: `int x = 10; object y = x; int z = (int)y;`. Điều gì xảy ra khi dòng code `int z = (int)y;` được thực thi?

  • A. Lỗi biên dịch do không thể chuyển đổi object sang int
  • B. Biến `z` sẽ nhận giá trị 10
  • C. Lỗi runtime do ép kiểu không hợp lệ
  • D. Biến `y` sẽ bị xóa khỏi bộ nhớ

Câu 3: Phương thức mở rộng (Extension Method) trong C# được sử dụng để làm gì?

  • A. Tăng tốc độ thực thi của chương trình
  • B. Thay thế cho việc sử dụng đa hình (polymorphism)
  • C. Tạo ra các lớp kế thừa một cách linh hoạt hơn
  • D. Thêm phương thức mới vào một kiểu dữ liệu đã có mà không cần thay đổi mã nguồn của kiểu đó

Câu 4: Đâu là sự khác biệt chính giữa `List` và `ArrayList` trong .NET?

  • A. `List` là kiểu generic, type-safe, còn `ArrayList` thì không
  • B. `ArrayList` nhanh hơn `List` trong hầu hết các thao tác
  • C. `List` có thể chứa các phần tử thuộc nhiều kiểu dữ liệu khác nhau, còn `ArrayList` thì không
  • D. `ArrayList` được giới thiệu sau `List` và là phiên bản cải tiến

Câu 5: Trong lập trình hướng đối tượng với C#, khái niệm "tính đóng gói" (encapsulation) mang lại lợi ích gì?

  • A. Giảm thiểu việc sử dụng bộ nhớ
  • B. Tăng tốc độ biên dịch chương trình
  • C. Che giấu thông tin và bảo vệ dữ liệu bên trong đối tượng, tăng tínhModule hóa
  • D. Cho phép đa kế thừa (multiple inheritance)

Câu 6: Delegates và Events trong C# được sử dụng chủ yếu để giải quyết vấn đề nào?

  • A. Quản lý đa luồng (multithreading)
  • B. Xử lý sự kiện và tạo cơ chế callback
  • C. Truyền dữ liệu giữa các ứng dụng web
  • D. Tối ưu hóa hiệu suất truy vấn cơ sở dữ liệu

Câu 7: Cho đoạn code C#: `string str1 =

  • A. Stack, vì string là kiểu giá trị
  • B. Heap, cùng vị trí với `str1` và `str2`
  • C. String pool, để tối ưu hóa bộ nhớ
  • D. Heap, ở một vùng nhớ mới khác với `str1` và `str2`

Câu 8: Khi nào nên sử dụng cấu trúc `struct` thay vì `class` trong C#?

  • A. Khi cần biểu diễn các kiểu dữ liệu nhỏ, đơn giản, và hiệu suất là quan trọng
  • B. Khi cần kế thừa từ các kiểu dữ liệu khác
  • C. Khi cần sử dụng đa hình (polymorphism)
  • D. Khi cần quản lý bộ nhớ một cách thủ công

Câu 9: LINQ (Language Integrated Query) trong .NET Framework cung cấp lợi ích chính nào?

  • A. Tăng cường bảo mật cho ứng dụng
  • B. Cải thiện khả năng tương tác với giao diện người dùng
  • C. Cung cấp cú pháp truy vấn dữ liệu thống nhất và mạnh mẽ trên nhiều nguồn dữ liệu khác nhau
  • D. Giảm kích thước file thực thi của ứng dụng

Câu 10: Trong ASP.NET Core, Middleware pipeline chịu trách nhiệm xử lý điều gì?

  • A. Quản lý phiên làm việc của người dùng (Session management)
  • B. Xử lý các HTTP request và response đến ứng dụng
  • C. Kết nối và truy vấn cơ sở dữ liệu
  • D. Render giao diện người dùng (UI) phía server

Câu 11: Dependency Injection (DI) container trong .NET (ví dụ: ASP.NET Core DI) giúp đạt được mục tiêu thiết kế nào?

  • A. Tăng hiệu suất ứng dụng bằng cách giảm thời gian khởi tạo đối tượng
  • B. Đơn giản hóa việc quản lý bộ nhớ
  • C. Tự động tạo tài liệu API cho ứng dụng
  • D. Giảm sự phụ thuộc giữa các thành phần, tăng tínhModule hóa và khả năng kiểm thử

Câu 12: Attribute trong C# được sử dụng để làm gì?

  • A. Thay thế cho việc sử dụng comment trong code
  • B. Định nghĩa các biến toàn cục
  • C. Cung cấp metadata (thông tin mô tả) cho các thành phần code như lớp, phương thức, thuộc tính
  • D. Tạo ra các ngoại lệ (exceptions) tùy chỉnh

Câu 13: Cho đoạn code C#: `var numbers = new int[]{1, 2, 3, 4, 5}; var evenNumbers = numbers.Where(n => n % 2 == 0);`. `evenNumbers` sẽ chứa gì sau khi đoạn code này thực thi?

  • A. `{1, 3, 5}`
  • B. `{2, 4}`
  • C. `{1, 2, 3, 4, 5}`
  • D. Một lỗi runtime sẽ xảy ra

Câu 14: Async và Await trong C# được sử dụng để cải thiện điều gì trong ứng dụng?

  • A. Tốc độ xử lý CPU
  • B. Mức độ bảo mật của ứng dụng
  • C. Khả năng tương thích với các hệ điều hành khác nhau
  • D. Khả năng phản hồi của giao diện người dùng và hiệu suất trong các hoạt động I/O-bound

Câu 15: Đâu là mục đích chính của Garbage Collector (GC) trong .NET?

  • A. Tối ưu hóa tốc độ truy cập bộ nhớ cache
  • B. Phân bổ bộ nhớ cho các đối tượng một cách hiệu quả
  • C. Tự động thu hồi bộ nhớ không còn được sử dụng bởi ứng dụng
  • D. Ngăn chặn lỗi tràn bộ nhớ stack

Câu 16: Serialization trong .NET được sử dụng để làm gì?

  • A. Mã hóa dữ liệu để tăng cường bảo mật
  • B. Chuyển đổi đối tượng thành một định dạng có thể lưu trữ hoặc truyền tải qua mạng
  • C. Kiểm tra tính toàn vẹn của dữ liệu
  • D. Tối ưu hóa hiệu suất truy cập dữ liệu từ ổ cứng

Câu 17: Unit testing có vai trò quan trọng như thế nào trong phát triển phần mềm .NET?

  • A. Chỉ cần thiết cho các dự án lớn và phức tạp
  • B. Chủ yếu để kiểm tra hiệu suất của ứng dụng
  • C. Giúp tạo tài liệu hướng dẫn sử dụng phần mềm
  • D. Đảm bảo chất lượng code, phát hiện lỗi sớm và giúp refactor code an toàn hơn

Câu 18: Cho đoạn code C#: `interface ICalculator { int Add(int a, int b); } class SimpleCalculator : ICalculator { public int Add(int a, int b) { return a + b; } }`. Đoạn code này minh họa khái niệm OOP nào?

  • A. Đóng gói (Encapsulation)
  • B. Kế thừa (Inheritance)
  • C. Trừu tượng (Abstraction) và Đa hình (Polymorphism)
  • D. Thành phần hóa (Composition)

Câu 19: Regex (Regular Expression) trong .NET được sử dụng chủ yếu để làm gì?

  • A. Tạo giao diện người dùng linh hoạt
  • B. Tìm kiếm, so khớp và thao tác với chuỗi dựa trên mẫu
  • C. Quản lý bộ nhớ cho ứng dụng
  • D. Tối ưu hóa truy vấn cơ sở dữ liệu

Câu 20: Trong Entity Framework Core (EF Core), khái niệm "DbContext" đóng vai trò gì?

  • A. Đại diện cho một session làm việc với cơ sở dữ liệu, quản lý kết nối và truy vấn
  • B. Định nghĩa cấu trúc bảng và quan hệ trong cơ sở dữ liệu
  • C. Thực hiện migration cơ sở dữ liệu
  • D. Tạo ra các API Web cho ứng dụng

Câu 21: Cho đoạn code C#: `string name = null; int length = name?.Length ?? 0;`. Giá trị của `length` sẽ là bao nhiêu sau khi thực thi?

  • A. Lỗi NullReferenceException
  • B. Giá trị ngẫu nhiên
  • C. 0
  • D. 4 (độ dài chuỗi

Câu 22: Đâu là sự khác biệt chính giữa `IEnumerable` và `IQueryable` trong LINQ?

  • A. `IQueryable` nhanh hơn `IEnumerable` trong mọi trường hợp
  • B. `IQueryable` dùng cho truy vấn database (server-side), `IEnumerable` dùng cho truy vấn in-memory collections (client-side)
  • C. `IEnumerable` hỗ trợ lazy loading, còn `IQueryable` thì không
  • D. `IQueryable` có thể được sử dụng trong môi trường đa luồng, còn `IEnumerable` thì không

Câu 23: Cho đoạn code C#: `Action greet = name => { Console.WriteLine(

  • A. Lambda expression và Delegate
  • B. Generics và Collections
  • C. Reflection và Attributes
  • D. Exception Handling và Debugging

Câu 24: Trong mô hình MVC (Model-View-Controller) của ASP.NET Core, Controller chịu trách nhiệm chính cho điều gì?

  • A. Hiển thị dữ liệu cho người dùng
  • B. Lưu trữ và quản lý dữ liệu của ứng dụng
  • C. Xử lý request từ người dùng, tương tác với Model và chọn View
  • D. Xác thực và phân quyền người dùng

Câu 25: Kỹ thuật Caching trong .NET được sử dụng để cải thiện điều gì?

  • A. Bảo mật dữ liệu
  • B. Hiệu suất ứng dụng bằng cách giảm thời gian truy cập dữ liệu lặp lại
  • C. Khả năng mở rộng của ứng dụng
  • D. Tính dễ bảo trì của code

Câu 26: Cho đoạn code C#: `try { // Code có thể gây ra exception } catch (Exception ex) { // Xử lý exception } finally { // Code luôn được thực thi }`. Khối `finally` được thực thi khi nào?

  • A. Chỉ khi có exception xảy ra trong khối `try`
  • B. Chỉ khi không có exception xảy ra trong khối `try`
  • C. Chỉ khi exception được xử lý thành công trong khối `catch`
  • D. Luôn được thực thi, bất kể có exception hay không

Câu 27: NuGet Package Manager được sử dụng để làm gì trong .NET development?

  • A. Biên dịch mã nguồn C# thành mã máy
  • B. Gỡ lỗi ứng dụng .NET
  • C. Quản lý và cài đặt các thư viện và công cụ bên ngoài cho dự án .NET
  • D. Triển khai ứng dụng .NET lên server

Câu 28: Đâu là lợi ích chính của việc sử dụng Interfaces trong C#?

  • A. Đạt được tính đa hình (polymorphism), loose coupling và khả năng mở rộng hệ thống
  • B. Tăng tốc độ thực thi chương trình
  • C. Giảm thiểu sử dụng bộ nhớ
  • D. Đơn giản hóa việc quản lý bộ nhớ

Câu 29: Cho đoạn code C#: `int number = 5; Action operation = () => number++;`. Điều gì xảy ra khi `operation()` được gọi nhiều lần?

  • A. Lỗi biên dịch vì không thể thay đổi giá trị của `number` trong lambda
  • B. Giá trị của `number` sẽ tăng lên mỗi lần gọi `operation()`
  • C. Giá trị của `number` luôn là 5, vì lambda tạo ra bản sao của `number`
  • D. Chỉ lần gọi `operation()` đầu tiên làm thay đổi `number`

Câu 30: Trong ngữ cảnh của microservices và .NET, Docker container được sử dụng để làm gì?

  • A. Tăng tốc độ biên dịch ứng dụng
  • B. Quản lý cơ sở dữ liệu cho microservices
  • C. Đóng gói ứng dụng và các dependencies để triển khai và quản lý microservices một cách độc lập và nhất quán
  • D. Giám sát hiệu suất của microservices

1 / 30

Category: Bài Tập, Đề Thi Trắc Nghiệm Online - Môn Lập Trình .net

Tags: Bộ đề 10

Câu 1: Trong .NET, Common Language Runtime (CLR) chịu trách nhiệm chính cho việc gì trong quá trình thực thi ứng dụng?

2 / 30

Category: Bài Tập, Đề Thi Trắc Nghiệm Online - Môn Lập Trình .net

Tags: Bộ đề 10

Câu 2: Cho đoạn mã C# sau: `int x = 10; object y = x; int z = (int)y;`. Điều gì xảy ra khi dòng code `int z = (int)y;` được thực thi?

3 / 30

Category: Bài Tập, Đề Thi Trắc Nghiệm Online - Môn Lập Trình .net

Tags: Bộ đề 10

Câu 3: Phương thức mở rộng (Extension Method) trong C# được sử dụng để làm gì?

4 / 30

Category: Bài Tập, Đề Thi Trắc Nghiệm Online - Môn Lập Trình .net

Tags: Bộ đề 10

Câu 4: Đâu là sự khác biệt chính giữa `List` và `ArrayList` trong .NET?

5 / 30

Category: Bài Tập, Đề Thi Trắc Nghiệm Online - Môn Lập Trình .net

Tags: Bộ đề 10

Câu 5: Trong lập trình hướng đối tượng với C#, khái niệm 'tính đóng gói' (encapsulation) mang lại lợi ích gì?

6 / 30

Category: Bài Tập, Đề Thi Trắc Nghiệm Online - Môn Lập Trình .net

Tags: Bộ đề 10

Câu 6: Delegates và Events trong C# được sử dụng chủ yếu để giải quyết vấn đề nào?

7 / 30

Category: Bài Tập, Đề Thi Trắc Nghiệm Online - Môn Lập Trình .net

Tags: Bộ đề 10

Câu 7: Cho đoạn code C#: `string str1 = "hello"; string str2 = "world"; string str3 = str1 + str2;`. Chuỗi `str3` được lưu trữ ở đâu trong bộ nhớ?

8 / 30

Category: Bài Tập, Đề Thi Trắc Nghiệm Online - Môn Lập Trình .net

Tags: Bộ đề 10

Câu 8: Khi nào nên sử dụng cấu trúc `struct` thay vì `class` trong C#?

9 / 30

Category: Bài Tập, Đề Thi Trắc Nghiệm Online - Môn Lập Trình .net

Tags: Bộ đề 10

Câu 9: LINQ (Language Integrated Query) trong .NET Framework cung cấp lợi ích chính nào?

10 / 30

Category: Bài Tập, Đề Thi Trắc Nghiệm Online - Môn Lập Trình .net

Tags: Bộ đề 10

Câu 10: Trong ASP.NET Core, Middleware pipeline chịu trách nhiệm xử lý điều gì?

11 / 30

Category: Bài Tập, Đề Thi Trắc Nghiệm Online - Môn Lập Trình .net

Tags: Bộ đề 10

Câu 11: Dependency Injection (DI) container trong .NET (ví dụ: ASP.NET Core DI) giúp đạt được mục tiêu thiết kế nào?

12 / 30

Category: Bài Tập, Đề Thi Trắc Nghiệm Online - Môn Lập Trình .net

Tags: Bộ đề 10

Câu 12: Attribute trong C# được sử dụng để làm gì?

13 / 30

Category: Bài Tập, Đề Thi Trắc Nghiệm Online - Môn Lập Trình .net

Tags: Bộ đề 10

Câu 13: Cho đoạn code C#: `var numbers = new int[]{1, 2, 3, 4, 5}; var evenNumbers = numbers.Where(n => n % 2 == 0);`. `evenNumbers` sẽ chứa gì sau khi đoạn code này thực thi?

14 / 30

Category: Bài Tập, Đề Thi Trắc Nghiệm Online - Môn Lập Trình .net

Tags: Bộ đề 10

Câu 14: Async và Await trong C# được sử dụng để cải thiện điều gì trong ứng dụng?

15 / 30

Category: Bài Tập, Đề Thi Trắc Nghiệm Online - Môn Lập Trình .net

Tags: Bộ đề 10

Câu 15: Đâu là mục đích chính của Garbage Collector (GC) trong .NET?

16 / 30

Category: Bài Tập, Đề Thi Trắc Nghiệm Online - Môn Lập Trình .net

Tags: Bộ đề 10

Câu 16: Serialization trong .NET được sử dụng để làm gì?

17 / 30

Category: Bài Tập, Đề Thi Trắc Nghiệm Online - Môn Lập Trình .net

Tags: Bộ đề 10

Câu 17: Unit testing có vai trò quan trọng như thế nào trong phát triển phần mềm .NET?

18 / 30

Category: Bài Tập, Đề Thi Trắc Nghiệm Online - Môn Lập Trình .net

Tags: Bộ đề 10

Câu 18: Cho đoạn code C#: `interface ICalculator { int Add(int a, int b); } class SimpleCalculator : ICalculator { public int Add(int a, int b) { return a + b; } }`. Đoạn code này minh họa khái niệm OOP nào?

19 / 30

Category: Bài Tập, Đề Thi Trắc Nghiệm Online - Môn Lập Trình .net

Tags: Bộ đề 10

Câu 19: Regex (Regular Expression) trong .NET được sử dụng chủ yếu để làm gì?

20 / 30

Category: Bài Tập, Đề Thi Trắc Nghiệm Online - Môn Lập Trình .net

Tags: Bộ đề 10

Câu 20: Trong Entity Framework Core (EF Core), khái niệm 'DbContext' đóng vai trò gì?

21 / 30

Category: Bài Tập, Đề Thi Trắc Nghiệm Online - Môn Lập Trình .net

Tags: Bộ đề 10

Câu 21: Cho đoạn code C#: `string name = null; int length = name?.Length ?? 0;`. Giá trị của `length` sẽ là bao nhiêu sau khi thực thi?

22 / 30

Category: Bài Tập, Đề Thi Trắc Nghiệm Online - Môn Lập Trình .net

Tags: Bộ đề 10

Câu 22: Đâu là sự khác biệt chính giữa `IEnumerable` và `IQueryable` trong LINQ?

23 / 30

Category: Bài Tập, Đề Thi Trắc Nghiệm Online - Môn Lập Trình .net

Tags: Bộ đề 10

Câu 23: Cho đoạn code C#: `Action greet = name => { Console.WriteLine("Hello, " + name); }; greet("World");`. Đoạn code này sử dụng khái niệm gì?

24 / 30

Category: Bài Tập, Đề Thi Trắc Nghiệm Online - Môn Lập Trình .net

Tags: Bộ đề 10

Câu 24: Trong mô hình MVC (Model-View-Controller) của ASP.NET Core, Controller chịu trách nhiệm chính cho điều gì?

25 / 30

Category: Bài Tập, Đề Thi Trắc Nghiệm Online - Môn Lập Trình .net

Tags: Bộ đề 10

Câu 25: Kỹ thuật Caching trong .NET được sử dụng để cải thiện điều gì?

26 / 30

Category: Bài Tập, Đề Thi Trắc Nghiệm Online - Môn Lập Trình .net

Tags: Bộ đề 10

Câu 26: Cho đoạn code C#: `try { // Code có thể gây ra exception } catch (Exception ex) { // Xử lý exception } finally { // Code luôn được thực thi }`. Khối `finally` được thực thi khi nào?

27 / 30

Category: Bài Tập, Đề Thi Trắc Nghiệm Online - Môn Lập Trình .net

Tags: Bộ đề 10

Câu 27: NuGet Package Manager được sử dụng để làm gì trong .NET development?

28 / 30

Category: Bài Tập, Đề Thi Trắc Nghiệm Online - Môn Lập Trình .net

Tags: Bộ đề 10

Câu 28: Đâu là lợi ích chính của việc sử dụng Interfaces trong C#?

29 / 30

Category: Bài Tập, Đề Thi Trắc Nghiệm Online - Môn Lập Trình .net

Tags: Bộ đề 10

Câu 29: Cho đoạn code C#: `int number = 5; Action operation = () => number++;`. Điều gì xảy ra khi `operation()` được gọi nhiều lần?

30 / 30

Category: Bài Tập, Đề Thi Trắc Nghiệm Online - Môn Lập Trình .net

Tags: Bộ đề 10

Câu 30: Trong ngữ cảnh của microservices và .NET, Docker container được sử dụng để làm gì?

Xem kết quả