12+ Đề Trắc Nghiệm Tin Học 11 (Kết Nối Tri Thức) Bài 28: Thiết Kế Chương Trình Theo Mô Đun

Đề 01

Đề 02

Đề 03

Đề 04

Đề 05

Đề 06

Đề 07

Đề 08

Đề 09

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


Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun - Đề 01

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun - Đề 01 được xây dựng với nhiều câu hỏi chất lượng, sát với nội dung chương trình học, giúp bạn dễ dàng ôn tập và kiểm tra kiến thức hiệu quả. Hãy cùng bắt đầu làm bài tập trắc nghiệm ngay để nâng cao hiểu biết và chuẩn bị tốt cho kỳ thi sắp tới!

Câu 1: Theo phương pháp thiết kế chương trình theo mô đun, một chương trình lớn được chia thành các phần nhỏ hơn, mỗi phần được gọi là một mô đun. Đặc điểm nào sau đây là quan trọng nhất của một mô đun để nó có thể dễ dàng được tái sử dụng trong các chương trình khác?

  • A. Mô đun phải có kích thước nhỏ.
  • B. Mô đun phải được viết bằng ngôn ngữ lập trình phổ biến.
  • C. Mô đun phải có nhiều tham số đầu vào.
  • D. Mô đun thực hiện một chức năng cụ thể, độc lập và có giao diện rõ ràng.

Câu 2: Phương pháp thiết kế chương trình theo mô đun giúp quá trình phát triển phần mềm trở nên hiệu quả hơn ở nhiều khía cạnh. Lợi ích nào sau đây không phải là ưu điểm trực tiếp của việc chia chương trình thành các mô đun?

  • A. Giảm thời gian gỡ lỗi và kiểm thử.
  • B. Tăng khả năng tái sử dụng các phần của chương trình.
  • C. Chắc chắn làm chương trình chạy nhanh hơn.
  • D. Hỗ trợ làm việc nhóm hiệu quả hơn.

Câu 3: Bạn được giao nhiệm vụ phát triển một chương trình xử lý dữ liệu điểm thi của học sinh. Chương trình cần thực hiện các bước: (1) Đọc điểm từ tệp, (2) Tính điểm trung bình cho từng học sinh, (3) Xếp loại học sinh (Giỏi, Khá, Trung bình...), (4) Ghi kết quả xếp loại ra tệp báo cáo. Nếu áp dụng phương pháp thiết kế theo mô đun, bạn nên chia công việc thành các mô đun chính dựa trên nguyên tắc nào?

  • A. Chia theo các chức năng xử lý dữ liệu độc lập (Đọc, Tính điểm, Xếp loại, Ghi báo cáo).
  • B. Chia theo từng loại dữ liệu đầu vào (Điểm Toán, Điểm Lý, Điểm Hóa...).
  • C. Chia theo số lượng học sinh cần xử lý (Nhóm 1-100, Nhóm 101-200...).
  • D. Chia ngẫu nhiên để đảm bảo kích thước mô đun bằng nhau.

Câu 4: Xét chương trình quản lý bán hàng đã được chia thành các mô đun: `NhapThongTinSP` (Nhập thông tin sản phẩm), `TinhGiaBan` (Tính giá bán bao gồm thuế), `CapNhatTonKho` (Cập nhật số lượng tồn kho), `TaoHoaDon` (Tạo và in hóa đơn). Nếu quy định về thuế suất bán hàng thay đổi, bạn cần chỉnh sửa chủ yếu ở mô đun nào để cập nhật chương trình?

  • A. NhapThongTinSP
  • B. TinhGiaBan
  • C. CapNhatTonKho
  • D. TaoHoaDon

Câu 5: Một trong những nguyên tắc của thiết kế theo mô đun là "đóng gói" (encapsulation). Đặc điểm nào sau đây mô tả đúng khái niệm đóng gói trong ngữ cảnh mô đun?

  • A. Mô đun phải chứa tất cả dữ liệu mà nó xử lý.
  • B. Mô đun chỉ có thể được gọi bởi mô đun chính.
  • C. Chi tiết cài đặt bên trong của mô đun được ẩn đi, chỉ có giao diện được công khai.
  • D. Mô đun phải được đặt tên theo một quy tắc nhất định.

Câu 6: Bạn đang làm việc trong một nhóm phát triển phần mềm. Nhóm của bạn đang xây dựng một ứng dụng quản lý sinh viên. Áp dụng thiết kế theo mô đun mang lại lợi ích gì rõ ràng nhất cho quá trình làm việc nhóm?

  • A. Giúp phân chia công việc cho các thành viên trong nhóm một cách độc lập.
  • B. Tự động đồng bộ hóa mã nguồn giữa các thành viên.
  • C. Giảm số lượng dòng mã cần viết.
  • D. Loại bỏ hoàn toàn lỗi phát sinh khi nhiều người cùng làm việc.

Câu 7: Trong phương pháp làm mịn dần (stepwise refinement), việc thiết kế chương trình theo mô đun tương ứng với giai đoạn nào?

  • A. Xác định yêu cầu ban đầu của bài toán.
  • B. Phân rã bài toán lớn thành các bài toán con đơn giản hơn.
  • C. Viết mã nguồn cho toàn bộ chương trình.
  • D. Kiểm thử chương trình sau khi hoàn thành.

Câu 8: Xét một chương trình xử lý ảnh đơn giản: (1) Đọc ảnh từ tệp, (2) Áp dụng bộ lọc xám, (3) Áp dụng bộ lọc làm mờ, (4) Lưu ảnh đã xử lý ra tệp mới. Nếu bạn muốn thêm chức năng "áp dụng bộ lọc sắc nét", bạn nên thêm mô đun mới hoặc chỉnh sửa mô đun nào dựa trên thiết kế hiện tại?

  • A. Thêm một mô đun mới cho chức năng "áp dụng bộ lọc sắc nét".
  • B. Chỉnh sửa mô đun "Áp dụng bộ lọc xám".
  • C. Chỉnh sửa mô đun "Áp dụng bộ lọc làm mờ".
  • D. Chỉnh sửa mô đun "Đọc ảnh từ tệp".

Câu 9: Khi thiết kế chương trình theo mô đun, việc xác định "giao diện" của mô đun là rất quan trọng. Giao diện của mô đun bao gồm những gì?

  • A. Toàn bộ mã nguồn bên trong mô đun.
  • B. Chỉ tên của mô đun.
  • C. Các hàm/thủ tục mà mô đun cung cấp cho bên ngoài sử dụng và cách sử dụng chúng (tham số, kiểu trả về).
  • D. Tên của các biến nội bộ mà mô đun sử dụng.

Câu 10: Một dự án phần mềm lớn được chia thành hàng trăm mô đun. Điều này có thể dẫn đến thách thức nào trong quá trình phát triển và quản lý dự án?

  • A. Mỗi mô đun sẽ trở nên quá đơn giản để cài đặt.
  • B. Khó khăn trong việc quản lý mối quan hệ và sự phụ thuộc giữa các mô đun.
  • C. Chương trình cuối cùng chắc chắn sẽ có kích thước rất nhỏ.
  • D. Giảm khả năng tái sử dụng các mô đun.

Câu 11: Khi một lỗi được phát hiện trong chương trình được thiết kế theo mô đun, việc xác định và sửa lỗi thường dễ dàng hơn so với chương trình viết "nguyên khối" (monolithic). Lý do chính là gì?

  • A. Mô đun tự động sửa lỗi khi phát hiện.
  • B. Số lượng dòng mã ít hơn trong mỗi mô đun.
  • C. Lỗi chỉ xảy ra trong mô đun mới được thêm vào.
  • D. Lỗi thường được cô lập trong một mô đun cụ thể, giúp khoanh vùng tìm kiếm.

Câu 12: Bạn đang thiết kế một chương trình trò chơi đơn giản. Các chức năng cần có bao gồm: (1) Khởi tạo trò chơi (thiết lập bàn chơi, điểm số ban đầu), (2) Xử lý đầu vào từ người chơi (di chuyển, tấn công), (3) Cập nhật trạng thái trò chơi (vị trí nhân vật, điểm số, va chạm), (4) Hiển thị trạng thái trò chơi lên màn hình. Nếu áp dụng thiết kế theo mô đun, mô đun "Xử lý đầu vào từ người chơi" có khả năng sẽ tương tác (gọi hoặc trao đổi dữ liệu) với mô đun nào nhiều nhất?

  • A. Khởi tạo trò chơi
  • B. Hiển thị trạng thái trò chơi
  • C. Cập nhật trạng thái trò chơi
  • D. Không tương tác với mô đun nào khác.

Câu 13: Một chương trình được thiết kế theo mô đun X và mô đun Y. Mô đun X gọi một hàm từ mô đun Y. Điều này thể hiện mối quan hệ nào giữa X và Y?

  • A. X phụ thuộc vào Y.
  • B. Y phụ thuộc vào X.
  • C. X và Y độc lập hoàn toàn.
  • D. X và Y có cùng chức năng.

Câu 14: Khi thiết kế một mô đun, mục tiêu là làm cho nó có "sự kết dính cao" (high cohesion) và "khớp nối lỏng" (loose coupling). "Sự kết dính cao" (high cohesion) của một mô đun nghĩa là gì?

  • A. Mô đun có ít mối quan hệ với các mô đun khác.
  • B. Các yếu tố (lệnh, biến) bên trong mô đun liên quan chặt chẽ đến nhau và cùng thực hiện một chức năng duy nhất.
  • C. Mô đun có thể được sử dụng trong nhiều chương trình khác nhau.
  • D. Mô đun không phụ thuộc vào bất kỳ mô đun nào khác.

Câu 15: "Khớp nối lỏng" (loose coupling) giữa các mô đun nghĩa là gì và tại sao nó lại quan trọng trong thiết kế theo mô đun?

  • A. Các mô đun ít phụ thuộc vào nhau; giúp dễ dàng thay đổi một mô đun mà ít ảnh hưởng đến các mô đun khác.
  • B. Các mô đun chia sẻ nhiều dữ liệu chung; giúp truyền thông tin nhanh hơn.
  • C. Mỗi mô đun thực hiện nhiều chức năng khác nhau; giúp chương trình gọn hơn.
  • D. Các mô đun được viết bởi các lập trình viên khác nhau; giúp phân công công việc dễ dàng.

Câu 16: Bạn đang thiết kế một chương trình xử lý đơn hàng trực tuyến. Công việc "kiểm tra tính hợp lệ của địa chỉ giao hàng" nên được đặt ở mô đun nào hoặc tạo thành mô đun riêng? Tại sao?

  • A. Đặt trong mô đun "Xử lý thanh toán" vì liên quan đến thông tin khách hàng.
  • B. Đặt trong mô đun "Cập nhật kho hàng" vì ảnh hưởng đến việc giao hàng.
  • C. Gộp chung vào mô đun "Tạo đơn hàng" để giảm số lượng mô đun.
  • D. Tạo thành một mô đun riêng biệt "KiemTraDiaChi" để cô lập chức năng và dễ bảo trì.

Câu 17: Một trong những lợi ích của thiết kế theo mô đun là tăng khả năng bảo trì chương trình. Điều này đặc biệt đúng khi nào?

  • A. Khi cần sửa lỗi hoặc bổ sung chức năng mới cho chương trình.
  • B. Khi chương trình chỉ có một chức năng duy nhất.
  • C. Khi chương trình không sử dụng bất kỳ dữ liệu nào.
  • D. Khi chương trình được viết bởi chỉ một lập trình viên.

Câu 18: Trong quá trình thiết kế từ trên xuống (top-down design), bước đầu tiên là xác định bài toán tổng thể. Bước tiếp theo là gì, theo nguyên tắc của làm mịn dần và thiết kế theo mô đun?

  • A. Viết mã nguồn cho bài toán tổng thể.
  • B. Phân rã bài toán tổng thể thành các bài toán con.
  • C. Kiểm thử giải pháp cuối cùng.
  • D. Xác định ngôn ngữ lập trình sẽ sử dụng.

Câu 19: Bạn đang thiết kế một ứng dụng di động đơn giản. Chức năng "lưu cài đặt người dùng vào bộ nhớ điện thoại" nên được coi là một mô đun riêng biệt vì lý do nào là phù hợp nhất với nguyên tắc thiết kế mô đun?

  • A. Chức năng này rất đơn giản.
  • B. Chức năng này cần được gọi thường xuyên.
  • C. Chức năng này liên quan đến giao diện người dùng.
  • D. Chức năng này thực hiện một nhiệm vụ cụ thể, độc lập liên quan đến lưu trữ/đọc dữ liệu.

Câu 20: Xét lại ví dụ chương trình xử lý dữ liệu điểm thi ở Câu 3. Nếu sau này bạn muốn thêm chức năng "vẽ biểu đồ phân bố điểm cho cả lớp", công việc này thuộc nhóm nào theo phân loại công việc khi làm việc với chương trình mô đun?

  • A. Công việc mới hoàn toàn.
  • B. Công việc nâng cấp một mô đun cũ.
  • C. Công việc không liên quan đến thuật toán và lập trình.
  • D. Chỉ là thay đổi nhỏ trong mô đun báo cáo.

Câu 21: Khi thiết kế chương trình theo mô đun, việc đặt tên cho các mô đun và các hàm/biến bên trong cần tuân thủ nguyên tắc nào để tăng tính dễ đọc và dễ hiểu?

  • A. Tên càng ngắn gọn càng tốt.
  • B. Tên nên phản ánh rõ ràng chức năng hoặc mục đích của mô đun/yếu tố.
  • C. Sử dụng các từ viết tắt để tiết kiệm không gian.
  • D. Đặt tên theo thứ tự alphabet.

Câu 22: Giả sử bạn có một mô đun `XuLyDuLieu` nhận vào một danh sách số và trả về danh sách các số đã được sắp xếp. Mô đun này nên có "sự kết dính" (cohesion) như thế nào?

  • A. Thấp, vì nó cần xử lý nhiều loại dữ liệu khác nhau.
  • B. Trung bình, vì nó chỉ làm một công việc cụ thể là xử lý dữ liệu.
  • C. Cao, nếu nó chỉ tập trung vào việc sắp xếp dữ liệu theo một logic nhất định.
  • D. Không thể xác định nếu không biết mã nguồn chi tiết.

Câu 23: Trong một chương trình quản lý kho, có các mô đun `NhapHang` (Nhập hàng vào kho), `BanHang` (Bán hàng ra), `KiemKe` (Kiểm kê tồn kho), `LapBaoCaoTonKho` (Lập báo cáo tồn kho). Mô đun `LapBaoCaoTonKho` có khả năng sẽ phụ thuộc vào mô đun nào nhất để lấy thông tin cần thiết?

  • A. NhapHang
  • B. BanHang
  • C. KiemKe
  • D. Không phụ thuộc vào mô đun nào khác.

Câu 24: Khi thiết kế chương trình theo mô đun, việc xác định rõ ràng "giao diện" của từng mô đun mang lại lợi ích gì cho quá trình phát triển?

  • A. Giúp chương trình chạy nhanh hơn.
  • B. Cho phép các mô đun được phát triển độc lập và song song.
  • C. Tự động tạo tài liệu hướng dẫn sử dụng mô đun.
  • D. Giảm số lượng biến cần sử dụng trong chương trình.

Câu 25: Bạn đang phát triển một ứng dụng web. Chức năng "xác thực thông tin đăng nhập của người dùng" (kiểm tra tên đăng nhập và mật khẩu có khớp với dữ liệu lưu trữ hay không) nên được thiết kế thành mô đun riêng biệt. Điều này giúp tăng cường khía cạnh nào của chương trình?

  • A. Hiệu năng xử lý.
  • B. Kích thước mã nguồn.
  • C. Bảo mật và khả năng bảo trì liên quan đến xác thực.
  • D. Giao diện người dùng.

Câu 26: Khi áp dụng phương pháp làm mịn dần kết hợp với thiết kế mô đun, quá trình này dừng lại khi nào?

  • A. Khi đã xác định được tất cả dữ liệu đầu vào.
  • B. Khi thời gian thiết kế đã hết.
  • C. Khi số lượng mô đun đạt đến một con số cố định.
  • D. Khi các bài toán con đã đủ đơn giản để có thể cài đặt trực tiếp.

Câu 27: Trong một chương trình, mô đun A gọi mô đun B, và mô đun B gọi mô đun C. Mối quan hệ phụ thuộc này được biểu diễn như thế nào trong sơ đồ cấu trúc mô đun?

  • A. Mũi tên từ A đến B và mũi tên từ B đến C.
  • B. Mũi tên từ B đến A và mũi tên từ C đến B.
  • C. Mũi tên từ A đến C.
  • D. Không có mũi tên nào, chỉ cần liệt kê các mô đun.

Câu 28: Việc sử dụng các mô đun có sẵn (ví dụ: thư viện chuẩn của ngôn ngữ lập trình) khi thiết kế chương trình theo mô đun thể hiện lợi ích nào rõ rệt nhất?

  • A. Làm cho chương trình khó hiểu hơn.
  • B. Giảm khả năng làm việc nhóm.
  • C. Tăng kích thước của chương trình.
  • D. Tăng khả năng tái sử dụng và tiết kiệm thời gian phát triển.

Câu 29: Một lập trình viên mới tham gia dự án được thiết kế theo mô đun. Anh ấy được giao nhiệm vụ phát triển một mô đun mới. Nhờ có thiết kế mô đun, người này có thể bắt đầu làm việc hiệu quả mà không nhất thiết phải hiểu chi tiết toàn bộ chương trình lớn ngay lập tức. Điều này là nhờ đặc điểm nào của mô đun?

  • A. Mô đun có tính độc lập và giao diện rõ ràng.
  • B. Mô đun không chứa bất kỳ lỗi nào.
  • C. Mô đun được viết bằng ngôn ngữ lập trình đơn giản.
  • D. Mô đun tự động sinh mã.

Câu 30: Khi chương trình được chia thành các mô đun, việc kiểm thử trở nên dễ dàng hơn. Bạn có thể kiểm thử từng mô đun một cách riêng biệt trước khi tích hợp chúng lại. Phương pháp kiểm thử này được gọi là gì?

  • A. Kiểm thử hệ thống (System testing).
  • B. Kiểm thử đơn vị (Unit testing).
  • C. Kiểm thử tích hợp (Integration testing).
  • D. Kiểm thử chấp nhận (Acceptance testing).

1 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 01

Câu 1: Theo phương pháp thiết kế chương trình theo mô đun, một chương trình lớn được chia thành các phần nhỏ hơn, mỗi phần được gọi là một mô đun. Đặc điểm nào sau đây là *quan trọng nhất* của một mô đun để nó có thể dễ dàng được tái sử dụng trong các chương trình khác?

2 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 01

Câu 2: Phương pháp thiết kế chương trình theo mô đun giúp quá trình phát triển phần mềm trở nên hiệu quả hơn ở nhiều khía cạnh. Lợi ích nào sau đây *không phải* là ưu điểm trực tiếp của việc chia chương trình thành các mô đun?

3 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 01

Câu 3: Bạn được giao nhiệm vụ phát triển một chương trình xử lý dữ liệu điểm thi của học sinh. Chương trình cần thực hiện các bước: (1) Đọc điểm từ tệp, (2) Tính điểm trung bình cho từng học sinh, (3) Xếp loại học sinh (Giỏi, Khá, Trung bình...), (4) Ghi kết quả xếp loại ra tệp báo cáo. Nếu áp dụng phương pháp thiết kế theo mô đun, bạn nên chia công việc thành các mô đun chính dựa trên nguyên tắc nào?

4 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 01

Câu 4: Xét chương trình quản lý bán hàng đã được chia thành các mô đun: `NhapThongTinSP` (Nhập thông tin sản phẩm), `TinhGiaBan` (Tính giá bán bao gồm thuế), `CapNhatTonKho` (Cập nhật số lượng tồn kho), `TaoHoaDon` (Tạo và in hóa đơn). Nếu quy định về thuế suất bán hàng thay đổi, bạn cần chỉnh sửa *chủ yếu* ở mô đun nào để cập nhật chương trình?

5 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 01

Câu 5: Một trong những nguyên tắc của thiết kế theo mô đun là 'đóng gói' (encapsulation). Đặc điểm nào sau đây mô tả đúng khái niệm đóng gói trong ngữ cảnh mô đun?

6 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 01

Câu 6: Bạn đang làm việc trong một nhóm phát triển phần mềm. Nhóm của bạn đang xây dựng một ứng dụng quản lý sinh viên. Áp dụng thiết kế theo mô đun mang lại lợi ích gì rõ ràng nhất cho quá trình làm việc nhóm?

7 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 01

Câu 7: Trong phương pháp làm mịn dần (stepwise refinement), việc thiết kế chương trình theo mô đun tương ứng với giai đoạn nào?

8 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 01

Câu 8: Xét một chương trình xử lý ảnh đơn giản: (1) Đọc ảnh từ tệp, (2) Áp dụng bộ lọc xám, (3) Áp dụng bộ lọc làm mờ, (4) Lưu ảnh đã xử lý ra tệp mới. Nếu bạn muốn thêm chức năng 'áp dụng bộ lọc sắc nét', bạn nên thêm mô đun mới hoặc chỉnh sửa mô đun nào dựa trên thiết kế hiện tại?

9 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 01

Câu 9: Khi thiết kế chương trình theo mô đun, việc xác định 'giao diện' của mô đun là rất quan trọng. Giao diện của mô đun bao gồm những gì?

10 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 01

Câu 10: Một dự án phần mềm lớn được chia thành hàng trăm mô đun. Điều này có thể dẫn đến thách thức nào trong quá trình phát triển và quản lý dự án?

11 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 01

Câu 11: Khi một lỗi được phát hiện trong chương trình được thiết kế theo mô đun, việc xác định và sửa lỗi thường dễ dàng hơn so với chương trình viết 'nguyên khối' (monolithic). Lý do chính là gì?

12 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 01

Câu 12: Bạn đang thiết kế một chương trình trò chơi đơn giản. Các chức năng cần có bao gồm: (1) Khởi tạo trò chơi (thiết lập bàn chơi, điểm số ban đầu), (2) Xử lý đầu vào từ người chơi (di chuyển, tấn công), (3) Cập nhật trạng thái trò chơi (vị trí nhân vật, điểm số, va chạm), (4) Hiển thị trạng thái trò chơi lên màn hình. Nếu áp dụng thiết kế theo mô đun, mô đun 'Xử lý đầu vào từ người chơi' có khả năng sẽ tương tác (gọi hoặc trao đổi dữ liệu) với mô đun nào nhiều nhất?

13 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 01

Câu 13: Một chương trình được thiết kế theo mô đun X và mô đun Y. Mô đun X gọi một hàm từ mô đun Y. Điều này thể hiện mối quan hệ nào giữa X và Y?

14 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 01

Câu 14: Khi thiết kế một mô đun, mục tiêu là làm cho nó có 'sự kết dính cao' (high cohesion) và 'khớp nối lỏng' (loose coupling). 'Sự kết dính cao' (high cohesion) của một mô đun nghĩa là gì?

15 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 01

Câu 15: 'Khớp nối lỏng' (loose coupling) giữa các mô đun nghĩa là gì và tại sao nó lại quan trọng trong thiết kế theo mô đun?

16 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 01

Câu 16: Bạn đang thiết kế một chương trình xử lý đơn hàng trực tuyến. Công việc 'kiểm tra tính hợp lệ của địa chỉ giao hàng' nên được đặt ở mô đun nào hoặc tạo thành mô đun riêng? Tại sao?

17 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 01

Câu 17: Một trong những lợi ích của thiết kế theo mô đun là tăng khả năng bảo trì chương trình. Điều này đặc biệt đúng khi nào?

18 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 01

Câu 18: Trong quá trình thiết kế từ trên xuống (top-down design), bước đầu tiên là xác định bài toán tổng thể. Bước tiếp theo là gì, theo nguyên tắc của làm mịn dần và thiết kế theo mô đun?

19 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 01

Câu 19: Bạn đang thiết kế một ứng dụng di động đơn giản. Chức năng 'lưu cài đặt người dùng vào bộ nhớ điện thoại' nên được coi là một mô đun riêng biệt vì lý do nào là *phù hợp nhất* với nguyên tắc thiết kế mô đun?

20 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 01

Câu 20: Xét lại ví dụ chương trình xử lý dữ liệu điểm thi ở Câu 3. Nếu sau này bạn muốn thêm chức năng 'vẽ biểu đồ phân bố điểm cho cả lớp', công việc này thuộc nhóm nào theo phân loại công việc khi làm việc với chương trình mô đun?

21 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 01

Câu 21: Khi thiết kế chương trình theo mô đun, việc đặt tên cho các mô đun và các hàm/biến bên trong cần tuân thủ nguyên tắc nào để tăng tính dễ đọc và dễ hiểu?

22 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 01

Câu 22: Giả sử bạn có một mô đun `XuLyDuLieu` nhận vào một danh sách số và trả về danh sách các số đã được sắp xếp. Mô đun này nên có 'sự kết dính' (cohesion) như thế nào?

23 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 01

Câu 23: Trong một chương trình quản lý kho, có các mô đun `NhapHang` (Nhập hàng vào kho), `BanHang` (Bán hàng ra), `KiemKe` (Kiểm kê tồn kho), `LapBaoCaoTonKho` (Lập báo cáo tồn kho). Mô đun `LapBaoCaoTonKho` có khả năng sẽ phụ thuộc vào mô đun nào nhất để lấy thông tin cần thiết?

24 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 01

Câu 24: Khi thiết kế chương trình theo mô đun, việc xác định rõ ràng 'giao diện' của từng mô đun mang lại lợi ích gì cho quá trình phát triển?

25 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 01

Câu 25: Bạn đang phát triển một ứng dụng web. Chức năng 'xác thực thông tin đăng nhập của người dùng' (kiểm tra tên đăng nhập và mật khẩu có khớp với dữ liệu lưu trữ hay không) nên được thiết kế thành mô đun riêng biệt. Điều này giúp tăng cường khía cạnh nào của chương trình?

26 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 01

Câu 26: Khi áp dụng phương pháp làm mịn dần kết hợp với thiết kế mô đun, quá trình này dừng lại khi nào?

27 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 01

Câu 27: Trong một chương trình, mô đun A gọi mô đun B, và mô đun B gọi mô đun C. Mối quan hệ phụ thuộc này được biểu diễn như thế nào trong sơ đồ cấu trúc mô đun?

28 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 01

Câu 28: Việc sử dụng các mô đun có sẵn (ví dụ: thư viện chuẩn của ngôn ngữ lập trình) khi thiết kế chương trình theo mô đun thể hiện lợi ích nào rõ rệt nhất?

29 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 01

Câu 29: Một lập trình viên mới tham gia dự án được thiết kế theo mô đun. Anh ấy được giao nhiệm vụ phát triển một mô đun mới. Nhờ có thiết kế mô đun, người này có thể bắt đầu làm việc hiệu quả mà không nhất thiết phải hiểu chi tiết toàn bộ chương trình lớn ngay lập tức. Điều này là nhờ đặc điểm nào của mô đun?

30 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 01

Câu 30: Khi chương trình được chia thành các mô đun, việc kiểm thử trở nên dễ dàng hơn. Bạn có thể kiểm thử từng mô đun một cách riêng biệt trước khi tích hợp chúng lại. Phương pháp kiểm thử này được gọi là gì?

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


Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun - Đề 02

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun - Đề 02 được xây dựng với nhiều câu hỏi chất lượng, sát với nội dung chương trình học, giúp bạn dễ dàng ôn tập và kiểm tra kiến thức hiệu quả. Hãy cùng bắt đầu làm bài tập trắc nghiệm ngay để nâng cao hiểu biết và chuẩn bị tốt cho kỳ thi sắp tới!

Câu 1: Phương pháp thiết kế chương trình theo mô đun là gì?

  • A. Là việc viết toàn bộ chương trình thành một khối lệnh duy nhất từ đầu đến cuối.
  • B. Là việc sử dụng các thư viện có sẵn mà không cần tự viết code.
  • C. Là việc chia chương trình lớn thành nhiều phần nhỏ hơn, độc lập, mỗi phần thực hiện một chức năng cụ thể.
  • D. Là phương pháp chỉ áp dụng cho các chương trình có giao diện đồ họa.

Câu 2: Lợi ích quan trọng nhất của việc thiết kế chương trình theo mô đun trong các dự án phần mềm lớn là gì?

  • A. Tăng khả năng làm việc nhóm và phân chia công việc hiệu quả.
  • B. Giảm hoàn toàn số lượng lỗi trong chương trình.
  • C. Luôn đảm bảo chương trình chạy nhanh hơn so với chương trình không chia mô đun.
  • D. Loại bỏ nhu cầu kiểm thử chương trình.

Câu 3: Giả sử bạn đang phát triển một ứng dụng quản lý thư viện. Nếu bạn áp dụng thiết kế theo mô đun, chức năng "tìm kiếm sách theo tên tác giả" có thể được xem là một phần của mô đun nào?

  • A. Mô đun quản lý người dùng.
  • B. Mô đun báo cáo thống kê.
  • C. Mô đun nhập liệu sách mới.
  • D. Mô đun tìm kiếm và truy vấn dữ liệu sách.

Câu 4: Khi chương trình được thiết kế theo mô đun, việc bảo trì và nâng cấp trở nên dễ dàng hơn vì lý do nào sau đây?

  • A. Toàn bộ mã nguồn nằm trong một tệp duy nhất.
  • B. Các thay đổi thường chỉ ảnh hưởng đến một hoặc một vài mô đun cụ thể, ít lan sang các phần khác.
  • C. Mô đun loại bỏ hoàn toàn nhu cầu cập nhật phần mềm.
  • D. Chỉ những lập trình viên ban đầu mới có thể hiểu và sửa chữa chương trình.

Câu 5: Trong ngữ cảnh thiết kế mô đun, "tính tái sử dụng" (reusability) có nghĩa là gì?

  • A. Khả năng chạy chương trình trên nhiều hệ điều hành khác nhau.
  • B. Khả năng chương trình tự động sửa lỗi.
  • C. Một mô đun đã được viết có thể được sử dụng lại trong nhiều chương trình hoặc nhiều phần khác nhau của cùng một chương trình.
  • D. Khả năng chương trình tự động tạo ra các phiên bản mới.

Câu 6: Bạn đang phát triển một chương trình xử lý dữ liệu bán hàng. Ban đầu, chương trình đọc dữ liệu từ tệp Excel. Sau đó, có yêu cầu thay đổi để đọc dữ liệu trực tiếp từ cơ sở dữ liệu. Nếu chương trình được thiết kế theo mô đun tốt, phần nào của chương trình sẽ cần thay đổi nhiều nhất?

  • A. Mô đun nhập/đọc dữ liệu.
  • B. Mô đun xử lý/tính toán dữ liệu.
  • C. Mô đun hiển thị/báo cáo kết quả.
  • D. Toàn bộ chương trình sẽ phải viết lại từ đầu.

Câu 7: Điều nào sau đây không phải là một nguyên tắc tốt khi thiết kế các mô đun?

  • A. Mỗi mô đun nên thực hiện một chức năng duy nhất, rõ ràng.
  • B. Các mô đun nên độc lập với nhau càng nhiều càng tốt.
  • C. Giao tiếp giữa các mô đun nên rõ ràng và tối thiểu.
  • D. Một mô đun nên truy cập và thay đổi trực tiếp dữ liệu bên trong của mô đun khác.

Câu 8: Trong một chương trình xử lý văn bản, nếu có một mô đun riêng để "kiểm tra chính tả" và một mô đun khác để "định dạng đoạn văn", điều này thể hiện lợi ích nào của thiết kế mô đun?

  • A. Tăng tốc độ thực thi chương trình.
  • B. Dễ dàng bảo trì và nâng cấp (ví dụ: cập nhật bộ từ điển kiểm tra chính tả mà không ảnh hưởng định dạng).
  • C. Giảm dung lượng bộ nhớ sử dụng.
  • D. Chương trình trở nên phức tạp hơn.

Câu 9: Khi phân rã một bài toán lớn thành các bài toán con nhỏ hơn để thiết kế mô đun, chúng ta thường dựa vào tiêu chí nào?

  • A. Số lượng dòng code của mỗi phần.
  • B. Tên biến được sử dụng trong mỗi phần.
  • C. Chức năng hoặc nhiệm vụ cụ thể mà mỗi phần cần thực hiện.
  • D. Thứ tự các bước xử lý trong chương trình.

Câu 10: Một chương trình được chia thành các mô đun. Mô đun A gọi mô đun B để thực hiện một chức năng phụ. Điều này thể hiện mối quan hệ nào giữa các mô đun?

  • A. Mối quan hệ sử dụng (dependency).
  • B. Mối quan hệ kế thừa (inheritance).
  • C. Mối quan hệ đồng cấp (peer-to-peer).
  • D. Mối quan hệ độc lập hoàn toàn.

Câu 11: Giả sử có một chương trình tính lương nhân viên. Công việc "tính thuế thu nhập cá nhân" dựa trên mức lương và các quy định thuế. Công việc này nên được đặt trong mô đun nào để đảm bảo tính độc lập và dễ cập nhật khi quy định thuế thay đổi?

  • A. Mô đun nhập liệu thông tin nhân viên.
  • B. Mô đun in phiếu lương.
  • C. Mô đun quản lý hợp đồng lao động.
  • D. Mô đun tính toán thuế/phụ cấp riêng.

Câu 12: Điều nào sau đây là dấu hiệu cho thấy một mô đun có "độ kết dính" (cohesion) cao?

  • A. Mô đun thực hiện nhiều chức năng không liên quan đến nhau.
  • B. Tất cả các phần tử bên trong mô đun (biến, hàm con) đều phục vụ cho một mục đích hoặc chức năng duy nhất, rõ ràng.
  • C. Mô đun phụ thuộc nhiều vào dữ liệu hoặc logic của các mô đun khác.
  • D. Mô đun có kích thước rất lớn.

Câu 13: Điều nào sau đây là dấu hiệu cho thấy mối quan hệ giữa hai mô đun có "độ ghép nối" (coupling) thấp?

  • A. Mô đun này trực tiếp đọc và ghi vào các biến nội bộ của mô đun kia.
  • B. Mô đun này phải biết chi tiết về cách mô đun kia hoạt động bên trong.
  • C. Hai mô đun giao tiếp với nhau thông qua các tham số đầu vào và giá trị trả về được định nghĩa rõ ràng (giao diện).
  • D. Một thay đổi nhỏ trong mô đun này bắt buộc phải thay đổi nhiều ở mô đun kia.

Câu 14: Tại sao việc giảm "độ ghép nối" (coupling) giữa các mô đun lại quan trọng trong thiết kế phần mềm?

  • A. Giúp việc thay đổi một mô đun ít ảnh hưởng đến các mô đun khác, từ đó dễ bảo trì và nâng cấp.
  • B. Làm cho chương trình chạy nhanh hơn.
  • C. Tăng cường khả năng tái sử dụng mã nguồn nội bộ của mô đun.
  • D. Giảm số lượng mô đun cần thiết.

Câu 15: Một chương trình xử lý đơn hàng trực tuyến có các chức năng: Xử lý thanh toán, Cập nhật kho hàng, Gửi email xác nhận đơn hàng. Nếu áp dụng thiết kế mô đun, mỗi chức năng này có thể được xem là một mô đun riêng biệt. Nếu cần thay đổi nhà cung cấp dịch vụ thanh toán, mô đun nào chắc chắn sẽ cần được sửa đổi?

  • A. Mô đun xử lý thanh toán.
  • B. Mô đun cập nhật kho hàng.
  • C. Mô đun gửi email xác nhận đơn hàng.
  • D. Tất cả các mô đun đều cần sửa đổi.

Câu 16: Phân tích: Trong ví dụ về chương trình báo cáo doanh số bán hàng trong sách giáo khoa (NhapDL, Sapxep, GhiDL), nếu bạn muốn thêm chức năng "tìm mặt hàng bán chạy nhất trong một khoảng thời gian cụ thể", công việc này thuộc nhóm nào trong bối cảnh thiết kế mô đun?

  • A. Công việc mới hoàn toàn (cần thêm mô đun hoặc chức năng mới).
  • B. Công việc nâng cấp một mô đun cũ (chỉ sửa đổi mô đun đã có).
  • C. Công việc không liên quan đến thuật toán và lập trình (chỉ thay đổi dữ liệu).
  • D. Đây là một công việc không thể thực hiện với thiết kế mô đun.

Câu 17: Trong ví dụ báo cáo doanh số, mô đun "NhapDL" có trách nhiệm đọc dữ liệu từ tệp. Nếu định dạng tệp đầu vào thay đổi (ví dụ: từ .txt sang .csv), công việc này sẽ ảnh hưởng đến mô đun nào?

  • A. Chủ yếu mô đun NhapDL.
  • B. Chủ yếu mô đun Sapxep.
  • C. Chủ yếu mô đun GhiDL.
  • D. Ảnh hưởng đều đến tất cả các mô đun.

Câu 18: Điều nào sau đây mô tả đúng nhất mục đích của việc định nghĩa "giao diện" (interface) giữa các mô đun?

  • A. Để các mô đun có thể truy cập trực tiếp vào dữ liệu nội bộ của nhau.
  • B. Để xác định rõ cách các mô đun tương tác với nhau (đầu vào, đầu ra, chức năng cung cấp) mà không cần biết chi tiết cài đặt bên trong.
  • C. Để làm cho mã nguồn của mô đun trở nên phức tạp hơn.
  • D. Để ngăn cản hoàn toàn mọi tương tác giữa các mô đun.

Câu 19: Khi làm việc nhóm trên một dự án lớn, thiết kế theo mô đun hỗ trợ như thế nào?

  • A. Buộc tất cả thành viên phải làm việc trên cùng một tệp mã nguồn.
  • B. Làm chậm tiến độ làm việc do phải đồng bộ liên tục.
  • C. Cho phép mỗi thành viên hoặc nhóm nhỏ tập trung phát triển các mô đun riêng biệt một cách độc lập.
  • D. Loại bỏ nhu cầu giao tiếp giữa các thành viên trong nhóm.

Câu 20: Đâu là một ví dụ về "công việc nâng cấp một mô đun cũ" trong chương trình báo cáo doanh số?

  • A. Thêm chức năng tính doanh thu trung bình.
  • B. Thay đổi số lượng mặt hàng "top" được in ra báo cáo từ 3 thành 5.
  • C. Thay đổi nguồn dữ liệu từ tệp sang cơ sở dữ liệu.
  • D. Viết một chương trình hoàn toàn mới để quản lý kho hàng.

Câu 21: Đâu là một ví dụ về "công việc không liên quan đến thuật toán và lập trình" trong chương trình báo cáo doanh số?

  • A. Sửa lỗi trong thuật toán sắp xếp.
  • B. Thêm một loại báo cáo mới với định dạng khác.
  • C. Bổ sung thêm dữ liệu về một mặt hàng mới vào tệp dữ liệu đầu vào.
  • D. Cải thiện hiệu suất của mô đun xử lý.

Câu 22: Trong thiết kế mô đun, "tính trừu tượng" (abstraction) đề cập đến khía cạnh nào?

  • A. Việc làm cho mã nguồn khó hiểu hơn.
  • B. Việc sử dụng các biến có tên ngắn gọn.
  • C. Việc che giấu hoàn toàn sự tồn tại của các mô đun khác.
  • D. Việc tập trung vào "cái gì" mô đun làm (chức năng) thay vì "làm như thế nào" (chi tiết cài đặt nội bộ).

Câu 23: Giả sử bạn có một mô đun tên là `MathUtils` chứa các hàm `add`, `subtract`, `multiply`, `divide`, `sqrt`. Mô đun này có "độ kết dính" (cohesion) như thế nào?

  • A. Cao, vì tất cả các hàm đều liên quan đến các phép toán toán học.
  • B. Thấp, vì các phép toán này khác nhau.
  • C. Trung bình, tùy thuộc vào cách chúng được sử dụng.
  • D. Không thể xác định chỉ dựa vào tên hàm.

Câu 24: Một chương trình quản lý sinh viên có mô đun A để nhập điểm và mô đun B để tính điểm trung bình. Mô đun B cần lấy dữ liệu điểm từ mô đun A. Mối quan hệ "ghép nối" (coupling) sẽ thấp nhất nếu mô đun A cung cấp dữ liệu cho mô đun B theo cách nào?

  • A. Mô đun B truy cập trực tiếp vào mảng điểm nội bộ của mô đun A.
  • B. Mô đun A và B chia sẻ một biến toàn cục chứa tất cả điểm.
  • C. Mô đun A trả về danh sách điểm thông qua một hàm công khai (public function) để mô đun B sử dụng.
  • D. Mô đun B tự viết lại chức năng nhập điểm.

Câu 25: Điều nào sau đây là một thách thức tiềm ẩn khi thiết kế chương trình theo mô đun, đặc biệt nếu không được thực hiện cẩn thận?

  • A. Chương trình không thể chạy được.
  • B. Có thể phát sinh chi phí quản lý và giao tiếp giữa các mô đun nếu phân rã quá nhỏ hoặc không rõ ràng.
  • C. Làm cho chương trình dễ bị tấn công bởi virus.
  • D. Loại bỏ khả năng sử dụng các cấu trúc dữ liệu phức tạp.

Câu 26: Trong phương pháp thiết kế từ trên xuống (top-down), việc chia nhỏ bài toán lớn thành các bài toán con nhỏ hơn tương ứng với khái niệm nào trong thiết kế mô đun?

  • A. Phân rã chương trình thành các mô đun.
  • B. Kết nối các mô đun lại với nhau.
  • C. Kiểm thử từng dòng lệnh.
  • D. Viết tài liệu cho chương trình.

Câu 27: Giả sử bạn có một mô đun xử lý hình ảnh. Chức năng "áp dụng bộ lọc đen trắng" và chức năng "áp dụng bộ lọc màu sepia" có thể nằm trong cùng một mô đun xử lý bộ lọc. Nếu sau này bạn muốn thêm bộ lọc "làm mờ ảnh", công việc này thuộc nhóm nào?

  • A. Công việc mới hoàn toàn (cần mô đun mới).
  • B. Công việc nâng cấp một mô đun cũ (thêm chức năng vào mô đun xử lý bộ lọc).
  • C. Công việc không liên quan đến thuật toán và lập trình.
  • D. Không thể thực hiện được.

Câu 28: Điều nào sau đây là một nhược điểm của việc không sử dụng thiết kế mô đun cho một chương trình phức tạp?

  • A. Chương trình sẽ chạy nhanh hơn rất nhiều.
  • B. Việc tìm và sửa lỗi sẽ dễ dàng hơn.
  • C. Mã nguồn sẽ ngắn gọn hơn.
  • D. Việc thay đổi một phần nhỏ của chương trình có thể gây ra lỗi ở nhiều phần khác không liên quan trực tiếp.

Câu 29: Trong bối cảnh lập trình, một "thư viện" (library) có thể được coi là một tập hợp các gì?

  • A. Các mô đun hoặc hàm/lớp được đóng gói và cung cấp để tái sử dụng trong các chương trình khác.
  • B. Các tệp dữ liệu thô chưa được xử lý.
  • C. Tài liệu hướng dẫn sử dụng phần mềm.
  • D. Các công cụ để gỡ lỗi chương trình.

Câu 30: Đánh giá: Một lập trình viên mới quyết định viết toàn bộ chương trình quản lý bán hàng gồm nhập liệu, tính toán, báo cáo, quản lý kho, quản lý khách hàng vào chỉ một hàm duy nhất để "tiết kiệm thời gian". Lựa chọn này có phù hợp với nguyên tắc thiết kế chương trình theo mô đun không? Tại sao?

  • A. Phù hợp, vì giúp tiết kiệm thời gian ban đầu và làm chương trình đơn giản hơn.
  • B. Không phù hợp, vì vi phạm nguyên tắc chia nhỏ chức năng, gây khó khăn lớn cho bảo trì, nâng cấp và làm việc nhóm sau này.
  • C. Phù hợp, chỉ cần hàm đó đủ ngắn.
  • D. Không phù hợp, vì không thể sử dụng thư viện bên ngoài.

1 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 02

Câu 1: Phương pháp thiết kế chương trình theo mô đun là gì?

2 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 02

Câu 2: Lợi ích *quan trọng nhất* của việc thiết kế chương trình theo mô đun trong các dự án phần mềm lớn là gì?

3 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 02

Câu 3: Giả sử bạn đang phát triển một ứng dụng quản lý thư viện. Nếu bạn áp dụng thiết kế theo mô đun, chức năng 'tìm kiếm sách theo tên tác giả' có thể được xem là một phần của mô đun nào?

4 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 02

Câu 4: Khi chương trình được thiết kế theo mô đun, việc bảo trì và nâng cấp trở nên dễ dàng hơn vì lý do nào sau đây?

5 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 02

Câu 5: Trong ngữ cảnh thiết kế mô đun, 'tính tái sử dụng' (reusability) có nghĩa là gì?

6 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 02

Câu 6: Bạn đang phát triển một chương trình xử lý dữ liệu bán hàng. Ban đầu, chương trình đọc dữ liệu từ tệp Excel. Sau đó, có yêu cầu thay đổi để đọc dữ liệu trực tiếp từ cơ sở dữ liệu. Nếu chương trình được thiết kế theo mô đun tốt, phần nào của chương trình sẽ cần thay đổi *nhiều nhất*?

7 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 02

Câu 7: Điều nào sau đây *không phải* là một nguyên tắc tốt khi thiết kế các mô đun?

8 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 02

Câu 8: Trong một chương trình xử lý văn bản, nếu có một mô đun riêng để 'kiểm tra chính tả' và một mô đun khác để 'định dạng đoạn văn', điều này thể hiện lợi ích nào của thiết kế mô đun?

9 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 02

Câu 9: Khi phân rã một bài toán lớn thành các bài toán con nhỏ hơn để thiết kế mô đun, chúng ta thường dựa vào tiêu chí nào?

10 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 02

Câu 10: Một chương trình được chia thành các mô đun. Mô đun A gọi mô đun B để thực hiện một chức năng phụ. Điều này thể hiện mối quan hệ nào giữa các mô đun?

11 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 02

Câu 11: Giả sử có một chương trình tính lương nhân viên. Công việc 'tính thuế thu nhập cá nhân' dựa trên mức lương và các quy định thuế. Công việc này nên được đặt trong mô đun nào để đảm bảo tính độc lập và dễ cập nhật khi quy định thuế thay đổi?

12 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 02

Câu 12: Điều nào sau đây là dấu hiệu cho thấy một mô đun có 'độ kết dính' (cohesion) cao?

13 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 02

Câu 13: Điều nào sau đây là dấu hiệu cho thấy mối quan hệ giữa hai mô đun có 'độ ghép nối' (coupling) thấp?

14 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 02

Câu 14: Tại sao việc giảm 'độ ghép nối' (coupling) giữa các mô đun lại quan trọng trong thiết kế phần mềm?

15 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 02

Câu 15: Một chương trình xử lý đơn hàng trực tuyến có các chức năng: Xử lý thanh toán, Cập nhật kho hàng, Gửi email xác nhận đơn hàng. Nếu áp dụng thiết kế mô đun, mỗi chức năng này có thể được xem là một mô đun riêng biệt. Nếu cần thay đổi nhà cung cấp dịch vụ thanh toán, mô đun nào *chắc chắn* sẽ cần được sửa đổi?

16 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 02

Câu 16: Phân tích: Trong ví dụ về chương trình báo cáo doanh số bán hàng trong sách giáo khoa (NhapDL, Sapxep, GhiDL), nếu bạn muốn thêm chức năng 'tìm mặt hàng bán chạy nhất trong một khoảng thời gian cụ thể', công việc này thuộc nhóm nào trong bối cảnh thiết kế mô đun?

17 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 02

Câu 17: Trong ví dụ báo cáo doanh số, mô đun 'NhapDL' có trách nhiệm đọc dữ liệu từ tệp. Nếu định dạng tệp đầu vào thay đổi (ví dụ: từ .txt sang .csv), công việc này sẽ ảnh hưởng đến mô đun nào?

18 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 02

Câu 18: Điều nào sau đây mô tả đúng nhất mục đích của việc định nghĩa 'giao diện' (interface) giữa các mô đun?

19 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 02

Câu 19: Khi làm việc nhóm trên một dự án lớn, thiết kế theo mô đun hỗ trợ như thế nào?

20 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 02

Câu 20: Đâu là một ví dụ về 'công việc nâng cấp một mô đun cũ' trong chương trình báo cáo doanh số?

21 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 02

Câu 21: Đâu là một ví dụ về 'công việc không liên quan đến thuật toán và lập trình' trong chương trình báo cáo doanh số?

22 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 02

Câu 22: Trong thiết kế mô đun, 'tính trừu tượng' (abstraction) đề cập đến khía cạnh nào?

23 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 02

Câu 23: Giả sử bạn có một mô đun tên là `MathUtils` chứa các hàm `add`, `subtract`, `multiply`, `divide`, `sqrt`. Mô đun này có 'độ kết dính' (cohesion) như thế nào?

24 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 02

Câu 24: Một chương trình quản lý sinh viên có mô đun A để nhập điểm và mô đun B để tính điểm trung bình. Mô đun B cần lấy dữ liệu điểm từ mô đun A. Mối quan hệ 'ghép nối' (coupling) sẽ thấp nhất nếu mô đun A cung cấp dữ liệu cho mô đun B theo cách nào?

25 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 02

Câu 25: Điều nào sau đây là một thách thức tiềm ẩn khi thiết kế chương trình theo mô đun, đặc biệt nếu không được thực hiện cẩn thận?

26 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 02

Câu 26: Trong phương pháp thiết kế từ trên xuống (top-down), việc chia nhỏ bài toán lớn thành các bài toán con nhỏ hơn tương ứng với khái niệm nào trong thiết kế mô đun?

27 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 02

Câu 27: Giả sử bạn có một mô đun xử lý hình ảnh. Chức năng 'áp dụng bộ lọc đen trắng' và chức năng 'áp dụng bộ lọc màu sepia' có thể nằm trong cùng một mô đun xử lý bộ lọc. Nếu sau này bạn muốn thêm bộ lọc 'làm mờ ảnh', công việc này thuộc nhóm nào?

28 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 02

Câu 28: Điều nào sau đây là một nhược điểm của việc không sử dụng thiết kế mô đun cho một chương trình phức tạp?

29 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 02

Câu 29: Trong bối cảnh lập trình, một 'thư viện' (library) có thể được coi là một tập hợp các gì?

30 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 02

Câu 30: Đánh giá: Một lập trình viên mới quyết định viết toàn bộ chương trình quản lý bán hàng gồm nhập liệu, tính toán, báo cáo, quản lý kho, quản lý khách hàng vào chỉ một hàm duy nhất để 'tiết kiệm thời gian'. Lựa chọn này có phù hợp với nguyên tắc thiết kế chương trình theo mô đun không? Tại sao?

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


Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun - Đề 03

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun - Đề 03 được xây dựng với nhiều câu hỏi chất lượng, sát với nội dung chương trình học, giúp bạn dễ dàng ôn tập và kiểm tra kiến thức hiệu quả. Hãy cùng bắt đầu làm bài tập trắc nghiệm ngay để nâng cao hiểu biết và chuẩn bị tốt cho kỳ thi sắp tới!

Câu 1: Trong phương pháp thiết kế chương trình theo mô đun, việc chia chương trình lớn thành các đơn vị nhỏ hơn, độc lập với nhau, được gọi là gì?

  • A. Thiết kế theo mô đun
  • B. Làm mịn dần
  • C. Lập trình hướng đối tượng
  • D. Thiết kế dữ liệu

Câu 2: Đâu là lợi ích chính của việc thiết kế chương trình theo mô đun, đặc biệt đối với các dự án phần mềm lớn?

  • A. Làm cho chương trình chạy nhanh hơn đáng kể.
  • B. Giảm thiểu hoàn toàn lỗi trong quá trình lập trình.
  • C. Quản lý độ phức tạp, tăng khả năng tái sử dụng và hỗ trợ làm việc nhóm hiệu quả.
  • D. Chỉ áp dụng cho các ngôn ngữ lập trình cấp thấp.

Câu 3: Khi áp dụng phương pháp thiết kế từ trên xuống (top-down design) trong thiết kế mô đun, bước đầu tiên thường là gì?

  • A. Viết mã chi tiết cho các hàm nhỏ nhất.
  • B. Phân tích bài toán tổng thể thành các bài toán con lớn, độc lập.
  • C. Kiểm thử các mô đun đã hoàn thành.
  • D. Thiết kế giao diện người dùng.

Câu 4: Một mô đun được thiết kế tốt thường có đặc điểm gì về mặt chức năng?

  • A. Thực hiện càng nhiều chức năng khác nhau càng tốt.
  • B. Phụ thuộc chặt chẽ vào hoạt động bên trong của nhiều mô đun khác.
  • C. Có kích thước mã nguồn rất lớn.
  • D. Thực hiện một chức năng cụ thể, duy nhất và rõ ràng.

Câu 5: Trong một chương trình quản lý học sinh, việc đọc thông tin học sinh từ một tệp dữ liệu có cấu trúc cụ thể nên được thực hiện bởi mô đun loại nào?

  • A. Mô đun nhập dữ liệu.
  • B. Mô đun xử lý dữ liệu.
  • C. Mô đun xuất dữ liệu (báo cáo).
  • D. Mô đun giao diện người dùng.

Câu 6: Giả sử bạn cần thêm một tính năng mới vào chương trình đã được thiết kế theo mô đun: xuất báo cáo dưới định dạng PDF thay vì chỉ ra màn hình. Lợi ích của thiết kế mô đun thể hiện rõ nhất ở điểm nào trong trường hợp này?

  • A. Bạn phải viết lại toàn bộ chương trình từ đầu.
  • B. Việc thêm tính năng mới không khả thi với thiết kế mô đun.
  • C. Bạn có thể chỉ cần thêm hoặc chỉnh sửa mô đun xuất dữ liệu mà ít ảnh hưởng đến các mô đun khác.
  • D. Mô đun nhập dữ liệu cần được thay đổi đáng kể.

Câu 7: Khả năng sử dụng lại cùng một mô đun (ví dụ: một hàm tính toán phức tạp) ở nhiều vị trí khác nhau trong cùng một chương trình hoặc thậm chí trong các chương trình khác nhau là một lợi ích quan trọng của thiết kế mô đun. Lợi ích này được gọi là gì?

  • A. Tính bảo mật.
  • B. Tính tái sử dụng.
  • C. Tính hiệu quả.
  • D. Tính độc lập.

Câu 8: Khi làm việc nhóm trên một dự án phần mềm lớn, thiết kế theo mô đun giúp ích như thế nào?

  • A. Buộc tất cả thành viên phải làm việc trên cùng một đoạn mã.
  • B. Hạn chế khả năng giao tiếp giữa các thành viên.
  • C. Mỗi thành viên chỉ cần hiểu toàn bộ mã nguồn của dự án.
  • D. Cho phép các thành viên khác nhau làm việc độc lập trên các mô đun khác nhau sau khi thiết kế tổng thể được thống nhất.

Câu 9: Quá trình "làm mịn dần" (stepwise refinement) trong thiết kế mô đun là gì?

  • A. Chia một mô đun lớn, phức tạp thành các mô đun con nhỏ hơn, chi tiết hơn.
  • B. Viết lại toàn bộ mã nguồn để tối ưu tốc độ.
  • C. Tìm và sửa lỗi trong chương trình.
  • D. Kết hợp nhiều mô đun nhỏ thành một mô đun lớn duy nhất.

Câu 10: Trong một hệ thống xử lý đơn hàng, mô đun nào có khả năng thực hiện các công việc như tính tổng giá trị đơn hàng, áp dụng mã giảm giá, tính thuế?

  • A. Mô đun nhập dữ liệu.
  • B. Mô đun xử lý dữ liệu.
  • C. Mô đun xuất dữ liệu.
  • D. Mô đun lưu trữ dữ liệu.

Câu 11: Việc kiểm thử (testing) một chương trình được thiết kế theo mô đun trở nên hiệu quả hơn vì lý do nào sau đây?

  • A. Không cần kiểm thử từng mô đun riêng lẻ.
  • B. Chỉ cần kiểm thử mô đun chính của chương trình.
  • C. Có thể kiểm thử từng mô đun một cách độc lập (unit testing) trước khi kiểm thử toàn bộ hệ thống.
  • D. Mô đun tự động sửa lỗi mà không cần kiểm thử.

Câu 12: "Giao diện" (interface) của một mô đun trong thiết kế mô đun là gì?

  • A. Mã nguồn bên trong của mô đun.
  • B. Tên tệp chứa mô đun đó.
  • C. Giao diện người dùng (UI) của chương trình.
  • D. Tập hợp các hàm, thủ tục và dữ liệu mà mô đun đó cung cấp cho các mô đun khác sử dụng, cùng với cách thức sử dụng chúng (tham số, kiểu trả về).

Câu 13: Khi một lỗi được phát hiện trong một chương trình lớn được thiết kế theo mô đun, việc xác định và sửa lỗi thường dễ dàng hơn so với chương trình không theo mô đun (monolithic) vì:

  • A. Lỗi thường được khoanh vùng trong một hoặc một vài mô đun cụ thể.
  • B. Mô đun tự động báo cáo chính xác vị trí lỗi.
  • C. Toàn bộ mã nguồn cần được đọc lại để tìm lỗi.
  • D. Mô đun không bao giờ chứa lỗi.

Câu 14: Trong quy trình thiết kế từ trên xuống, sau khi đã phân tích bài toán tổng thể thành các bài toán con lớn (các mô đun cấp cao), bước tiếp theo là gì?

  • A. Kết hợp các bài toán con lại thành một.
  • B. Bỏ qua các bài toán con phức tạp.
  • C. Tiếp tục phân tích từng bài toán con thành các bài toán con nhỏ hơn nữa (làm mịn dần).
  • D. Chuyển thẳng sang viết mã cho toàn bộ chương trình.

Câu 15: Một chương trình tính toán và in ra các số nguyên tố trong một khoảng cho trước. Các chức năng như "kiểm tra một số có phải là số nguyên tố không", "tìm các số nguyên tố trong khoảng", và "in kết quả ra màn hình" có thể được thiết kế thành các mô đun độc lập. Điều này thể hiện lợi ích nào của thiết kế mô đun?

  • A. Tăng khả năng quản lý và tái sử dụng các phần của chương trình.
  • B. Chỉ giúp chương trình chạy nhanh hơn.
  • C. Làm cho mã nguồn dài và khó hiểu hơn.
  • D. Bắt buộc phải sử dụng ngôn ngữ lập trình phức tạp.

Câu 16: Trong thiết kế mô đun, khái niệm "tính kết dính" (cohesion) đề cập đến điều gì?

  • A. Mức độ phụ thuộc giữa các mô đun khác nhau.
  • B. Mức độ các yếu tố bên trong một mô đun liên quan và phối hợp với nhau để thực hiện một chức năng duy nhất.
  • C. Khả năng mô đun chạy độc lập mà không cần dữ liệu đầu vào.
  • D. Kích thước vật lý của tệp chứa mã nguồn mô đun.

Câu 17: Khái niệm "tính liên kết" (coupling) trong thiết kế mô đun đề cập đến điều gì?

  • A. Mức độ các yếu tố bên trong một mô đun liên quan với nhau.
  • B. Tốc độ thực thi của mô đun.
  • C. Mức độ phụ thuộc và tương tác giữa các mô đun khác nhau trong hệ thống.
  • D. Số lượng chức năng mà một mô đun thực hiện.

Câu 18: Hệ thống được thiết kế theo mô đun được xem là tốt khi có tính kết dính (cohesion) _______ và tính liên kết (coupling) ______.

  • A. Cao / Thấp
  • B. Thấp / Cao
  • C. Cao / Cao
  • D. Thấp / Thấp

Câu 19: Bạn đang thiết kế một mô đun xử lý thanh toán trực tuyến. Mô đun này cần giao tiếp với cổng thanh toán, kiểm tra số dư, và ghi nhận giao dịch. Để mô đun này có tính kết dính (cohesion) cao, các chức năng này nên được tổ chức như thế nào?

  • A. Mỗi chức năng (giao tiếp cổng, kiểm tra số dư, ghi nhận) nên là một mô đun hoàn toàn riêng biệt, không liên quan đến mô đun thanh toán.
  • B. Tất cả các chức năng này nên được gom lại trong một mô đun duy nhất vì chúng đều liên quan trực tiếp đến quy trình thanh toán.
  • C. Chỉ cần đưa chức năng giao tiếp với cổng thanh toán vào mô đun này, các chức năng khác để ở nơi khác.
  • D. Tính kết dính không quan trọng đối với mô đun xử lý thanh toán.

Câu 20: Hai mô đun A và B được coi là có "liên kết chặt chẽ" (high coupling) nếu:

  • A. Mô đun A gọi một hàm trong mô đun B thông qua giao diện rõ ràng.
  • B. Mô đun A và B không bao giờ tương tác với nhau.
  • C. Thay đổi bên trong mô đun A ít ảnh hưởng đến mô đun B.
  • D. Mô đun A truy cập và thay đổi trực tiếp dữ liệu (biến toàn cục) của mô đun B, hoặc cần biết quá nhiều chi tiết cài đặt bên trong của B.

Câu 21: Khi thiết kế một chương trình theo mô đun, việc định nghĩa rõ ràng các tham số đầu vào và giá trị trả về của mỗi mô đun (giao diện) giúp ích gì cho việc phát triển và bảo trì?

  • A. Cho phép các lập trình viên sử dụng mô đun mà không cần quan tâm đến chi tiết cài đặt bên trong của nó.
  • B. Làm cho mô đun phụ thuộc nhiều hơn vào các mô đun khác.
  • C. Giảm khả năng tái sử dụng của mô đun.
  • D. Chỉ áp dụng cho các mô đun tính toán đơn giản.

Câu 22: Một chương trình xử lý dữ liệu từ cảm biến. Bạn thiết kế các mô đun: `ReadSensorData`, `ProcessData`, `StoreData`. Giả sử bạn cần thay thế loại cảm biến, điều này yêu cầu thay đổi cách đọc dữ liệu. Nhờ thiết kế mô đun, bạn có thể tập trung thay đổi ở mô đun nào mà ít ảnh hưởng đến các mô đun khác?

  • A. `ReadSensorData`
  • B. `ProcessData`
  • C. `StoreData`
  • D. Cả ba mô đun đều cần thay đổi đáng kể.

Câu 23: Lợi ích nào của thiết kế mô đun giúp giảm bớt độ phức tạp tổng thể mà một lập trình viên cần quản lý tại một thời điểm?

  • A. Làm cho chương trình chạy nhanh hơn.
  • B. Cho phép tập trung vào chi tiết của từng mô đun nhỏ mà không cần hiểu toàn bộ chương trình cùng lúc.
  • C. Tăng số lượng dòng mã cần viết.
  • D. Loại bỏ hoàn toàn nhu cầu gỡ lỗi.

Câu 24: Khi một mô đun được thiết kế để thực hiện một nhiệm vụ rất cụ thể và chỉ cần dữ liệu đầu vào thông qua tham số và trả về kết quả qua giá trị trả về, nó có tính liên kết (coupling) ______ và tính kết dính (cohesion) ______.

  • A. Cao / Thấp
  • B. Cao / Cao
  • C. Thấp / Cao
  • D. Thấp / Thấp

Câu 25: Trong một chương trình xử lý ảnh, mô đun nào có khả năng thực hiện các thao tác như cắt ảnh, xoay ảnh, điều chỉnh độ sáng?

  • A. Mô đun đọc ảnh.
  • B. Mô đun xử lý ảnh.
  • C. Mô đun lưu ảnh.
  • D. Mô đun hiển thị ảnh.

Câu 26: Đâu là một ví dụ về "liên kết chặt chẽ" (high coupling) giữa hai mô đun?

  • A. Mô đun A gọi hàm `calculate()` của mô đun B và nhận giá trị trả về.
  • B. Mô đun A và B không có bất kỳ tương tác nào.
  • C. Mô đun A truyền dữ liệu cho mô đun B thông qua tham số hàm.
  • D. Mô đun A trực tiếp đọc và ghi vào một biến toàn cục (global variable) mà mô đun B cũng sử dụng và thay đổi.

Câu 27: Bạn được giao nhiệm vụ phát triển một phần mềm quản lý cửa hàng. Áp dụng thiết kế từ trên xuống, bạn xác định các mô đun cấp cao như: Quản lý Sản phẩm, Quản lý Kho hàng, Quản lý Bán hàng, Quản lý Khách hàng, Báo cáo. Bước tiếp theo của "làm mịn dần" đối với mô đun "Quản lý Sản phẩm" có thể là gì?

  • A. Phân tích "Quản lý Sản phẩm" thành các mô đun con như Thêm Sản phẩm, Sửa Sản phẩm, Xóa Sản phẩm, Tìm kiếm Sản phẩm, Hiển thị Danh sách Sản phẩm.
  • B. Bắt đầu viết mã cho chức năng "Báo cáo".
  • C. Thiết kế giao diện người dùng cho toàn bộ phần mềm.
  • D. Hoàn thành tất cả các mô đun cấp cao khác trước.

Câu 28: Nhược điểm tiềm ẩn của thiết kế mô đun (nếu không được thực hiện cẩn thận) có thể là gì?

  • A. Chắc chắn làm cho chương trình chạy chậm hơn.
  • B. Hoàn toàn không thể tái sử dụng mã nguồn.
  • C. Việc chia nhỏ không hợp lý có thể tạo ra quá nhiều mô đun nhỏ, khó quản lý hoặc tăng tính liên kết (coupling) không mong muốn.
  • D. Chỉ có thể áp dụng cho các chương trình rất đơn giản.

Câu 29: Trong một chương trình xử lý dữ liệu, một mô đun có tên `DataProcessor` nhận vào một danh sách số, tính toán trung bình, trung vị, và độ lệch chuẩn, sau đó trả về các giá trị này. Mô đun này thể hiện tính kết dính (cohesion) loại nào?

  • A. Cohesion cao (High Cohesion) vì các chức năng đều liên quan đến xử lý thống kê cùng một tập dữ liệu.
  • B. Cohesion thấp (Low Cohesion) vì nó thực hiện nhiều phép tính khác nhau.
  • C. Đây là ví dụ về coupling, không phải cohesion.
  • D. Không thể xác định tính cohesion chỉ dựa vào tên và mô tả chức năng.

Câu 30: Việc sử dụng các biến toàn cục (global variables) để chia sẻ dữ liệu giữa các mô đun khác nhau trong một chương trình được thiết kế theo mô đun thường dẫn đến điều gì?

  • A. Giảm tính liên kết (coupling) giữa các mô đun.
  • B. Tăng tính liên kết (coupling) và làm cho các mô đun khó độc lập, khó kiểm thử và khó bảo trì hơn.
  • C. Làm cho chương trình chạy nhanh hơn.
  • D. Không ảnh hưởng gì đến tính liên kết hay kết dính của mô đun.

1 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 03

Câu 1: Trong phương pháp thiết kế chương trình theo mô đun, việc chia chương trình lớn thành các đơn vị nhỏ hơn, độc lập với nhau, được gọi là gì?

2 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 03

Câu 2: Đâu là *lợi ích chính* của việc thiết kế chương trình theo mô đun, đặc biệt đối với các dự án phần mềm lớn?

3 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 03

Câu 3: Khi áp dụng phương pháp thiết kế từ trên xuống (top-down design) trong thiết kế mô đun, bước đầu tiên thường là gì?

4 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 03

Câu 4: Một mô đun được thiết kế tốt thường có đặc điểm gì về mặt chức năng?

5 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 03

Câu 5: Trong một chương trình quản lý học sinh, việc đọc thông tin học sinh từ một tệp dữ liệu có cấu trúc cụ thể nên được thực hiện bởi mô đun loại nào?

6 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 03

Câu 6: Giả sử bạn cần thêm một tính năng mới vào chương trình đã được thiết kế theo mô đun: xuất báo cáo dưới định dạng PDF thay vì chỉ ra màn hình. Lợi ích của thiết kế mô đun thể hiện rõ nhất ở điểm nào trong trường hợp này?

7 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 03

Câu 7: Khả năng sử dụng lại cùng một mô đun (ví dụ: một hàm tính toán phức tạp) ở nhiều vị trí khác nhau trong cùng một chương trình hoặc thậm chí trong các chương trình khác nhau là một lợi ích quan trọng của thiết kế mô đun. Lợi ích này được gọi là gì?

8 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 03

Câu 8: Khi làm việc nhóm trên một dự án phần mềm lớn, thiết kế theo mô đun giúp ích như thế nào?

9 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 03

Câu 9: Quá trình 'làm mịn dần' (stepwise refinement) trong thiết kế mô đun là gì?

10 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 03

Câu 10: Trong một hệ thống xử lý đơn hàng, mô đun nào có khả năng thực hiện các công việc như tính tổng giá trị đơn hàng, áp dụng mã giảm giá, tính thuế?

11 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 03

Câu 11: Việc kiểm thử (testing) một chương trình được thiết kế theo mô đun trở nên hiệu quả hơn vì lý do nào sau đây?

12 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 03

Câu 12: 'Giao diện' (interface) của một mô đun trong thiết kế mô đun là gì?

13 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 03

Câu 13: Khi một lỗi được phát hiện trong một chương trình lớn được thiết kế theo mô đun, việc xác định và sửa lỗi thường dễ dàng hơn so với chương trình không theo mô đun (monolithic) vì:

14 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 03

Câu 14: Trong quy trình thiết kế từ trên xuống, sau khi đã phân tích bài toán tổng thể thành các bài toán con lớn (các mô đun cấp cao), bước tiếp theo là gì?

15 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 03

Câu 15: Một chương trình tính toán và in ra các số nguyên tố trong một khoảng cho trước. Các chức năng như 'kiểm tra một số có phải là số nguyên tố không', 'tìm các số nguyên tố trong khoảng', và 'in kết quả ra màn hình' có thể được thiết kế thành các mô đun độc lập. Điều này thể hiện lợi ích nào của thiết kế mô đun?

16 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 03

Câu 16: Trong thiết kế mô đun, khái niệm 'tính kết dính' (cohesion) đề cập đến điều gì?

17 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 03

Câu 17: Khái niệm 'tính liên kết' (coupling) trong thiết kế mô đun đề cập đến điều gì?

18 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 03

Câu 18: Hệ thống được thiết kế theo mô đun được xem là tốt khi có tính kết dính (cohesion) _______ và tính liên kết (coupling) ______.

19 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 03

Câu 19: Bạn đang thiết kế một mô đun xử lý thanh toán trực tuyến. Mô đun này cần giao tiếp với cổng thanh toán, kiểm tra số dư, và ghi nhận giao dịch. Để mô đun này có tính kết dính (cohesion) cao, các chức năng này nên được tổ chức như thế nào?

20 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 03

Câu 20: Hai mô đun A và B được coi là có 'liên kết chặt chẽ' (high coupling) nếu:

21 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 03

Câu 21: Khi thiết kế một chương trình theo mô đun, việc định nghĩa rõ ràng các tham số đầu vào và giá trị trả về của mỗi mô đun (giao diện) giúp ích gì cho việc phát triển và bảo trì?

22 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 03

Câu 22: Một chương trình xử lý dữ liệu từ cảm biến. Bạn thiết kế các mô đun: `ReadSensorData`, `ProcessData`, `StoreData`. Giả sử bạn cần thay thế loại cảm biến, điều này yêu cầu thay đổi cách đọc dữ liệu. Nhờ thiết kế mô đun, bạn có thể tập trung thay đổi ở mô đun nào mà ít ảnh hưởng đến các mô đun khác?

23 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 03

Câu 23: Lợi ích nào của thiết kế mô đun giúp giảm bớt độ phức tạp tổng thể mà một lập trình viên cần quản lý tại một thời điểm?

24 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 03

Câu 24: Khi một mô đun được thiết kế để thực hiện một nhiệm vụ rất cụ thể và chỉ cần dữ liệu đầu vào thông qua tham số và trả về kết quả qua giá trị trả về, nó có tính liên kết (coupling) ______ và tính kết dính (cohesion) ______.

25 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 03

Câu 25: Trong một chương trình xử lý ảnh, mô đun nào có khả năng thực hiện các thao tác như cắt ảnh, xoay ảnh, điều chỉnh độ sáng?

26 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 03

Câu 26: Đâu là một ví dụ về 'liên kết chặt chẽ' (high coupling) giữa hai mô đun?

27 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 03

Câu 27: Bạn được giao nhiệm vụ phát triển một phần mềm quản lý cửa hàng. Áp dụng thiết kế từ trên xuống, bạn xác định các mô đun cấp cao như: Quản lý Sản phẩm, Quản lý Kho hàng, Quản lý Bán hàng, Quản lý Khách hàng, Báo cáo. Bước tiếp theo của 'làm mịn dần' đối với mô đun 'Quản lý Sản phẩm' có thể là gì?

28 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 03

Câu 28: Nhược điểm tiềm ẩn của thiết kế mô đun (nếu không được thực hiện cẩn thận) có thể là gì?

29 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 03

Câu 29: Trong một chương trình xử lý dữ liệu, một mô đun có tên `DataProcessor` nhận vào một danh sách số, tính toán trung bình, trung vị, và độ lệch chuẩn, sau đó trả về các giá trị này. Mô đun này thể hiện tính kết dính (cohesion) loại nào?

30 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 03

Câu 30: Việc sử dụng các biến toàn cục (global variables) để chia sẻ dữ liệu giữa các mô đun khác nhau trong một chương trình được thiết kế theo mô đun thường dẫn đến điều gì?

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


Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun - Đề 04

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun - Đề 04 được xây dựng với nhiều câu hỏi chất lượng, sát với nội dung chương trình học, giúp bạn dễ dàng ôn tập và kiểm tra kiến thức hiệu quả. Hãy cùng bắt đầu làm bài tập trắc nghiệm ngay để nâng cao hiểu biết và chuẩn bị tốt cho kỳ thi sắp tới!

Câu 1: Trong thiết kế chương trình theo mô đun, việc chia nhỏ chương trình thành các phần độc lập giúp đạt được lợi ích nào sau đây về mặt quản lý và phát triển?

  • A. Giảm dung lượng bộ nhớ cần thiết cho chương trình.
  • B. Đảm bảo chương trình chỉ chạy trên một loại hệ điều hành duy nhất.
  • C. Thuận lợi cho việc phân công và làm việc nhóm.
  • D. Tăng tốc độ thực thi chương trình một cách đáng kể.

Câu 2: Một chương trình quản lý sách trong thư viện được chia thành các mô đun: Nhập sách mới, Tìm kiếm sách, Mượn/Trả sách, Lập báo cáo thống kê. Nếu cần bổ sung chức năng in tem mã vạch cho sách mới nhập, việc này thuộc nhóm công việc nào theo phương pháp mô đun?

  • A. Công việc mới hoàn toàn.
  • B. Công việc nâng cấp một mô đun cũ.
  • C. Công việc không liên quan đến thuật toán và lập trình.
  • D. Công việc chỉ yêu cầu thay đổi giao diện người dùng.

Câu 3: Xét mô hình chương trình xử lý doanh số bán hàng gồm các mô đun: NhậpDL (đọc dữ liệu từ tệp), Sapxep (sắp xếp dữ liệu), GhiDL (ghi kết quả ra báo cáo). Mô đun nào chịu trách nhiệm biến đổi cấu trúc dữ liệu (ví dụ: từ danh sách ban đầu sang danh sách đã được sắp xếp)?

  • A. NhapDL.
  • B. GhiDL.
  • C. Sapxep.
  • D. Tất cả các mô đun đều thực hiện việc biến đổi cấu trúc dữ liệu.

Câu 4: Ưu điểm chính của việc sử dụng mô đun trong lập trình là khả năng tái sử dụng. Điều này có nghĩa là gì?

  • A. Chương trình sau khi chia mô đun sẽ chạy nhanh hơn.
  • B. Một mô đun đã viết có thể được sử dụng lại trong các chương trình khác hoặc các phần khác của chương trình hiện tại.
  • C. Việc tìm lỗi trong chương trình dễ dàng hơn.
  • D. Kích thước tệp mã nguồn của chương trình sẽ nhỏ đi.

Câu 5: Trong một chương trình xử lý văn bản, các chức năng như Đọc tệp, Lưu tệp, In văn bản, Định dạng đoạn văn bản có thể được xem là các mô đun. Việc chia chương trình thành các mô đun như vậy giúp ích gì khi cần sửa một lỗi chỉ liên quan đến chức năng in?

  • A. Buộc phải kiểm tra lại toàn bộ mã nguồn của chương trình.
  • B. Chỉ cần sửa lỗi trong mô đun Đọc tệp.
  • C. Không thể sửa lỗi nếu không thiết kế lại toàn bộ chương trình.
  • D. Chỉ cần tập trung sửa lỗi trong mô đun In văn bản mà ít ảnh hưởng đến các phần khác.

Câu 6: Giả sử bạn đang phát triển một trò chơi đơn giản và quyết định chia nó thành các mô đun: Xử lý đồ họa, Xử lý âm thanh, Xử lý logic game (di chuyển nhân vật, tính điểm), Xử lý giao diện người dùng. Việc này minh họa rõ nhất cho lợi ích nào của thiết kế mô đun?

  • A. Làm cho chương trình dễ hiểu và dễ quản lý hơn.
  • B. Giảm thời gian chạy của trò chơi.
  • C. Tăng khả năng tương thích với nhiều thiết bị khác nhau.
  • D. Bảo mật mã nguồn chương trình tốt hơn.

Câu 7: Trong ngữ cảnh thiết kế mô đun, "tính độc lập" của một mô đun có ý nghĩa quan trọng nhất là gì?

  • A. Mô đun không cần nhận bất kỳ dữ liệu đầu vào nào.
  • B. Mô đun thực hiện một chức năng cụ thể và có thể được phát triển, kiểm thử độc lập.
  • C. Mô đun không bao giờ cần được cập nhật sau khi hoàn thành.
  • D. Mô đun chỉ có thể được sử dụng một lần duy nhất trong chương trình.

Câu 8: Một công ty phần mềm đang phát triển một hệ thống quản lý bán hàng. Họ quyết định chia hệ thống thành các mô đun: Quản lý sản phẩm, Quản lý khách hàng, Xử lý đơn hàng, Thanh toán, Báo cáo. Việc chia này dựa trên nguyên tắc nào của thiết kế mô đun?

  • A. Phân rã theo chức năng.
  • B. Tối ưu hóa tốc độ xử lý.
  • C. Giảm thiểu việc sử dụng bộ nhớ.
  • D. Tăng cường bảo mật dữ liệu.

Câu 9: Khi thiết kế chương trình theo mô đun, việc xác định rõ ràng "đầu vào" và "đầu ra" của mỗi mô đun là cần thiết vì lý do gì?

  • A. Để đảm bảo mô đun không bao giờ bị lỗi.
  • B. Chỉ để làm tài liệu cho người dùng cuối.
  • C. Vì tất cả các mô đun đều sử dụng chung một nguồn dữ liệu.
  • D. Để các mô đun có thể "giao tiếp" và làm việc cùng nhau một cách chính xác.

Câu 10: Phương pháp thiết kế chương trình theo mô đun có liên quan đến phương pháp "làm mịn dần" (stepwise refinement) như thế nào?

  • A. Làm mịn dần là kỹ thuật để phân tích vấn đề, còn thiết kế mô đun là cách tổ chức cấu trúc chương trình dựa trên kết quả phân tích đó.
  • B. Chúng là hai tên gọi khác nhau cho cùng một phương pháp.
  • C. Làm mịn dần chỉ áp dụng cho chương trình nhỏ, còn mô đun áp dụng cho chương trình lớn.
  • D. Thiết kế mô đun là bước đầu tiên, sau đó mới áp dụng làm mịn dần.

Câu 11: Trong một dự án phần mềm lớn, việc sử dụng thiết kế mô đun giúp giảm thiểu rủi ro khi có sự thay đổi yêu cầu. Điều này là do:

  • A. Mã nguồn của chương trình trở nên phức tạp hơn.
  • B. Sự thay đổi thường chỉ cần thực hiện trong một hoặc một vài mô đun liên quan mà không ảnh hưởng rộng.
  • C. Thiết kế mô đun ngăn chặn mọi sự thay đổi sau khi hoàn thành.
  • D. Việc thay đổi yêu cầu luôn đòi hỏi phải làm lại toàn bộ chương trình từ đầu.

Câu 12: Bạn được giao nhiệm vụ phát triển mô đun "Tính thuế" cho một hệ thống kế toán. Mô đun này cần nhận vào thu nhập và trả về số tiền thuế phải đóng. Để đảm bảo mô đun của bạn hoạt động tốt và có thể tái sử dụng, bạn cần tập trung vào điều gì khi viết mã?

  • A. Kết nối trực tiếp với cơ sở dữ liệu của toàn bộ hệ thống để lấy dữ liệu.
  • B. Viết mã để xử lý cả việc nhập liệu thu nhập từ người dùng.
  • C. Chỉ tập trung vào việc triển khai logic tính toán thuế dựa trên đầu vào được cung cấp.
  • D. Đảm bảo mô đun của bạn là mô đun đầu tiên được chạy khi chương trình khởi động.

Câu 13: Xét một chương trình xử lý ảnh. Các mô đun có thể bao gồm: Đọc ảnh, Lưu ảnh, Áp dụng bộ lọc (đen trắng, làm mờ), Thay đổi kích thước. Nếu người dùng yêu cầu thêm chức năng "xoay ảnh 90 độ", bạn sẽ xếp công việc này vào nhóm nào?

  • A. Công việc mới hoàn toàn.
  • B. Công việc nâng cấp mô đun "Lưu ảnh".
  • C. Công việc không liên quan đến thuật toán xử lý ảnh.
  • D. Chỉ cần thay đổi giao diện người dùng.

Câu 14: Khi thiết kế mô đun, nguyên tắc "tính liên kết cao" (high cohesion) có nghĩa là gì?

  • A. Mô đun phụ thuộc vào nhiều mô đun khác.
  • B. Các thành phần bên trong mô đun có mối quan hệ chặt chẽ và cùng thực hiện một chức năng duy nhất.
  • C. Mô đun có thể giao tiếp với mọi mô đun khác trong chương trình.
  • D. Mô đun chứa càng nhiều chức năng càng tốt.

Câu 15: Ngược lại với "tính liên kết cao" là "tính kết nối thấp" (low coupling). Tính kết nối thấp giữa các mô đun mang lại lợi ích gì?

  • A. Làm cho mã nguồn khó hiểu hơn.
  • B. Mỗi mô đun cần biết chi tiết về hoạt động bên trong của các mô đun khác.
  • C. Giảm sự phụ thuộc giữa các mô đun, giúp dễ dàng thay đổi hoặc sửa lỗi một mô đun mà ít ảnh hưởng đến mô đun khác.
  • D. Tăng dung lượng bộ nhớ cần thiết.

Câu 16: Một chương trình xử lý dữ liệu học sinh cần các chức năng: Nhập điểm, Tính điểm trung bình, Xếp loại học lực, In bảng điểm. Nếu bạn thiết kế chương trình theo mô đun, mô đun "Tính điểm trung bình" sẽ nhận đầu vào là gì và trả về đầu ra là gì?

  • A. Đầu vào: Tên học sinh; Đầu ra: Xếp loại.
  • B. Đầu vào: Điểm trung bình; Đầu ra: Bảng điểm.
  • C. Đầu vào: Tệp dữ liệu học sinh; Đầu ra: Điểm trung bình của tất cả học sinh.
  • D. Đầu vào: Danh sách các điểm môn học của một học sinh; Đầu ra: Điểm trung bình của học sinh đó.

Câu 17: Trong kịch bản quản lý bán hàng ở Câu 8, nếu phát hiện một lỗi trong mô đun "Xử lý đơn hàng" liên quan đến việc tính tổng tiền khi áp dụng mã giảm giá, bạn sẽ tập trung debug ở đâu?

  • A. Trong mô đun "Xử lý đơn hàng".
  • B. Trong mô đun "Quản lý sản phẩm".
  • C. Trong mô đun "Thanh toán".
  • D. Trong tất cả các mô đun vì chúng phụ thuộc lẫn nhau.

Câu 18: Việc đặt tên cho các mô đun và các chức năng bên trong mô đun một cách rõ ràng, dễ hiểu có vai trò gì trong thiết kế mô đun?

  • A. Làm cho chương trình chạy nhanh hơn.
  • B. Giảm thiểu số lượng mô đun cần thiết.
  • C. Tăng tính dễ đọc, dễ hiểu và dễ bảo trì mã nguồn.
  • D. Ngăn chặn việc sử dụng lại mô đun.

Câu 19: Khi nào thì việc áp dụng thiết kế chương trình theo mô đun trở nên đặc biệt quan trọng và mang lại nhiều lợi ích nhất?

  • A. Chỉ khi chương trình rất đơn giản và ngắn.
  • B. Khi phát triển các chương trình lớn, phức tạp, cần làm việc nhóm hoặc có khả năng mở rộng.
  • C. Chỉ khi chương trình không cần sửa đổi sau khi hoàn thành.
  • D. Khi chương trình chỉ có một chức năng duy nhất.

Câu 20: Bạn đang viết một chương trình xử lý bảng tính. Bạn có một mô đun "Đọc tệp Excel" và một mô đun "Tính toán công thức". Mô đun "Tính toán công thức" cần dữ liệu từ mô đun "Đọc tệp Excel". Mối quan hệ này giữa hai mô đun được gọi là gì?

  • A. Sự phụ thuộc (Dependency) hoặc kết nối (Coupling).
  • B. Sự độc lập hoàn toàn.
  • C. Sự trùng lặp mã nguồn.
  • D. Sự kế thừa (Inheritance).

Câu 21: Một chương trình quản lý kho được chia thành các mô đun: Quản lý nhập hàng, Quản lý xuất hàng, Kiểm kê tồn kho, Báo cáo. Nếu cần bổ sung chức năng cảnh báo khi số lượng tồn kho dưới mức tối thiểu, công việc này có khả năng ảnh hưởng đến mô đun nào nhất?

  • A. Quản lý nhập hàng.
  • B. Quản lý xuất hàng.
  • C. Kiểm kê tồn kho.
  • D. Báo cáo.

Câu 22: Lợi ích nào sau đây của thiết kế mô đun giúp giảm thời gian tìm và sửa lỗi (debug)?

  • A. Tăng tốc độ thực thi chương trình.
  • B. Giảm dung lượng bộ nhớ sử dụng.
  • C. Mã nguồn trở nên phức tạp hơn.
  • D. Khoanh vùng được nơi có khả năng xảy ra lỗi, thu hẹp phạm vi tìm kiếm.

Câu 23: Khi một mô đun được thiết kế tốt, nó nên có "giao diện" (interface) rõ ràng. Giao diện của mô đun bao gồm những gì?

  • A. Toàn bộ mã nguồn bên trong mô đun.
  • B. Các hàm, thủ tục mà mô đun cung cấp cho bên ngoài sử dụng, cùng với đầu vào và đầu ra của chúng.
  • C. Chỉ là phần chú thích trong mã nguồn.
  • D. Chỉ là tên của mô đun.

Câu 24: Một chương trình xử lý dữ liệu khảo sát gồm các mô đun: Đọc dữ liệu từ tệp CSV, Làm sạch dữ liệu (xử lý giá trị thiếu, loại bỏ dữ liệu không hợp lệ), Phân tích thống kê, Vẽ biểu đồ. Nếu cấu trúc tệp CSV đầu vào thay đổi (ví dụ: thứ tự các cột khác đi), mô đun nào có khả năng cần được sửa đổi?

  • A. Đọc dữ liệu từ tệp CSV.
  • B. Làm sạch dữ liệu.
  • C. Phân tích thống kê.
  • D. Vẽ biểu đồ.

Câu 25: Trong thiết kế mô đun, việc một mô đun "biết" quá nhiều chi tiết về cách hoạt động bên trong của mô đun khác được coi là có "tính kết nối cao". Điều này thường dẫn đến hậu quả tiêu cực nào?

  • A. Tăng khả năng tái sử dụng mô đun.
  • B. Làm cho chương trình chạy nhanh hơn.
  • C. Giúp dễ dàng làm việc nhóm hơn.
  • D. Khi một mô đun thay đổi, nó có khả năng gây ra lỗi ở nhiều mô đun khác, làm khó bảo trì.

Câu 26: Một chương trình mô phỏng thời tiết được chia thành các mô đun: Đọc dữ liệu khí tượng, Tính toán mô hình dự báo, Hiển thị kết quả trên bản đồ. Nếu cần cải thiện độ chính xác của mô hình dự báo bằng cách sử dụng một thuật toán phức tạp hơn, công việc này thuộc nhóm nào?

  • A. Công việc mới hoàn toàn.
  • B. Công việc nâng cấp một mô đun cũ.
  • C. Công việc không liên quan đến thuật toán và lập trình.
  • D. Chỉ cần thay đổi giao diện người dùng.

Câu 27: Trong thiết kế mô đun, việc kiểm thử từng mô đun một cách riêng biệt trước khi tích hợp chúng lại được gọi là gì?

  • A. Kiểm thử đơn vị (Unit testing).
  • B. Kiểm thử tích hợp (Integration testing).
  • C. Kiểm thử hệ thống (System testing).
  • D. Kiểm thử chấp nhận (Acceptance testing).

Câu 28: Một chương trình xử lý văn bản có mô đun "Kiểm tra chính tả" và mô đun "Gợi ý từ đồng nghĩa". Cả hai mô đun này đều cần truy cập vào một từ điển chung. Cách thiết kế tốt nhất để hai mô đun này sử dụng từ điển mà vẫn giữ được tính độc lập tương đối là gì?

  • A. Mô đun "Kiểm tra chính tả" đọc từ điển và truyền toàn bộ dữ liệu từ điển sang mô đun "Gợi ý từ đồng nghĩa".
  • B. Có một mô đun hoặc cấu trúc dữ liệu chung quản lý từ điển, và hai mô đun kia truy cập thông qua giao diện được định nghĩa sẵn.
  • C. Mỗi mô đun đọc và quản lý một bản sao riêng của từ điển.
  • D. Gộp cả hai chức năng kiểm tra chính tả và gợi ý từ đồng nghĩa vào chung một mô đun duy nhất.

Câu 29: Khi nào thì việc thiết kế chương trình theo mô đun có thể tốn nhiều thời gian hơn so với việc viết một chương trình nguyên khối (monolithic) ban đầu?

  • A. Đối với các chương trình rất nhỏ và đơn giản.
  • B. Đối với các chương trình rất lớn và phức tạp.
  • C. Khi chương trình cần được nâng cấp thường xuyên.
  • D. Khi có nhiều người tham gia phát triển.

Câu 30: Lợi ích nào sau đây của thiết kế mô đun giúp việc "mở rộng" (scaling) chương trình trong tương lai trở nên dễ dàng hơn?

  • A. Giảm số lượng dòng mã trong chương trình.
  • B. Chương trình chỉ có thể chạy trên một máy tính duy nhất.
  • C. Có thể thêm các chức năng mới bằng cách thêm hoặc sửa đổi các mô đun cụ thể mà ít ảnh hưởng đến phần còn lại.
  • D. Bắt buộc phải thiết kế lại toàn bộ chương trình khi muốn mở rộng.

1 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 04

Câu 1: Trong thiết kế chương trình theo mô đun, việc chia nhỏ chương trình thành các phần độc lập giúp đạt được lợi ích nào sau đây về mặt quản lý và phát triển?

2 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 04

Câu 2: Một chương trình quản lý sách trong thư viện được chia thành các mô đun: Nhập sách mới, Tìm kiếm sách, Mượn/Trả sách, Lập báo cáo thống kê. Nếu cần bổ sung chức năng in tem mã vạch cho sách mới nhập, việc này thuộc nhóm công việc nào theo phương pháp mô đun?

3 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 04

Câu 3: Xét mô hình chương trình xử lý doanh số bán hàng gồm các mô đun: NhậpDL (đọc dữ liệu từ tệp), Sapxep (sắp xếp dữ liệu), GhiDL (ghi kết quả ra báo cáo). Mô đun nào chịu trách nhiệm biến đổi cấu trúc dữ liệu (ví dụ: từ danh sách ban đầu sang danh sách đã được sắp xếp)?

4 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 04

Câu 4: Ưu điểm chính của việc sử dụng mô đun trong lập trình là khả năng tái sử dụng. Điều này có nghĩa là gì?

5 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 04

Câu 5: Trong một chương trình xử lý văn bản, các chức năng như Đọc tệp, Lưu tệp, In văn bản, Định dạng đoạn văn bản có thể được xem là các mô đun. Việc chia chương trình thành các mô đun như vậy giúp ích gì khi cần sửa một lỗi chỉ liên quan đến chức năng in?

6 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 04

Câu 6: Giả sử bạn đang phát triển một trò chơi đơn giản và quyết định chia nó thành các mô đun: Xử lý đồ họa, Xử lý âm thanh, Xử lý logic game (di chuyển nhân vật, tính điểm), Xử lý giao diện người dùng. Việc này minh họa rõ nhất cho lợi ích nào của thiết kế mô đun?

7 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 04

Câu 7: Trong ngữ cảnh thiết kế mô đun, 'tính độc lập' của một mô đun có ý nghĩa quan trọng nhất là gì?

8 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 04

Câu 8: Một công ty phần mềm đang phát triển một hệ thống quản lý bán hàng. Họ quyết định chia hệ thống thành các mô đun: Quản lý sản phẩm, Quản lý khách hàng, Xử lý đơn hàng, Thanh toán, Báo cáo. Việc chia này dựa trên nguyên tắc nào của thiết kế mô đun?

9 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 04

Câu 9: Khi thiết kế chương trình theo mô đun, việc xác định rõ ràng 'đầu vào' và 'đầu ra' của mỗi mô đun là cần thiết vì lý do gì?

10 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 04

Câu 10: Phương pháp thiết kế chương trình theo mô đun có liên quan đến phương pháp 'làm mịn dần' (stepwise refinement) như thế nào?

11 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 04

Câu 11: Trong một dự án phần mềm lớn, việc sử dụng thiết kế mô đun giúp giảm thiểu rủi ro khi có sự thay đổi yêu cầu. Điều này là do:

12 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 04

Câu 12: Bạn được giao nhiệm vụ phát triển mô đun 'Tính thuế' cho một hệ thống kế toán. Mô đun này cần nhận vào thu nhập và trả về số tiền thuế phải đóng. Để đảm bảo mô đun của bạn hoạt động tốt và có thể tái sử dụng, bạn cần tập trung vào điều gì khi viết mã?

13 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 04

Câu 13: Xét một chương trình xử lý ảnh. Các mô đun có thể bao gồm: Đọc ảnh, Lưu ảnh, Áp dụng bộ lọc (đen trắng, làm mờ), Thay đổi kích thước. Nếu người dùng yêu cầu thêm chức năng 'xoay ảnh 90 độ', bạn sẽ xếp công việc này vào nhóm nào?

14 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 04

Câu 14: Khi thiết kế mô đun, nguyên tắc 'tính liên kết cao' (high cohesion) có nghĩa là gì?

15 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 04

Câu 15: Ngược lại với 'tính liên kết cao' là 'tính kết nối thấp' (low coupling). Tính kết nối thấp giữa các mô đun mang lại lợi ích gì?

16 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 04

Câu 16: Một chương trình xử lý dữ liệu học sinh cần các chức năng: Nhập điểm, Tính điểm trung bình, Xếp loại học lực, In bảng điểm. Nếu bạn thiết kế chương trình theo mô đun, mô đun 'Tính điểm trung bình' sẽ nhận đầu vào là gì và trả về đầu ra là gì?

17 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 04

Câu 17: Trong kịch bản quản lý bán hàng ở Câu 8, nếu phát hiện một lỗi trong mô đun 'Xử lý đơn hàng' liên quan đến việc tính tổng tiền khi áp dụng mã giảm giá, bạn sẽ tập trung debug ở đâu?

18 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 04

Câu 18: Việc đặt tên cho các mô đun và các chức năng bên trong mô đun một cách rõ ràng, dễ hiểu có vai trò gì trong thiết kế mô đun?

19 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 04

Câu 19: Khi nào thì việc áp dụng thiết kế chương trình theo mô đun trở nên đặc biệt quan trọng và mang lại nhiều lợi ích nhất?

20 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 04

Câu 20: Bạn đang viết một chương trình xử lý bảng tính. Bạn có một mô đun 'Đọc tệp Excel' và một mô đun 'Tính toán công thức'. Mô đun 'Tính toán công thức' cần dữ liệu từ mô đun 'Đọc tệp Excel'. Mối quan hệ này giữa hai mô đun được gọi là gì?

21 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 04

Câu 21: Một chương trình quản lý kho được chia thành các mô đun: Quản lý nhập hàng, Quản lý xuất hàng, Kiểm kê tồn kho, Báo cáo. Nếu cần bổ sung chức năng cảnh báo khi số lượng tồn kho dưới mức tối thiểu, công việc này có khả năng ảnh hưởng đến mô đun nào nhất?

22 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 04

Câu 22: Lợi ích nào sau đây của thiết kế mô đun giúp giảm thời gian tìm và sửa lỗi (debug)?

23 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 04

Câu 23: Khi một mô đun được thiết kế tốt, nó nên có 'giao diện' (interface) rõ ràng. Giao diện của mô đun bao gồm những gì?

24 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 04

Câu 24: Một chương trình xử lý dữ liệu khảo sát gồm các mô đun: Đọc dữ liệu từ tệp CSV, Làm sạch dữ liệu (xử lý giá trị thiếu, loại bỏ dữ liệu không hợp lệ), Phân tích thống kê, Vẽ biểu đồ. Nếu cấu trúc tệp CSV đầu vào thay đổi (ví dụ: thứ tự các cột khác đi), mô đun nào có khả năng cần được sửa đổi?

25 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 04

Câu 25: Trong thiết kế mô đun, việc một mô đun 'biết' quá nhiều chi tiết về cách hoạt động bên trong của mô đun khác được coi là có 'tính kết nối cao'. Điều này thường dẫn đến hậu quả tiêu cực nào?

26 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 04

Câu 26: Một chương trình mô phỏng thời tiết được chia thành các mô đun: Đọc dữ liệu khí tượng, Tính toán mô hình dự báo, Hiển thị kết quả trên bản đồ. Nếu cần cải thiện độ chính xác của mô hình dự báo bằng cách sử dụng một thuật toán phức tạp hơn, công việc này thuộc nhóm nào?

27 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 04

Câu 27: Trong thiết kế mô đun, việc kiểm thử từng mô đun một cách riêng biệt trước khi tích hợp chúng lại được gọi là gì?

28 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 04

Câu 28: Một chương trình xử lý văn bản có mô đun 'Kiểm tra chính tả' và mô đun 'Gợi ý từ đồng nghĩa'. Cả hai mô đun này đều cần truy cập vào một từ điển chung. Cách thiết kế tốt nhất để hai mô đun này sử dụng từ điển mà vẫn giữ được tính độc lập tương đối là gì?

29 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 04

Câu 29: Khi nào thì việc thiết kế chương trình theo mô đun có thể tốn nhiều thời gian hơn so với việc viết một chương trình nguyên khối (monolithic) ban đầu?

30 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 04

Câu 30: Lợi ích nào sau đây của thiết kế mô đun giúp việc 'mở rộng' (scaling) chương trình trong tương lai trở nên dễ dàng hơn?

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


Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun - Đề 05

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun - Đề 05 được xây dựng với nhiều câu hỏi chất lượng, sát với nội dung chương trình học, giúp bạn dễ dàng ôn tập và kiểm tra kiến thức hiệu quả. Hãy cùng bắt đầu làm bài tập trắc nghiệm ngay để nâng cao hiểu biết và chuẩn bị tốt cho kỳ thi sắp tới!

Câu 1: Trong thiết kế chương trình theo mô đun, một mô đun được hiểu là:

  • A. Một phần nhỏ của chương trình không có chức năng cụ thể.
  • B. Toàn bộ mã nguồn của chương trình được viết trong một tệp duy nhất.
  • C. Một đơn vị chương trình độc lập, thực hiện một chức năng cụ thể và có thể được sử dụng lại.
  • D. Tập hợp các biến toàn cục được sử dụng trong chương trình.

Câu 2: Ưu điểm chính của việc thiết kế chương trình theo mô đun là gì?

  • A. Giúp chương trình dễ hiểu, dễ bảo trì, dễ nâng cấp và có tính tái sử dụng cao.
  • B. Làm tăng kích thước tệp mã nguồn và phức tạp hóa quá trình biên dịch.
  • C. Hạn chế khả năng làm việc nhóm do mỗi người chỉ làm một phần nhỏ.
  • D. Chỉ phù hợp với các chương trình có kích thước rất nhỏ.

Câu 3: Khi áp dụng thiết kế theo mô đun cho một bài toán lớn, bước đầu tiên quan trọng nhất thường là:

  • A. Viết mã cho mô đun phức tạp nhất.
  • B. Phân tích bài toán thành các bài toán con độc lập hoặc phụ thuộc ở mức độ thấp.
  • C. Thiết kế giao diện người dùng cho chương trình.
  • D. Kiểm tra hiệu năng của chương trình.

Câu 4: Xét một chương trình quản lý thư viện gồm các chức năng: Nhập thông tin sách, Tìm kiếm sách theo tên/tác giả, Mượn sách, Trả sách, Lập báo cáo sách đang mượn. Chức năng "Tìm kiếm sách theo tên/tác giả" có thể được xem xét thiết kế như một mô đun riêng vì lý do nào sau đây?

  • A. Nó là chức năng đơn giản nhất.
  • B. Nó không tương tác với bất kỳ chức năng nào khác.
  • C. Nó phải được thực hiện trước các chức năng khác.
  • D. Nó thực hiện một nhiệm vụ cụ thể, độc lập với các nhiệm vụ khác như mượn/trả sách, và có thể được gọi từ nhiều nơi khác nhau trong chương trình (ví dụ: trước khi mượn sách, cần tìm sách).

Câu 5: Một nhóm lập trình đang phát triển một phần mềm bán hàng. An được giao nhiệm vụ viết mô đun xử lý thanh toán, Bình viết mô đun quản lý kho hàng, và Chi viết mô đun tạo hóa đơn. Khả năng làm việc song song của An, Bình, và Chi mà không ảnh hưởng lớn đến nhau là nhờ ưu điểm nào của thiết kế mô đun?

  • A. Tăng tốc độ thực thi chương trình.
  • B. Giảm dung lượng bộ nhớ cần thiết.
  • C. Phân công công việc rõ ràng và độc lập giữa các thành viên.
  • D. Tự động sửa lỗi chính tả trong mã nguồn.

Câu 6: Khi một mô đun cần sử dụng chức năng được cung cấp bởi mô đun khác, mối quan hệ giữa hai mô đun này thường là:

  • A. Đồng bộ hóa dữ liệu ngầm.
  • B. Mô đun này gọi (call) mô đun kia.
  • C. Chia sẻ biến toàn cục một cách tự động.
  • D. Gửi tín hiệu ngắt phần cứng.

Câu 7: Giả sử bạn có một chương trình xử lý dữ liệu khách hàng. Mô đun `DocDuLieu` đọc dữ liệu từ tệp, mô đun `XuLyDuLieu` tính toán các chỉ số từ dữ liệu, và mô đun `GhiBaoCao` xuất kết quả ra tệp. Nếu định dạng tệp đầu vào thay đổi, bạn cần sửa đổi mô đun nào?

  • A. `DocDuLieu`
  • B. `XuLyDuLieu`
  • C. `GhiBaoCao`
  • D. Tất cả các mô đun

Câu 8: Tiếp tục với ví dụ ở Câu 7, nếu yêu cầu mới là tính thêm một chỉ số thống kê khác từ dữ liệu khách hàng (ví dụ: độ tuổi trung bình), bạn cần sửa đổi mô đun nào?

  • A. `DocDuLieu`
  • B. `XuLyDuLieu`
  • C. `GhiBaoCao`
  • D. Tạo một mô đun hoàn toàn mới không liên quan.

Câu 9: Công việc nào sau đây trong một dự án phần mềm không nhất thiết phải liên quan trực tiếp đến việc thay đổi mã lệnh trong các mô đun đã có hoặc tạo mô đun mới?

  • A. Thêm một chức năng xử lý dữ liệu mới.
  • B. Thay đổi thuật toán sắp xếp trong mô đun báo cáo.
  • C. Cập nhật dữ liệu trong tệp cấu hình (ví dụ: thay đổi địa chỉ máy chủ cơ sở dữ liệu).
  • D. Sửa lỗi hiển thị dữ liệu trên giao diện người dùng.

Câu 10: Trong thiết kế mô đun, tính "độc lập" (independence) của các mô đun mang lại lợi ích gì trong quá trình kiểm thử (testing)?

  • A. Có thể kiểm thử từng mô đun một cách riêng rẽ, dễ dàng xác định lỗi.
  • B. Chỉ cần kiểm thử mô đun chính mà không cần kiểm thử các mô đun con.
  • C. Quá trình kiểm thử diễn ra tự động hoàn toàn.
  • D. Không cần kiểm thử nếu các mô đun được viết bởi lập trình viên giỏi.

Câu 11: Một chương trình xử lý ảnh có các chức năng: Đọc ảnh, Áp dụng bộ lọc (đen trắng, sepia, ...), Thay đổi kích thước, Lưu ảnh. Để thiết kế theo mô đun, chức năng "Áp dụng bộ lọc" nên được chia nhỏ hơn nữa như thế nào?

  • A. Không cần chia nhỏ, giữ nguyên là một mô đun duy nhất.
  • B. Chia thành các mô đun con, mỗi mô đun thực hiện một loại bộ lọc cụ thể (ví dụ: `ApDungBoLocDenTrang`, `ApDungBoLocSepia`).
  • C. Chia theo màu sắc của ảnh.
  • D. Chia theo kích thước ảnh đầu vào.

Câu 12: Khi một chương trình được thiết kế theo mô đun, việc tái sử dụng (reusability) mã nguồn được thể hiện rõ nhất ở đâu?

  • A. Chỉ có thể tái sử dụng toàn bộ chương trình.
  • B. Chỉ có thể tái sử dụng các biến được khai báo.
  • C. Một mô đun đã được viết có thể được sử dụng lại trong nhiều chương trình hoặc nhiều phần khác nhau của cùng một chương trình.
  • D. Tính năng tái sử dụng không tồn tại trong thiết kế mô đun.

Câu 13: Giả sử bạn có một mô đun tên là `TinhTong` nhận vào một danh sách số và trả về tổng của chúng. Nếu bạn cần tính tổng của hai danh sách số khác nhau ở hai vị trí khác nhau trong chương trình, bạn sẽ làm gì?

  • A. Gọi mô đun `TinhTong` hai lần, mỗi lần với một danh sách khác nhau.
  • B. Viết lại toàn bộ mã tính tổng cho danh sách thứ hai.
  • C. Gộp hai danh sách lại thành một rồi gọi `TinhTong` một lần.
  • D. Chỉ có thể tính tổng cho một danh sách duy nhất.

Câu 14: Việc chia một chương trình lớn thành các mô đun nhỏ hơn giúp tăng tính "dễ hiểu" (readability) như thế nào?

  • A. Làm cho mã nguồn dài hơn nên dễ đọc hơn.
  • B. Buộc phải sử dụng nhiều biến toàn cục hơn.
  • C. Giảm số lượng bình luận trong mã nguồn.
  • D. Mỗi mô đun chỉ tập trung vào một nhiệm vụ cụ thể, giảm độ phức tạp khi đọc và hiểu từng phần.

Câu 15: Xét một chương trình xử lý đơn hàng online. Công việc "Kiểm tra số lượng tồn kho của sản phẩm" là một nhiệm vụ cụ thể. Việc thiết kế nó thành một mô đun riêng mang lại lợi ích gì khi có yêu cầu bổ sung tính năng "Hiển thị số lượng tồn kho trên trang chi tiết sản phẩm"?

  • A. Phải viết lại toàn bộ chương trình.
  • B. Có thể tái sử dụng mô đun "Kiểm tra số lượng tồn kho" mà không cần viết lại logic kiểm tra.
  • C. Chỉ cần thay đổi giao diện người dùng.
  • D. Không cần làm gì thêm, tính năng đã có sẵn.

Câu 16: Công việc nào sau đây trong một hệ thống quản lý học sinh có thể được phân loại vào nhóm "Công việc mới hoàn toàn" khi thiết kế theo mô đun?

  • A. Thêm chức năng "Xếp loại học sinh theo hạnh kiểm" mà trước đó chưa có.
  • B. Thay đổi cách tính điểm trung bình môn.
  • C. Sửa lỗi hiển thị tên học sinh có ký tự đặc biệt.
  • D. Cập nhật thông tin địa chỉ của trường học trong cài đặt hệ thống.

Câu 17: Công việc nào sau đây trong một hệ thống báo cáo doanh số có thể được phân loại vào nhóm "Công việc nâng cấp một mô đun cũ"?

  • A. Thêm chức năng "Dự báo doanh số năm tới" chưa từng tồn tại.
  • B. Thay đổi định dạng tệp dữ liệu đầu vào từ CSV sang JSON.
  • C. Thay đổi số lượng mặt hàng "bán chạy nhất" được hiển thị trong báo cáo từ 5 lên 10.
  • D. Viết một chương trình hoàn toàn mới để phân tích cảm xúc khách hàng từ bình luận.

Câu 18: Công việc nào sau đây không thuộc về phạm vi của thiết kế chương trình theo mô đun (tức là không liên quan đến cấu trúc mã lệnh hay thuật toán)?

  • A. Phân chia các chức năng thành các hàm hoặc lớp riêng biệt.
  • B. Quyết định màu sắc chủ đạo và bố cục các nút trên giao diện người dùng.
  • C. Thiết kế cấu trúc dữ liệu để lưu trữ thông tin trong mô đun.
  • D. Xác định cách các mô đun trao đổi dữ liệu với nhau.

Câu 19: Trong mô hình thiết kế chương trình theo mô đun, mô đun `NhapDuLieu` (Input Module) thường có nhiệm vụ chính là gì?

  • A. Đọc dữ liệu từ nguồn bên ngoài (tệp, cơ sở dữ liệu, nhập liệu từ người dùng) và chuẩn bị cho xử lý.
  • B. Thực hiện các phép tính phức tạp trên dữ liệu.
  • C. Hiển thị kết quả cho người dùng.
  • D. Kiểm tra tính đúng đắn của các mô đun khác.

Câu 20: Mô đun `XuLyDuLieu` (Processing Module) trong thiết kế mô đun thường chịu trách nhiệm:

  • A. Giao tiếp trực tiếp với người dùng để nhận lệnh.
  • B. Lưu trữ dữ liệu lâu dài trên đĩa cứng.
  • C. Định dạng và trình bày kết quả cuối cùng.
  • D. Thực hiện các thuật toán, biến đổi, tính toán trên dữ liệu đã được chuẩn bị.

Câu 21: Mô đun `BaoCao` (Reporting/Output Module) có nhiệm vụ chính là gì?

  • A. Kiểm tra tính hợp lệ của dữ liệu đầu vào.
  • B. Quản lý luồng điều khiển chính của chương trình.
  • C. Định dạng và xuất kết quả xử lý ra thiết bị đích (màn hình, tệp, máy in).
  • D. Thực hiện các tác vụ nền không hiển thị ra bên ngoài.

Câu 22: Tại sao việc sử dụng biến toàn cục (global variables) một cách bừa bãi lại đi ngược lại nguyên tắc của thiết kế mô đun?

  • A. Làm giảm tính độc lập của các mô đun, khiến chúng phụ thuộc vào trạng thái toàn cục và khó kiểm thử riêng rẽ.
  • B. Làm tăng tốc độ thực thi chương trình một cách không kiểm soát.
  • C. Giúp các mô đun dễ dàng chia sẻ thông tin mà không cần truyền tham số.
  • D. Chỉ áp dụng cho các ngôn ngữ lập trình cũ.

Câu 23: Khi thiết kế một mô đun, nguyên tắc "che giấu thông tin" (information hiding) có nghĩa là gì?

  • A. Mã nguồn của mô đun phải được mã hóa.
  • B. Mô đun không được phép truy cập dữ liệu từ bên ngoài.
  • C. Chỉ công khai những thông tin không quan trọng của mô đun.
  • D. Các chi tiết cài đặt bên trong của mô đun (cách nó thực hiện nhiệm vụ) nên được ẩn đi, chỉ công khai giao diện (cách sử dụng) của nó.

Câu 24: Một chương trình cần thực hiện nhiều loại tính toán khác nhau trên cùng một bộ dữ liệu. Việc tạo ra các mô đun riêng cho từng loại tính toán (ví dụ: `TinhTrungBinh`, `TinhDoLechChuan`, `TinhMaxMin`) thay vì gộp tất cả vào một mô đun xử lý chung thể hiện rõ ưu điểm nào của thiết kế mô đun?

  • A. Giảm thời gian chạy chương trình.
  • B. Tăng tính tổ chức, dễ dàng thêm/sửa/bỏ bớt các loại tính toán mà không ảnh hưởng lẫn nhau.
  • C. Yêu cầu ít bộ nhớ hơn.
  • D. Tự động xử lý lỗi nhập liệu.

Câu 25: Giả sử bạn có một chương trình quản lý danh sách sinh viên. Mô đun `SapXepSinhVien` hiện đang sắp xếp theo tên. Yêu cầu mới là sắp xếp theo điểm trung bình. Đây là loại công việc gì?

  • A. Công việc mới hoàn toàn.
  • B. Công việc không liên quan đến lập trình.
  • C. Công việc nâng cấp một mô đun cũ.
  • D. Công việc yêu cầu thiết kế lại toàn bộ chương trình.

Câu 26: Khi thiết kế chương trình theo mô đun, việc đặt tên cho các mô đun và hàm bên trong cần tuân theo nguyên tắc nào để tăng tính dễ hiểu và dễ bảo trì?

  • A. Tên nên mô tả rõ chức năng hoặc nhiệm vụ của mô đun/hàm.
  • B. Tên càng ngắn gọn càng tốt, không cần ý nghĩa.
  • C. Sử dụng các ký hiệu đặc biệt để làm nổi bật.
  • D. Đặt tên ngẫu nhiên để tránh trùng lặp.

Câu 27: Một mô đun được coi là có tính "độc lập cao" khi nào?

  • A. Nó sử dụng rất nhiều biến toàn cục.
  • B. Nó gọi rất nhiều mô đun khác.
  • C. Nó có kích thước mã nguồn rất lớn.
  • D. Nó thực hiện một nhiệm vụ cụ thể duy nhất và ít phụ thuộc vào các mô đun khác (chỉ tương tác thông qua giao diện rõ ràng).

Câu 28: Trong ngữ cảnh của thiết kế mô đun, "giao diện" (interface) của một mô đun là gì?

  • A. Màn hình đồ họa mà người dùng tương tác.
  • B. Tập hợp các hàm, thủ tục, hoặc thuộc tính mà mô đun đó công khai cho các mô đun khác sử dụng.
  • C. Tệp dữ liệu mà mô đun đọc từ đó.
  • D. Các biến nội bộ được sử dụng trong mô đun.

Câu 29: Việc thiết kế chương trình theo mô đun giúp cho quá trình "gỡ lỗi" (debugging) trở nên hiệu quả hơn vì:

  • A. Khi xảy ra lỗi, phạm vi tìm kiếm lỗi thường được khoanh vùng trong một hoặc một vài mô đun cụ thể.
  • B. Mô đun tự động tìm và sửa lỗi.
  • C. Lỗi chỉ xảy ra ở mô đun chính.
  • D. Không cần gỡ lỗi nếu chương trình được thiết kế theo mô đun.

Câu 30: Một dự án phần mềm lớn được phát triển bởi nhiều lập trình viên. Việc áp dụng thiết kế theo mô đun hỗ trợ làm việc nhóm như thế nào?

  • A. Buộc mọi người phải làm việc trên cùng một tệp mã nguồn.
  • B. Mỗi người phải hiểu toàn bộ chương trình từ đầu đến cuối.
  • C. Cho phép mỗi lập trình viên tập trung phát triển một hoặc nhiều mô đun độc lập, giảm xung đột và dễ dàng tích hợp sau này.
  • D. Yêu cầu tất cả lập trình viên phải có cùng trình độ và kinh nghiệm.

1 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 05

Câu 1: Trong thiết kế chương trình theo mô đun, một mô đun được hiểu là:

2 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 05

Câu 2: Ưu điểm chính của việc thiết kế chương trình theo mô đun là gì?

3 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 05

Câu 3: Khi áp dụng thiết kế theo mô đun cho một bài toán lớn, bước đầu tiên quan trọng nhất thường là:

4 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 05

Câu 4: Xét một chương trình quản lý thư viện gồm các chức năng: Nhập thông tin sách, Tìm kiếm sách theo tên/tác giả, Mượn sách, Trả sách, Lập báo cáo sách đang mượn. Chức năng 'Tìm kiếm sách theo tên/tác giả' có thể được xem xét thiết kế như một mô đun riêng vì lý do nào sau đây?

5 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 05

Câu 5: Một nhóm lập trình đang phát triển một phần mềm bán hàng. An được giao nhiệm vụ viết mô đun xử lý thanh toán, Bình viết mô đun quản lý kho hàng, và Chi viết mô đun tạo hóa đơn. Khả năng làm việc song song của An, Bình, và Chi mà không ảnh hưởng lớn đến nhau là nhờ ưu điểm nào của thiết kế mô đun?

6 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 05

Câu 6: Khi một mô đun cần sử dụng chức năng được cung cấp bởi mô đun khác, mối quan hệ giữa hai mô đun này thường là:

7 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 05

Câu 7: Giả sử bạn có một chương trình xử lý dữ liệu khách hàng. Mô đun `DocDuLieu` đọc dữ liệu từ tệp, mô đun `XuLyDuLieu` tính toán các chỉ số từ dữ liệu, và mô đun `GhiBaoCao` xuất kết quả ra tệp. Nếu định dạng tệp đầu vào thay đổi, bạn cần sửa đổi mô đun nào?

8 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 05

Câu 8: Tiếp tục với ví dụ ở Câu 7, nếu yêu cầu mới là tính thêm một chỉ số thống kê khác từ dữ liệu khách hàng (ví dụ: độ tuổi trung bình), bạn cần sửa đổi mô đun nào?

9 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 05

Câu 9: Công việc nào sau đây trong một dự án phần mềm *không* nhất thiết phải liên quan trực tiếp đến việc thay đổi mã lệnh trong các mô đun đã có hoặc tạo mô đun mới?

10 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 05

Câu 10: Trong thiết kế mô đun, tính 'độc lập' (independence) của các mô đun mang lại lợi ích gì trong quá trình kiểm thử (testing)?

11 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 05

Câu 11: Một chương trình xử lý ảnh có các chức năng: Đọc ảnh, Áp dụng bộ lọc (đen trắng, sepia, ...), Thay đổi kích thước, Lưu ảnh. Để thiết kế theo mô đun, chức năng 'Áp dụng bộ lọc' nên được chia nhỏ hơn nữa như thế nào?

12 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 05

Câu 12: Khi một chương trình được thiết kế theo mô đun, việc tái sử dụng (reusability) mã nguồn được thể hiện rõ nhất ở đâu?

13 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 05

Câu 13: Giả sử bạn có một mô đun tên là `TinhTong` nhận vào một danh sách số và trả về tổng của chúng. Nếu bạn cần tính tổng của hai danh sách số khác nhau ở hai vị trí khác nhau trong chương trình, bạn sẽ làm gì?

14 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 05

Câu 14: Việc chia một chương trình lớn thành các mô đun nhỏ hơn giúp tăng tính 'dễ hiểu' (readability) như thế nào?

15 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 05

Câu 15: Xét một chương trình xử lý đơn hàng online. Công việc 'Kiểm tra số lượng tồn kho của sản phẩm' là một nhiệm vụ cụ thể. Việc thiết kế nó thành một mô đun riêng mang lại lợi ích gì khi có yêu cầu bổ sung tính năng 'Hiển thị số lượng tồn kho trên trang chi tiết sản phẩm'?

16 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 05

Câu 16: Công việc nào sau đây trong một hệ thống quản lý học sinh có thể được phân loại vào nhóm 'Công việc mới hoàn toàn' khi thiết kế theo mô đun?

17 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 05

Câu 17: Công việc nào sau đây trong một hệ thống báo cáo doanh số có thể được phân loại vào nhóm 'Công việc nâng cấp một mô đun cũ'?

18 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 05

Câu 18: Công việc nào sau đây *không* thuộc về phạm vi của thiết kế chương trình theo mô đun (tức là không liên quan đến cấu trúc mã lệnh hay thuật toán)?

19 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 05

Câu 19: Trong mô hình thiết kế chương trình theo mô đun, mô đun `NhapDuLieu` (Input Module) thường có nhiệm vụ chính là gì?

20 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 05

Câu 20: Mô đun `XuLyDuLieu` (Processing Module) trong thiết kế mô đun thường chịu trách nhiệm:

21 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 05

Câu 21: Mô đun `BaoCao` (Reporting/Output Module) có nhiệm vụ chính là gì?

22 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 05

Câu 22: Tại sao việc sử dụng biến toàn cục (global variables) một cách bừa bãi lại đi ngược lại nguyên tắc của thiết kế mô đun?

23 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 05

Câu 23: Khi thiết kế một mô đun, nguyên tắc 'che giấu thông tin' (information hiding) có nghĩa là gì?

24 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 05

Câu 24: Một chương trình cần thực hiện nhiều loại tính toán khác nhau trên cùng một bộ dữ liệu. Việc tạo ra các mô đun riêng cho từng loại tính toán (ví dụ: `TinhTrungBinh`, `TinhDoLechChuan`, `TinhMaxMin`) thay vì gộp tất cả vào một mô đun xử lý chung thể hiện rõ ưu điểm nào của thiết kế mô đun?

25 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 05

Câu 25: Giả sử bạn có một chương trình quản lý danh sách sinh viên. Mô đun `SapXepSinhVien` hiện đang sắp xếp theo tên. Yêu cầu mới là sắp xếp theo điểm trung bình. Đây là loại công việc gì?

26 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 05

Câu 26: Khi thiết kế chương trình theo mô đun, việc đặt tên cho các mô đun và hàm bên trong cần tuân theo nguyên tắc nào để tăng tính dễ hiểu và dễ bảo trì?

27 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 05

Câu 27: Một mô đun được coi là có tính 'độc lập cao' khi nào?

28 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 05

Câu 28: Trong ngữ cảnh của thiết kế mô đun, 'giao diện' (interface) của một mô đun là gì?

29 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 05

Câu 29: Việc thiết kế chương trình theo mô đun giúp cho quá trình 'gỡ lỗi' (debugging) trở nên hiệu quả hơn vì:

30 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 05

Câu 30: Một dự án phần mềm lớn được phát triển bởi nhiều lập trình viên. Việc áp dụng thiết kế theo mô đun hỗ trợ làm việc nhóm như thế nào?

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


Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun - Đề 06

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun - Đề 06 được xây dựng với nhiều câu hỏi chất lượng, sát với nội dung chương trình học, giúp bạn dễ dàng ôn tập và kiểm tra kiến thức hiệu quả. Hãy cùng bắt đầu làm bài tập trắc nghiệm ngay để nâng cao hiểu biết và chuẩn bị tốt cho kỳ thi sắp tới!

Câu 1: Mục đích chính của việc thiết kế chương trình theo mô đun là gì?

  • A. Làm cho mã nguồn dài hơn để dễ quản lý.
  • B. Chia nhỏ chương trình thành các phần độc lập, dễ quản lý và phát triển.
  • C. Bắt buộc sử dụng các thư viện có sẵn.
  • D. Giảm thiểu hoàn toàn việc viết mã.

Câu 2: Ưu điểm nào sau đây của thiết kế theo mô đun giúp giảm thời gian và công sức khi phát triển các chương trình mới có chức năng tương tự?

  • A. Dễ dàng tìm và sửa lỗi.
  • B. Khả năng tái sử dụng (reusability) các mô đun.
  • C. Phân công công việc cho nhiều người dễ hơn.
  • D. Chương trình chạy nhanh hơn.

Câu 3: Khi một lỗi được phát hiện trong chương trình được thiết kế theo mô đun, việc sửa lỗi thường dễ dàng hơn so với chương trình nguyên khối (monolithic). Lý do chính là gì?

  • A. Mã nguồn ngắn hơn.
  • B. Lỗi thường được khoanh vùng trong một hoặc một vài mô đun cụ thể.
  • C. Các mô đun không tương tác với nhau.
  • D. Luôn có tài liệu chi tiết cho mỗi mô đun.

Câu 4: Trong một dự án lớn với nhiều lập trình viên, thiết kế theo mô đun hỗ trợ làm việc nhóm hiệu quả như thế nào?

  • A. Cho phép mỗi người làm việc trên toàn bộ mã nguồn cùng lúc.
  • B. Mỗi lập trình viên có thể tập trung phát triển các mô đun độc lập.
  • C. Giảm nhu cầu giao tiếp giữa các thành viên.
  • D. Bắt buộc sử dụng cùng một ngôn ngữ lập trình.

Câu 5: Giả sử bạn đang xây dựng chương trình xử lý đơn hàng. Công việc

  • A. Mô đun xử lý logic.
  • B. Mô đun nhập dữ liệu.
  • C. Mô đun xuất báo cáo.
  • D. Mô đun giao diện người dùng.

Câu 6: Trong chương trình xử lý đơn hàng trên, công việc

  • A. Mô đun nhập dữ liệu.
  • B. Mô đun xử lý logic.
  • C. Mô đun xuất báo cáo.
  • D. Mô đun quản lý giao diện.

Câu 7: Công việc

  • A. Mô đun nhập dữ liệu.
  • B. Mô đun xử lý logic.
  • C. Mô đun xuất báo cáo.
  • D. Mô đun tiện ích chung.

Câu 8: Mô đun Nhập dữ liệu sau khi đọc xong thông tin thường sẽ làm gì với dữ liệu đó để các mô đun khác (ví dụ: mô đun Xử lý) có thể sử dụng?

  • A. Tự động xử lý dữ liệu đó ngay lập tức.
  • B. Lưu dữ liệu vào biến toàn cục để mọi mô đun truy cập.
  • C. Truyền dữ liệu đó làm tham số cho các hàm hoặc phương thức của mô đun khác.
  • D. Xóa dữ liệu sau khi đọc xong để tiết kiệm bộ nhớ.

Câu 9: Một chương trình báo cáo doanh số đang in ra tệp văn bản. Yêu cầu mới là in ra tệp Excel. Công việc này có khả năng cao sẽ yêu cầu:

  • A. Thay đổi toàn bộ cấu trúc chương trình.
  • B. Chỉ cần cập nhật tệp dữ liệu đầu vào.
  • C. Chỉnh sửa hoặc thay thế mô đun xuất báo cáo hiện tại.
  • D. Thêm một mô đun nhập dữ liệu mới.

Câu 10: Chương trình xử lý dữ liệu bán hàng hiện có các chức năng nhập, xử lý (sắp xếp), và báo cáo. Nếu cần bổ sung chức năng

  • A. Nâng cấp một mô đun cũ (chỉ thay đổi nhỏ).
  • B. Công việc không liên quan đến lập trình.
  • C. Bổ sung một chức năng mới hoàn toàn, có thể cần mô đun mới.
  • D. Chỉ cần thay đổi giao diện người dùng.

Câu 11: Trong chương trình quản lý kho hàng, việc

  • A. Công việc yêu cầu bổ sung mô đun xử lý mới.
  • B. Công việc yêu cầu chỉnh sửa mô đun nhập dữ liệu.
  • C. Công việc không liên quan trực tiếp đến thay đổi mã nguồn chương trình, chỉ cập nhật dữ liệu.
  • D. Công việc yêu cầu thay đổi mô đun báo cáo.

Câu 12: Một chương trình quản lý thư viện có các chức năng: tìm kiếm sách, mượn sách, trả sách, thêm sách mới. Việc thiết kế theo mô đun sẽ chia chương trình này thành các mô đun dựa trên tiêu chí nào là phù hợp nhất để đạt tính liên kết cao (high cohesion)?

  • A. Chia theo từng dòng code.
  • B. Chia theo chức năng nghiệp vụ (ví dụ: mô đun Quản lý sách, mô đun Quản lý mượn/trả).
  • C. Chia theo loại dữ liệu (ví dụ: mô đun Xử lý chuỗi, mô đun Xử lý số).
  • D. Chia ngẫu nhiên để phân việc cho nhiều người.

Câu 13: Khái niệm

  • A. Các mô đun không tương tác với nhau.
  • B. Sự thay đổi trong một mô đun ít ảnh hưởng đến các mô đun khác.
  • C. Mô đun chứa rất nhiều chức năng khác nhau.
  • D. Mô đun khó có thể được tái sử dụng.

Câu 14: Khái niệm

  • A. Mô đun thực hiện nhiều chức năng không liên quan.
  • B. Các thành phần bên trong mô đun có mối quan hệ chặt chẽ và cùng thực hiện một mục đích duy nhất.
  • C. Mô đun phụ thuộc chặt chẽ vào nhiều mô đun khác.
  • D. Mô đun rất khó hiểu và phức tạp.

Câu 15: Khi thiết kế giao diện cho một mô đun (ví dụ: mô đun xử lý tính toán), điều quan trọng nhất cần xác định rõ là gì để mô đun khác có thể sử dụng nó một cách chính xác?

  • A. Tên của lập trình viên viết mô đun đó.
  • B. Các hàm/phương thức mà mô đun cung cấp và ý nghĩa của các tham số, giá trị trả về.
  • C. Chi tiết mã nguồn cài đặt bên trong mô đun.
  • D. Ngày hoàn thành dự kiến của mô đun.

Câu 16: So sánh việc kiểm thử (testing) một chương trình nguyên khối và một chương trình được chia thành nhiều mô đun nhỏ. Phương pháp nào thường hiệu quả và dễ dàng hơn? Tại sao?

  • A. Chương trình nguyên khối dễ hơn vì chỉ cần kiểm thử một lần.
  • B. Chương trình nguyên khối dễ hơn vì không có sự tương tác giữa các phần.
  • C. Chương trình mô đun dễ hơn vì có thể kiểm thử từng mô đun độc lập (unit testing).
  • D. Cả hai đều khó như nhau.

Câu 17: Khi gặp lỗi trong chương trình, việc gỡ lỗi (debugging) trong thiết kế mô đun thường như thế nào so với thiết kế nguyên khối?

  • A. Khó khăn hơn vì phải kiểm tra từng mô đun riêng biệt.
  • B. Dễ dàng hơn vì phạm vi tìm kiếm lỗi thường được giới hạn trong một mô đun cụ thể.
  • C. Không có sự khác biệt đáng kể.
  • D. Chỉ có thể gỡ lỗi khi tất cả mô đun đã hoàn thành.

Câu 18: Một mô đun được thiết kế để tính toán thuế cho các loại sản phẩm khác nhau. Mô đun này có thể được tái sử dụng hiệu quả trong những trường hợp nào?

  • A. Chỉ trong chương trình gốc mà nó được tạo ra.
  • B. Trong các chương trình khác cũng cần tính toán thuế dựa trên cùng logic.
  • C. Chỉ khi chương trình mới được viết bằng ngôn ngữ lập trình khác.
  • D. Khi chương trình mới không liên quan gì đến tính thuế.

Câu 19: Thiết kế theo mô đun hỗ trợ khả năng mở rộng (scalability) của chương trình như thế nào?

  • A. Bằng cách làm cho chương trình nhỏ gọn hơn.
  • B. Bằng cách cho phép bổ sung chức năng mới dưới dạng các mô đun mới hoặc sửa đổi mô đun hiện có mà ít ảnh hưởng đến phần còn lại.
  • C. Bằng cách giới hạn số lượng người dùng có thể truy cập chương trình.
  • D. Bằng cách yêu cầu viết lại toàn bộ chương trình khi cần mở rộng.

Câu 20: Việc một mô đun chỉ bộc lộ ra bên ngoài những chức năng cần thiết và giấu đi chi tiết cài đặt bên trong (information hiding) mang lại lợi ích gì?

  • A. Làm cho mô đun phức tạp hơn.
  • B. Giúp người sử dụng mô đun dễ dàng thay đổi cách cài đặt bên trong mà không ảnh hưởng đến các mô đun gọi nó.
  • C. Bắt buộc người sử dụng phải biết toàn bộ mã nguồn của mô đun.
  • D. Giảm khả năng tái sử dụng mô đun.

Câu 21: Khi một đoạn mã trở nên quá dài và phức tạp, việc chia nó thành các hàm hoặc mô đun nhỏ hơn (refactoring) nhằm mục đích chính là gì theo nguyên tắc thiết kế mô đun?

  • A. Làm cho mã nguồn ngắn hơn về tổng thể.
  • B. Tăng tính liên kết (cohesion) và giảm khớp nối (coupling) để dễ hiểu và bảo trì hơn.
  • C. Bắt buộc phải viết lại toàn bộ logic.
  • D. Giảm hiệu suất thực thi của chương trình.

Câu 22: Đối với một chương trình rất đơn giản, chỉ thực hiện một vài thao tác liên tục, việc chia thành quá nhiều mô đun nhỏ có thể dẫn đến nhược điểm gì?

  • A. Chương trình trở nên khó hiểu hơn do có quá nhiều file và sự tương tác nhỏ nhặt.
  • B. Giảm khả năng tái sử dụng.
  • C. Tăng tính liên kết (cohesion) một cách không cần thiết.
  • D. Giảm khả năng làm việc nhóm.

Câu 23: Trong một ứng dụng quản lý điểm học sinh, công việc

  • A. Mô đun nhập dữ liệu.
  • B. Mô đun xử lý logic.
  • C. Mô đun xuất báo cáo.
  • D. Mô đun lưu trữ dữ liệu.

Câu 24: Một chương trình cần thực hiện nhiều lần việc kiểm tra xem một chuỗi có phải là địa chỉ email hợp lệ hay không. Chức năng kiểm tra này nên được đặt trong mô đun loại nào để dễ tái sử dụng?

  • A. Mô đun xử lý chính.
  • B. Mô đun nhập dữ liệu.
  • C. Mô đun tiện ích/thư viện.
  • D. Mô đun xuất báo cáo.

Câu 25: Nếu mô đun A gọi (sử dụng chức năng của) mô đun B, thì sự thay đổi nào trong mô đun B ít có khả năng nhất ảnh hưởng đến mô đun A?

  • A. Thay đổi tên của mô đun B.
  • B. Thay đổi số lượng tham số của hàm mà A gọi từ B.
  • C. Thay đổi thuật toán bên trong mô đun B để cải thiện hiệu suất, miễn là giao diện (đầu vào/đầu ra) không đổi.
  • D. Thay đổi kiểu dữ liệu trả về của hàm mà A gọi từ B.

Câu 26: Trong làm việc nhóm, việc các lập trình viên thống nhất và thiết kế kỹ lưỡng giao diện của các mô đun trước khi mỗi người bắt tay vào cài đặt chi tiết bên trong mô đun của mình mang lại lợi ích chính là gì?

  • A. Giảm tổng số mô đun cần thiết.
  • B. Cho phép các lập trình viên làm việc song song và tích hợp dễ dàng hơn sau này.
  • C. Bắt buộc mỗi mô đun phải rất nhỏ.
  • D. Loại bỏ hoàn toàn nhu cầu kiểm thử tích hợp.

Câu 27: Việc thiết kế theo mô đun ban đầu có thể tốn thêm thời gian phân tích và thiết kế. Tuy nhiên, lợi ích nó mang lại thường thể hiện rõ nhất ở giai đoạn nào của vòng đời phát triển phần mềm?

  • A. Giai đoạn thu thập yêu cầu.
  • B. Giai đoạn thiết kế ban đầu.
  • C. Giai đoạn cài đặt (coding).
  • D. Giai đoạn kiểm thử, bảo trì và nâng cấp.

Câu 28: Chương trình tính lương hiện tại chỉ tính lương cơ bản. Yêu cầu mới là tính thêm phụ cấp và thưởng dựa trên các quy tắc phức tạp. Công việc này chủ yếu yêu cầu thay đổi ở mô đun nào?

  • A. Mô đun nhập dữ liệu nhân viên.
  • B. Mô đun xử lý tính toán lương.
  • C. Mô đun xuất phiếu lương.
  • D. Mô đúm quản lý cơ sở dữ liệu.

Câu 29: Chương trình xuất báo cáo đang xuất ra PDF. Yêu cầu bổ sung khả năng xuất ra định dạng CSV. Công việc này chủ yếu yêu cầu thêm/thay đổi ở mô đun nào?

  • A. Mô đun nhập dữ liệu.
  • B. Mô đun xử lý dữ liệu.
  • C. Mô đun xuất báo cáo (thêm/thay thế logic tạo định dạng CSV).
  • D. Mô đun tiện ích chung.

Câu 30: Có quan điểm cho rằng

  • A. Đúng, vì mô đun nhỏ thì luôn dễ hiểu.
  • B. Đúng, vì mô đun nhỏ thì không bao giờ có lỗi.
  • C. Sai, vì chia quá nhỏ có thể làm tăng sự phức tạp tổng thể do quản lý nhiều mô đun và tương tác giữa chúng.
  • D. Sai, vì mô đun nhỏ không thể tái sử dụng.

1 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 06

Câu 1: Mục đích chính của việc thiết kế chương trình theo mô đun là gì?

2 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 06

Câu 2: Ưu điểm nào sau đây của thiết kế theo mô đun giúp giảm thời gian và công sức khi phát triển các chương trình mới có chức năng tương tự?

3 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 06

Câu 3: Khi một lỗi được phát hiện trong chương trình được thiết kế theo mô đun, việc sửa lỗi thường dễ dàng hơn so với chương trình nguyên khối (monolithic). Lý do chính là gì?

4 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 06

Câu 4: Trong một dự án lớn với nhiều lập trình viên, thiết kế theo mô đun hỗ trợ làm việc nhóm hiệu quả như thế nào?

5 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 06

Câu 5: Giả sử bạn đang xây dựng chương trình xử lý đơn hàng. Công việc "Đọc danh sách sản phẩm từ cơ sở dữ liệu" nên được giao cho mô đun loại nào?

6 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 06

Câu 6: Trong chương trình xử lý đơn hàng trên, công việc "Tính tổng giá trị đơn hàng sau khi áp dụng mã giảm giá" thuộc về mô đun loại nào?

7 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 06

Câu 7: Công việc "Lưu thông tin đơn hàng đã xử lý vào tệp báo cáo" trong chương trình xử lý đơn hàng thuộc về mô đun loại nào?

8 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 06

Câu 8: Mô đun Nhập dữ liệu sau khi đọc xong thông tin thường sẽ làm gì với dữ liệu đó để các mô đun khác (ví dụ: mô đun Xử lý) có thể sử dụng?

9 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 06

Câu 9: Một chương trình báo cáo doanh số đang in ra tệp văn bản. Yêu cầu mới là in ra tệp Excel. Công việc này có khả năng cao sẽ yêu cầu:

10 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 06

Câu 10: Chương trình xử lý d??? liệu bán hàng hiện có các chức năng nhập, xử lý (sắp xếp), và báo cáo. Nếu cần bổ sung chức năng "Dự báo doanh số cho quý tới dựa trên dữ liệu lịch sử", đây được xem là loại công việc nào?

11 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 06

Câu 11: Trong chương trình quản lý kho hàng, việc "Cập nhật số lượng tồn kho thực tế vào tệp dữ liệu đầu vào" thường được xem là công việc thuộc nhóm nào?

12 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 06

Câu 12: Một chương trình quản lý thư viện có các chức năng: tìm kiếm sách, mượn sách, trả sách, thêm sách mới. Việc thiết kế theo mô đun sẽ chia chương trình này thành các mô đun dựa trên tiêu chí nào là phù hợp nhất để đạt tính liên kết cao (high cohesion)?

13 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 06

Câu 13: Khái niệm "khớp nối lỏng lẻo" (low coupling) giữa các mô đun có ý nghĩa gì đối với việc phát triển và bảo trì chương trình?

14 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 06

Câu 14: Khái niệm "tính liên kết cao" (high cohesion) trong một mô đun có ý nghĩa là gì và tại sao nó lại quan trọng?

15 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 06

Câu 15: Khi thiết kế giao diện cho một mô đun (ví dụ: mô đun xử lý tính toán), điều quan trọng nhất cần xác định rõ là gì để mô đun khác có thể sử dụng nó một cách chính xác?

16 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 06

Câu 16: So sánh việc kiểm thử (testing) một chương trình nguyên khối và một chương trình được chia thành nhiều mô đun nhỏ. Phương pháp nào thường hiệu quả và dễ dàng hơn? Tại sao?

17 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 06

Câu 17: Khi gặp lỗi trong chương trình, việc gỡ lỗi (debugging) trong thiết kế mô đun thường như thế nào so với thiết kế nguyên khối?

18 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 06

Câu 18: Một mô đun được thiết kế để tính toán thuế cho các loại sản phẩm khác nhau. Mô đun này có thể được tái sử dụng hiệu quả trong những trường hợp nào?

19 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 06

Câu 19: Thiết kế theo mô đun hỗ trợ khả năng mở rộng (scalability) của chương trình như thế nào?

20 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 06

Câu 20: Việc một mô đun chỉ bộc lộ ra bên ngoài những chức năng cần thiết và giấu đi chi tiết cài đặt bên trong (information hiding) mang lại lợi ích gì?

21 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 06

Câu 21: Khi một đoạn mã trở nên quá dài và phức tạp, việc chia nó thành các hàm hoặc mô đun nhỏ hơn (refactoring) nhằm mục đích chính là gì theo nguyên tắc thiết kế mô đun?

22 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 06

Câu 22: Đối với một chương trình rất đơn giản, chỉ thực hiện một vài thao tác liên tục, việc chia thành quá nhiều mô đun nhỏ có thể dẫn đến nhược điểm gì?

23 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 06

Câu 23: Trong một ứng dụng quản lý điểm học sinh, công việc "Xếp loại học lực (Giỏi, Khá, Trung bình) dựa trên điểm trung bình môn" thuộc nhóm mô đun nào?

24 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 06

Câu 24: Một chương trình cần thực hiện nhiều lần việc kiểm tra xem một chuỗi có phải là địa chỉ email hợp lệ hay không. Chức năng kiểm tra này nên được đặt trong mô đun loại nào để dễ tái sử dụng?

25 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 06

Câu 25: Nếu mô đun A gọi (sử dụng chức năng của) mô đun B, thì sự thay đổi nào trong mô đun B ít có khả năng nhất ảnh hưởng đến mô đun A?

26 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 06

Câu 26: Trong làm việc nhóm, việc các lập trình viên thống nhất và thiết kế kỹ lưỡng giao diện của các mô đun trước khi mỗi người bắt tay vào cài đặt chi tiết bên trong mô đun của mình mang lại lợi ích chính là gì?

27 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 06

Câu 27: Việc thiết kế theo mô đun ban đầu có thể tốn thêm thời gian phân tích và thiết kế. Tuy nhiên, lợi ích nó mang lại thường thể hiện rõ nhất ở giai đoạn nào của vòng đời phát triển phần mềm?

28 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 06

Câu 28: Chương trình tính lương hiện tại chỉ tính lương cơ bản. Yêu cầu mới là tính thêm phụ cấp và thưởng dựa trên các quy tắc phức tạp. Công việc này chủ yếu yêu cầu thay đổi ở mô đun nào?

29 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 06

Câu 29: Chương trình xuất báo cáo đang xuất ra PDF. Yêu cầu bổ sung khả năng xuất ra định dạng CSV. Công việc này chủ yếu yêu cầu thêm/thay đổi ở mô đun nào?

30 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 06

Câu 30: Có quan điểm cho rằng "Mô đun càng nhỏ càng tốt". Quan điểm này có hoàn toàn đúng không? Tại sao?

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


Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun - Đề 07

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun - Đề 07 được xây dựng với nhiều câu hỏi chất lượng, sát với nội dung chương trình học, giúp bạn dễ dàng ôn tập và kiểm tra kiến thức hiệu quả. Hãy cùng bắt đầu làm bài tập trắc nghiệm ngay để nâng cao hiểu biết và chuẩn bị tốt cho kỳ thi sắp tới!

Câu 1: Phương pháp thiết kế chương trình theo mô đun (modular design) là gì?

  • A. Là phương pháp viết toàn bộ chương trình trong một khối mã duy nhất.
  • B. Là phương pháp chỉ sử dụng các hàm dựng sẵn của ngôn ngữ lập trình.
  • C. Là phương pháp thiết kế giao diện người dùng trước khi viết mã.
  • D. Là phương pháp chia chương trình lớn thành các phần nhỏ hơn, độc lập, gọi là mô đun.

Câu 2: Lợi ích chính nào của thiết kế chương trình theo mô đun giúp việc bảo trì và nâng cấp phần mềm trở nên hiệu quả hơn?

  • A. Giảm thiểu đáng kể số dòng mã lệnh trong toàn bộ chương trình.
  • B. Chỉ cho phép một lập trình viên làm việc trên toàn bộ dự án.
  • C. Khi cần chỉnh sửa hoặc thêm chức năng, chỉ cần tập trung vào mô đun liên quan mà ít ảnh hưởng đến các phần khác.
  • D. Loại bỏ hoàn toàn khả năng phát sinh lỗi trong quá trình phát triển.

Câu 3: Trong bài toán quản lý doanh số được giới thiệu trong bài học, mô đun "NhapDL" có nhiệm vụ cụ thể là gì?

  • A. Đọc dữ liệu mặt hàng và doanh số từ tệp tin đầu vào.
  • B. Sắp xếp danh sách mặt hàng theo doanh số.
  • C. In báo cáo kết quả ra tệp tin.
  • D. Tính toán doanh số trung bình của các mặt hàng.

Câu 4: Vẫn trong bài toán quản lý doanh số, mô đun "Sapxep" chịu trách nhiệm thực hiện công việc nào?

  • A. Lưu trữ dữ liệu mặt hàng vào cơ sở dữ liệu.
  • B. Sắp xếp danh sách mặt hàng dựa trên tiêu chí doanh số (ví dụ: tăng dần hoặc giảm dần).
  • C. Kiểm tra tính hợp lệ của dữ liệu đầu vào.
  • D. Gửi email báo cáo tự động hàng ngày.

Câu 5: Giả sử bạn cần thêm một chức năng mới vào chương trình quản lý doanh số: tính toán tổng doanh số của tất cả mặt hàng. Theo nguyên tắc thiết kế mô đun, công việc này nên được thực hiện ở đâu?

  • A. Trong mô đun "NhapDL" để tính toán ngay khi đọc dữ liệu.
  • B. Trong mô đun "GhiDL" để tính toán khi in báo cáo.
  • C. Nên tạo một mô đun xử lý dữ liệu mới hoặc thêm vào mô đun xử lý dữ liệu hiện có (như "Sapxep" nếu nó được mở rộng chức năng xử lý) để thực hiện phép tính này.
  • D. Không cần tạo mô đun mới, chỉ cần thêm mã vào hàm chính.

Câu 6: Khi làm việc nhóm trên một dự án phần mềm lớn, phương pháp thiết kế theo mô đun mang lại lợi ích đáng kể nào?

  • A. Buộc tất cả thành viên phải viết mã theo cùng một phong cách tuyệt đối.
  • B. Giảm số lượng thành viên cần thiết cho dự án.
  • C. Yêu cầu tất cả thành viên phải hiểu sâu sắc toàn bộ mã nguồn từ đầu đến cuối.
  • D. Cho phép các thành viên trong nhóm làm việc độc lập hoặc song song trên các mô đun khác nhau.

Câu 7: Việc chia chương trình thành các mô đun giúp ích như thế nào cho quá trình kiểm thử (testing)?

  • A. Có thể kiểm thử từng mô đun một cách độc lập trước khi tích hợp chúng lại.
  • B. Loại bỏ hoàn toàn nhu cầu kiểm thử sau khi tích hợp.
  • C. Chỉ cần kiểm thử mô đun đầu tiên và mô đun cuối cùng.
  • D. Làm cho việc tìm lỗi khó khăn hơn vì mã bị phân tán.

Câu 8: Trong bài toán quản lý doanh số, nếu yêu cầu thay đổi là chỉ hiển thị 5 mặt hàng có doanh số cao nhất thay vì 10 như ban đầu, công việc này thường thuộc nhóm nào theo phân loại công việc trong thiết kế mô đun?

  • A. Công việc mới hoàn toàn.
  • B. Công việc nâng cấp một mô đun cũ.
  • C. Công việc chỉ liên quan đến cập nhật dữ liệu đầu vào.
  • D. Công việc yêu cầu thiết kế lại toàn bộ chương trình.

Câu 9: Nếu yêu cầu mới cho chương trình quản lý doanh số là tạo một báo cáo hoàn toàn khác, ví dụ: báo cáo thống kê số lượng giao dịch theo từng giờ trong ngày. Công việc này thường thuộc nhóm nào?

  • A. Công việc mới hoàn toàn.
  • B. Công việc nâng cấp một mô đun cũ.
  • C. Công việc chỉ liên quan đến cập nhật dữ liệu đầu vào.
  • D. Công việc yêu cầu gỡ bỏ các mô đun hiện có.

Câu 10: Khả năng tái sử dụng (reusability) mã lệnh là một ưu điểm quan trọng của thiết kế mô đun. Điều này có nghĩa là gì?

  • A. Mỗi mô đun chỉ có thể được sử dụng một lần duy nhất trong chương trình.
  • B. Chỉ có thể tái sử dụng toàn bộ chương trình, không phải từng phần nhỏ.
  • C. Các mô đun đã được phát triển cho một chương trình có thể được sử dụng lại trong các chương trình khác hoặc các phần khác của cùng chương trình.
  • D. Việc tái sử dụng mô đun làm tăng độ phức tạp của chương trình.

Câu 11: Trong thiết kế mô đun, khái niệm "giao diện" (interface) của một mô đun thường dùng để chỉ điều gì?

  • A. Màn hình đồ họa mà người dùng tương tác trực tiếp.
  • B. Tệp mã nguồn chứa toàn bộ logic của mô đun.
  • C. Tài liệu mô tả chi tiết cách cài đặt nội bộ của mô đun.
  • D. Tập hợp các hàm, thủ tục hoặc dữ liệu mà mô đun đó cung cấp cho các mô đun khác sử dụng, và các tham số mà nó nhận vào.

Câu 12: Giả sử mô đun "Sapxep" trong bài toán quản lý doanh số gặp lỗi và trả về kết quả sắp xếp sai. Mô đun nào có khả năng cao nhất sẽ bị ảnh hưởng trực tiếp bởi lỗi này?

  • A. Mô đun "NhapDL" (vì nó đọc dữ liệu ban đầu).
  • B. Một mô đun tính toán doanh số trung bình (nếu có).
  • C. Mô đun "GhiDL" (vì nó sử dụng kết quả đã sắp xếp để tạo báo cáo).
  • D. Chỉ có mô đun "Sapxep" bị ảnh hưởng, không có mô đun nào khác.

Câu 13: Khi một chương trình được chia thành các mô đun có tính độc lập cao, điều này giúp ích gì trong việc cô lập lỗi (error isolation)?

  • A. Làm cho lỗi lan truyền nhanh chóng sang tất cả các mô đun khác.
  • B. Khi một lỗi xảy ra trong một mô đun, nó ít có khả năng ảnh hưởng đến hoạt động của các mô đun khác.
  • C. Tự động sửa lỗi ngay khi chúng xuất hiện.
  • D. Loại bỏ hoàn toàn khả năng xảy ra lỗi.

Câu 14: Giả sử bạn được yêu cầu thêm chức năng lưu báo cáo ra định dạng tệp mới, ví dụ: CSV thay vì TXT như hiện tại. Mô đun nào trong bài toán quản lý doanh số sẽ cần được sửa đổi chủ yếu để đáp ứng yêu cầu này?

  • A. Mô đun "NhapDL".
  • B. Mô đun "Sapxep".
  • C. Mô đun "GhiDL" hoặc một mô đun báo cáo mới.
  • D. Hàm chính của chương trình.

Câu 15: Điều gì thể hiện tính "độc lập" của một mô đun trong thiết kế chương trình?

  • A. Mô đun đó không nhận bất kỳ dữ liệu đầu vào nào.
  • B. Mô đun đó không trả về bất kỳ kết quả nào.
  • C. Mô đun đó được viết bằng ngôn ngữ lập trình khác so với các mô đun còn lại.
  • D. Mô đun đó thực hiện một chức năng cụ thể và có thể được phát triển, kiểm thử, và sử dụng lại với sự phụ thuộc tối thiểu vào các mô đun khác (thông qua giao diện rõ ràng).

Câu 16: Trong ngữ cảnh thiết kế mô đun, "khớp nối" (coupling) giữa các mô đun là gì?

  • A. Mức độ phụ thuộc lẫn nhau giữa các mô đun.
  • B. Số lượng dòng mã trong mỗi mô đun.
  • C. Khả năng một mô đun tự hoạt động mà không cần dữ liệu đầu vào.
  • D. Số lượng chức năng được gom nhóm trong một mô đun.

Câu 17: Tại sao việc giảm thiểu "khớp nối" (coupling) giữa các mô đun lại là mục tiêu quan trọng trong thiết kế mô đun?

  • A. Để làm cho mỗi mô đun trở nên phức tạp hơn.
  • B. Để tăng tính độc lập, dễ bảo trì, dễ kiểm thử và dễ tái sử dụng của các mô đun.
  • C. Để buộc các mô đun phải trao đổi dữ liệu thông qua các biến toàn cục.
  • D. Để giảm số lượng mô đun trong chương trình.

Câu 18: Trong bài toán quản lý doanh số, giả sử bạn cần thêm chức năng thống kê số lượng mặt hàng có doanh số VƯỢT QUA mức trung bình. Công việc này có thể được thực hiện bằng cách nào hiệu quả nhất theo phương pháp mô đun?

  • A. Sửa đổi mô đun "NhapDL" để thực hiện tính toán.
  • B. Sửa đổi mô đun "Sapxep" để thực hiện tính toán và báo cáo.
  • C. Thêm mã tính toán và in báo cáo vào ngay hàm chính.
  • D. Thiết kế một mô đun mới (hoặc mở rộng mô đun xử lý) chuyên để tính toán mức trung bình và thống kê các mặt hàng vượt trung bình, sau đó tích hợp vào luồng chương trình.

Câu 19: Điều gì thể hiện tính "gắn kết" (cohesion) cao của một mô đun?

  • A. Các thành phần bên trong mô đun (hàm, dữ liệu) có mối liên hệ chặt chẽ và cùng phục vụ cho một mục tiêu hoặc chức năng duy nhất.
  • B. Mô đun đó phụ thuộc vào rất nhiều mô đun khác.
  • C. Mô đun đó thực hiện nhiều chức năng không liên quan đến nhau.
  • D. Mô đun đó không có bất kỳ dữ liệu nội bộ nào.

Câu 20: Tại sao việc tăng cường "gắn kết" (cohesion) trong mỗi mô đun lại là mục tiêu quan trọng?

  • A. Để làm cho mô đun phụ thuộc nhiều hơn vào các mô đun khác.
  • B. Để mỗi mô đun đảm nhận càng nhiều chức năng càng tốt.
  • C. Để mô đun dễ hiểu hơn, dễ bảo trì hơn và dễ tái sử dụng hơn vì nó chỉ tập trung vào một nhiệm vụ cụ thể.
  • D. Để giảm số lượng mã lệnh cần viết cho mô đun.

Câu 21: Một chương trình được thiết kế theo mô đun. Một mô đun X gọi một hàm từ mô đun Y. Điều này thể hiện mối quan hệ gì giữa mô đun X và Y?

  • A. Tính gắn kết (cohesion).
  • B. Tính khớp nối (coupling).
  • C. Tính độc lập hoàn toàn.
  • D. Không có mối quan hệ nào.

Câu 22: Bước đầu tiên và quan trọng nhất trong quá trình thiết kế chương trình theo mô đun là gì?

  • A. Phân rã bài toán lớn thành các bài toán con (các chức năng) độc lập hoặc ít phụ thuộc.
  • B. Viết mã cho tất cả các mô đun cùng một lúc.
  • C. Kiểm thử toàn bộ chương trình sau khi hoàn thành.
  • D. Thiết kế giao diện người dùng.

Câu 23: Khi nào thì phương pháp thiết kế chương trình theo mô đun đặc biệt hữu ích?

  • A. Khi viết một chương trình rất đơn giản, chỉ vài chục dòng mã.
  • B. Khi làm việc một mình trên một dự án nhỏ.
  • C. Khi chương trình không có bất kỳ chức năng nào cần lặp lại.
  • D. Khi phát triển các dự án phần mềm lớn, phức tạp, hoặc làm việc theo nhóm.

Câu 24: Trong bài toán quản lý doanh số, giả sử tệp dữ liệu đầu vào Data.inp thay đổi cấu trúc (ví dụ: thêm một cột mới cho ngày bán). Mô đun nào cần được chú ý kiểm tra và sửa đổi đầu tiên?

  • A. Mô đun "NhapDL".
  • B. Mô đun "Sapxep".
  • C. Mô đun "GhiDL".
  • D. Tất cả các mô đun đều cần sửa đổi đồng đều.

Câu 25: Khái niệm "che giấu thông tin" (information hiding) trong thiết kế mô đun có nghĩa là gì?

  • A. Che giấu toàn bộ mã nguồn của mô đun.
  • B. Không cho phép các mô đun khác truy cập vào bất kỳ dữ liệu nào.
  • C. Ẩn đi chi tiết cài đặt nội bộ của mô đun, chỉ công bố giao diện (cách sử dụng) ra bên ngoài.
  • D. Mã lệnh của mô đun được mã hóa.

Câu 26: Việc che giấu thông tin trong các mô đun mang lại lợi ích gì?

  • A. Buộc các mô đun phải phụ thuộc chặt chẽ vào nhau.
  • B. Làm cho việc kiểm thử mô đun khó khăn hơn.
  • C. Giảm khả năng tái sử dụng mô đun.
  • D. Cho phép thay đổi cách cài đặt bên trong một mô đun mà không cần sửa đổi các mô đun khác sử dụng nó (miễn là giao diện không đổi).

Câu 27: Trong bài toán quản lý doanh số, nếu yêu cầu là tạo một báo cáo riêng chỉ liệt kê các mặt hàng có doanh số bằng 0. Công việc này có thể được phân loại vào nhóm nào?

  • A. Công việc mới hoàn toàn (liên quan đến xử lý và báo cáo mới) hoặc nâng cấp một mô đun cũ (nếu mô đun báo cáo hiện tại có thể mở rộng dễ dàng).
  • B. Công việc chỉ liên quan đến cập nhật dữ liệu đầu vào.
  • C. Công việc yêu cầu gỡ bỏ các mô đun hiện có.
  • D. Không liên quan đến lập trình.

Câu 28: Mô đun nào trong bài toán quản lý doanh số có nhiệm vụ chính là định dạng và xuất kết quả xử lý ra tệp tin báo cáo?

  • A. Mô đun "NhapDL".
  • B. Mô đun "Sapxep".
  • C. Mô đun "GhiDL" hoặc mô đun báo cáo.
  • D. Mô đun xử lý lỗi.

Câu 29: Lợi ích nào sau đây không phải là lợi ích trực tiếp của việc thiết kế chương trình theo mô đun?

  • A. Tự động tăng tốc độ thực thi của chương trình lên gấp đôi.
  • B. Giúp quản lý độ phức tạp của chương trình lớn.
  • C. Tăng khả năng tái sử dụng mã nguồn.
  • D. Hỗ trợ làm việc nhóm và phân công công việc hiệu quả hơn.

Câu 30: Tưởng tượng bạn đang thiết kế một chương trình đơn giản để tính toán các phép tính cơ bản (cộng, trừ, nhân, chia). Bạn quyết định tạo các mô đun riêng cho từng phép tính. Việc này thể hiện rõ nhất nguyên tắc nào của thiết kế mô đun?

  • A. Tái sử dụng mã nguồn.
  • B. Phân rã bài toán thành các chức năng nhỏ, mỗi mô đun có tính gắn kết cao.
  • C. Giảm thiểu khớp nối giữa các mô đun (dù có thể đúng, nhưng không phải điều thể hiện rõ nhất).
  • D. Che giấu thông tin.

1 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 07

Câu 1: Phương pháp thiết kế chương trình theo mô đun (modular design) là gì?

2 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 07

Câu 2: Lợi ích chính nào của thiết kế chương trình theo mô đun giúp việc bảo trì và nâng cấp phần mềm trở nên hiệu quả hơn?

3 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 07

Câu 3: Trong bài toán quản lý doanh số được giới thiệu trong bài học, mô đun 'NhapDL' có nhiệm vụ cụ thể là gì?

4 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 07

Câu 4: Vẫn trong bài toán quản lý doanh số, mô đun 'Sapxep' chịu trách nhiệm thực hiện công việc nào?

5 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 07

Câu 5: Giả sử bạn cần thêm một chức năng mới vào chương trình quản lý doanh số: tính toán tổng doanh số của tất cả mặt hàng. Theo nguyên tắc thiết kế mô đun, công việc này nên được thực hiện ở đâu?

6 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 07

Câu 6: Khi làm việc nhóm trên một dự án phần mềm lớn, phương pháp thiết kế theo mô đun mang lại lợi ích đáng kể nào?

7 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 07

Câu 7: Việc chia chương trình thành các mô đun giúp ích như thế nào cho quá trình kiểm thử (testing)?

8 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 07

Câu 8: Trong bài toán quản lý doanh số, nếu yêu cầu thay đổi là chỉ hiển thị 5 mặt hàng có doanh số cao nhất thay vì 10 như ban đầu, công việc này thường thuộc nhóm nào theo phân loại công việc trong thiết kế mô đun?

9 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 07

Câu 9: Nếu yêu cầu mới cho chương trình quản lý doanh số là tạo một báo cáo hoàn toàn khác, ví dụ: báo cáo thống kê số lượng giao dịch theo từng giờ trong ngày. Công việc này thường thuộc nhóm nào?

10 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 07

Câu 10: Khả năng tái sử dụng (reusability) mã lệnh là một ưu điểm quan trọng của thiết kế mô đun. Điều này có nghĩa là gì?

11 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 07

Câu 11: Trong thiết kế mô đun, khái niệm 'giao diện' (interface) của một mô đun thường dùng để chỉ điều gì?

12 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 07

Câu 12: Giả sử mô đun 'Sapxep' trong bài toán quản lý doanh số gặp lỗi và trả về kết quả sắp xếp sai. Mô đun nào *có khả năng cao nhất* sẽ bị ảnh hưởng trực tiếp bởi lỗi này?

13 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 07

Câu 13: Khi một chương trình được chia thành các mô đun có tính độc lập cao, điều này giúp ích gì trong việc cô lập lỗi (error isolation)?

14 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 07

Câu 14: Giả sử bạn được yêu cầu thêm chức năng lưu báo cáo ra định dạng tệp mới, ví dụ: CSV thay vì TXT như hiện tại. Mô đun nào trong bài toán quản lý doanh số sẽ cần được sửa đổi chủ yếu để đáp ứng yêu cầu này?

15 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 07

Câu 15: Điều gì thể hiện tính 'độc lập' của một mô đun trong thiết kế chương trình?

16 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 07

Câu 16: Trong ngữ cảnh thiết kế mô đun, 'khớp nối' (coupling) giữa các mô đun là gì?

17 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 07

Câu 17: Tại sao việc giảm thiểu 'khớp nối' (coupling) giữa các mô đun lại là mục tiêu quan trọng trong thiết kế mô đun?

18 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 07

Câu 18: Trong bài toán quản lý doanh số, giả sử bạn cần thêm chức năng thống kê số lượng mặt hàng có doanh số VƯỢT QUA mức trung bình. Công việc này có thể được thực hiện bằng cách nào hiệu quả nhất theo phương pháp mô đun?

19 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 07

Câu 19: Điều gì thể hiện tính 'gắn kết' (cohesion) cao của một mô đun?

20 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 07

Câu 20: Tại sao việc tăng cường 'gắn kết' (cohesion) trong mỗi mô đun lại là mục tiêu quan trọng?

21 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 07

Câu 21: Một chương trình được thiết kế theo mô đun. Một mô đun X gọi một hàm từ mô đun Y. Điều này thể hiện mối quan hệ gì giữa mô đun X và Y?

22 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 07

Câu 22: Bước đầu tiên và quan trọng nhất trong quá trình thiết kế chương trình theo mô đun là gì?

23 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 07

Câu 23: Khi nào thì phương pháp thiết kế chương trình theo mô đun đặc biệt hữu ích?

24 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 07

Câu 24: Trong bài toán quản lý doanh số, giả sử tệp dữ liệu đầu vào Data.inp thay đổi cấu trúc (ví dụ: thêm một cột mới cho ngày bán). Mô đun nào cần được chú ý kiểm tra và sửa đổi đầu tiên?

25 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 07

Câu 25: Khái niệm 'che giấu thông tin' (information hiding) trong thiết kế mô đun có nghĩa là gì?

26 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 07

Câu 26: Việc che giấu thông tin trong các mô đun mang lại lợi ích gì?

27 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 07

Câu 27: Trong bài toán quản lý doanh số, nếu yêu cầu là tạo một báo cáo riêng chỉ liệt kê các mặt hàng có doanh số bằng 0. Công việc này có thể được phân loại vào nhóm nào?

28 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 07

Câu 28: Mô đun nào trong bài toán quản lý doanh số có nhiệm vụ chính là định dạng và xuất kết quả xử lý ra tệp tin báo cáo?

29 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 07

Câu 29: Lợi ích nào sau đây *không phải* là lợi ích trực tiếp của việc thiết kế chương trình theo mô đun?

30 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 07

Câu 30: Tưởng tượng bạn đang thiết kế một chương trình đơn giản để tính toán các phép tính cơ bản (cộng, trừ, nhân, chia). Bạn quyết định tạo các mô đun riêng cho từng phép tính. Việc này thể hiện rõ nhất nguyên tắc nào của thiết kế mô đun?

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


Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun - Đề 08

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun - Đề 08 được xây dựng với nhiều câu hỏi chất lượng, sát với nội dung chương trình học, giúp bạn dễ dàng ôn tập và kiểm tra kiến thức hiệu quả. Hãy cùng bắt đầu làm bài tập trắc nghiệm ngay để nâng cao hiểu biết và chuẩn bị tốt cho kỳ thi sắp tới!

Câu 1: Trong phát triển phần mềm, phương pháp thiết kế chương trình theo mô đun (modular design) chủ yếu nhằm giải quyết vấn đề nào sau đây đối với các dự án lớn và phức tạp?

  • A. Giảm thiểu độ phức tạp tổng thể, giúp quản lý và bảo trì dễ dàng hơn.
  • B. Buộc tất cả các lập trình viên phải sử dụng cùng một ngôn ngữ lập trình.
  • C. Đảm bảo chương trình chỉ chạy được trên một hệ điều hành duy nhất.
  • D. Loại bỏ hoàn toàn khả năng xuất hiện lỗi trong quá trình lập trình.

Câu 2: Một nhóm lập trình viên đang cùng phát triển một ứng dụng quản lý bán hàng lớn. Áp dụng thiết kế chương trình theo mô đun mang lại lợi ích rõ rệt nào cho quá trình làm việc nhóm của họ?

  • A. Giúp họ viết ít dòng mã lệnh hơn so với thiết kế không mô đun.
  • B. Cho phép mỗi người tự do chọn cấu trúc dữ liệu riêng mà không cần thống nhất.
  • C. Phân chia công việc rõ ràng, mỗi người có thể làm việc độc lập trên một hoặc nhiều mô đun.
  • D. Tự động đồng bộ hóa mã nguồn mà không cần sử dụng hệ thống quản lý phiên bản.

Câu 3: Trong một chương trình xử lý dữ liệu từ cảm biến, có một phần mã lệnh chuyên biệt để nhận dữ liệu thô và chuyển đổi nó sang định dạng có thể sử dụng được. Phần mã lệnh này rất phù hợp để xây dựng thành một mô đun riêng vì lý do nào sau đây?

  • A. Nó sử dụng các biến toàn cục (global variables).
  • B. Nó thực hiện một chức năng cụ thể, độc lập với các phần khác của chương trình.
  • C. Nó cần truy cập trực tiếp vào phần cứng cảm biến.
  • D. Nó là phần duy nhất có thể chứa lỗi.

Câu 4: Một chương trình quản lý thư viện được thiết kế với các mô đun như: Quản lý sách, Quản lý độc giả, Xử lý mượn/trả. Nếu cần bổ sung tính năng "Tìm kiếm sách theo thể loại", nguyên tắc thiết kế mô đun gợi ý cách tiếp cận nào?

  • A. Viết toàn bộ mã tìm kiếm vào mô đun Quản lý độc giả.
  • B. Xóa bỏ mô đun Quản lý sách và viết lại toàn bộ chức năng sách.
  • C. Thêm mã tìm kiếm vào tất cả các mô đun hiện có.
  • D. Thêm chức năng tìm kiếm vào mô đun Quản lý sách hoặc tạo một mô đun tìm kiếm mới nếu chức năng này phức tạp và dùng chung.

Câu 5: Khi các mô đun tương tác với nhau, chúng thường làm điều đó thông qua "giao diện" (interface). Giao diện của một mô đun chủ yếu định nghĩa điều gì?

  • A. Các hàm (functions) hoặc thủ tục (procedures) mà mô đun đó cung cấp cho các mô đun khác sử dụng và cách sử dụng chúng (đầu vào, đầu ra).
  • B. Toàn bộ mã nguồn chi tiết bên trong mô đun.
  • C. Lịch sử chỉnh sửa của mô đun.
  • D. Tên của lập trình viên đã tạo ra mô đun đó.

Câu 6: Một lỗi (bug) được phát hiện trong phần tính toán thuế của một chương trình kế toán lớn được thiết kế theo mô đun. Lợi ích chính của thiết kế mô đun trong trường hợp này là gì?

  • A. Lỗi sẽ tự động được sửa khi chương trình chạy lần tiếp theo.
  • B. Có thể khoanh vùng và sửa lỗi trong mô đun tính toán thuế mà ít ảnh hưởng đến các mô đun khác.
  • C. Phải kiểm tra lại toàn bộ chương trình từ đầu.
  • D. Lỗi chỉ xuất hiện trên một loại máy tính cụ thể.

Câu 7: So với việc viết toàn bộ chương trình dưới dạng một khối mã lệnh duy nhất (monolithic), thiết kế theo mô đun mang lại lợi ích nào rõ rệt nhất khi cần bảo trì hoặc nâng cấp chương trình sau này?

  • A. Làm cho chương trình chạy nhanh hơn đáng kể.
  • B. Giảm dung lượng bộ nhớ mà chương trình sử dụng.
  • C. Bắt buộc phải viết lại toàn bộ chương trình mỗi khi có thay đổi nhỏ.
  • D. Cho phép thay đổi hoặc cập nhật một phần chức năng (một mô đun) mà không cần hiểu chi tiết toàn bộ chương trình.

Câu 8: Quá trình chia nhỏ một bài toán lớn thành các bài toán nhỏ hơn, độc lập với nhau để dễ giải quyết hơn trong thiết kế chương trình theo mô đun được gọi là gì?

  • A. Phân rã (Decomposition).
  • B. Tổng hợp (Synthesis).
  • C. Trừu tượng hóa (Abstraction).
  • D. Đóng gói (Encapsulation).

Câu 9: Trong một chương trình xử lý dữ liệu bán hàng, giả sử có các mô đun `NhapDL` (nhập dữ liệu), `XuLyDL` (xử lý/sắp xếp dữ liệu), và `GhiBaoCao` (ghi báo cáo ra tệp). Mô đun `XuLyDL` cần nhận dữ liệu từ mô đun nào để thực hiện công việc của mình?

  • A. NhapDL.
  • B. GhiBaoCao.
  • C. Chính nó, không cần từ mô đun khác.
  • D. Tất cả các mô đun khác.

Câu 10: Mô đun `GhiBaoCao` (ghi báo cáo ra tệp) trong ví dụ trên (Câu 9) có nhiệm vụ đưa dữ liệu đã xử lý ra ngoài. Dữ liệu này sẽ được mô đun `GhiBaoCao` nhận từ mô đun nào?

  • A. NhapDL.
  • B. XuLyDL.
  • C. Một nguồn dữ liệu bên ngoài trực tiếp.
  • D. Tất cả các mô đun khác.

Câu 11: Ưu điểm nào của thiết kế mô đun giúp việc kiểm thử (testing) chương trình trở nên hiệu quả hơn?

  • A. Tự động tạo ra các trường hợp kiểm thử.
  • B. Loại bỏ hoàn toàn nhu cầu kiểm thử.
  • C. Có thể kiểm thử từng mô đun nhỏ một cách độc lập trước khi tích hợp chúng lại.
  • D. Chỉ cần kiểm thử mô đun đầu tiên.

Câu 12: Một công ty phần mềm phát triển một thư viện chuẩn chứa các hàm toán học phức tạp. Việc đóng gói các hàm này thành một hoặc nhiều mô đun riêng biệt cho phép các dự án khác nhau của công ty dễ dàng sử dụng lại chúng. Điều này thể hiện rõ lợi ích nào của thiết kế mô đun?

  • A. Giảm chi phí phần cứng.
  • B. Tăng tốc độ biên dịch chương trình.
  • C. Hạn chế số lượng người dùng cuối.
  • D. Tăng khả năng tái sử dụng mã nguồn (code reusability).

Câu 13: Khi thiết kế một mô đun, điều quan trọng là nó chỉ nên thực hiện một chức năng cụ thể hoặc một tập hợp các chức năng có liên quan chặt chẽ. Nguyên tắc này giúp mô đun có đặc điểm nào sau đây?

  • A. Tính gắn kết (cohesion) cao và tính kết nối (coupling) thấp với các mô đun khác.
  • B. Kích thước mã nguồn lớn nhất có thể.
  • C. Phụ thuộc chặt chẽ vào nhiều mô đun khác.
  • D. Có thể thực hiện bất kỳ chức năng nào trong chương trình.

Câu 14: Giả sử chương trình xử lý dữ liệu bán hàng (Câu 9 & 10) cần được nâng cấp để hỗ trợ định dạng báo cáo mới (ví dụ: xuất ra file PDF thay vì file văn bản). Theo nguyên tắc thiết kế mô đun, phần nào của chương trình sẽ cần thay đổi nhiều nhất?

  • A. Mô đun NhapDL.
  • B. Mô đun XuLyDL.
  • C. Mô đun GhiBaoCao.
  • D. Toàn bộ các mô đun cùng lúc.

Câu 15: Một chương trình được xây dựng theo phương pháp monolithic (một khối). Khi phát hiện một lỗi nhỏ trong logic xử lý dữ liệu, việc sửa lỗi có thể khó khăn hơn so với thiết kế mô đun vì lý do nào?

  • A. Mã nguồn quá ngắn nên khó tìm.
  • B. Logic xử lý dữ liệu có thể xen kẽ với nhiều phần khác của chương trình, khó khoanh vùng.
  • C. Không có đủ biến để theo dõi trạng thái.
  • D. Chương trình tự động sửa lỗi.

Câu 16: Khi thiết kế mô đun, việc giảm thiểu sự phụ thuộc giữa các mô đun (tính kết nối thấp) mang lại lợi ích gì?

  • A. Làm cho chương trình chạy chậm hơn.
  • B. Tăng kích thước file chương trình.
  • C. Buộc các mô đun phải chia sẻ nhiều dữ liệu chung.
  • D. Giúp thay đổi một mô đun mà ít gây ảnh hưởng (phá vỡ) các mô đun khác.

Câu 17: Trong quá trình phân rã bài toán lớn thành các mô đun nhỏ hơn, người thiết kế cần xem xét điều gì để đảm bảo các mô đun được định nghĩa hợp lý?

  • A. Mỗi mô đun nên có một mục đích/chức năng duy nhất và rõ ràng.
  • B. Mỗi mô đun nên có kích thước mã nguồn bằng nhau.
  • C. Mỗi mô đun nên được viết bởi một lập trình viên khác nhau.
  • D. Mỗi mô đun nên sử dụng một kiểu dữ liệu khác nhau.

Câu 18: Một chương trình xử lý văn bản có các chức năng: Mở tệp, Lưu tệp, Định dạng văn bản, Kiểm tra chính tả, In ấn. Theo phương pháp thiết kế mô đun, chức năng "Kiểm tra chính tả" nên được xử lý như thế nào?

  • A. Viết lẫn vào mã nguồn của chức năng Mở tệp.
  • B. Bỏ qua không cần thiết kế.
  • C. Thiết kế thành một mô đun riêng biệt hoặc là một phần của mô đun xử lý văn bản nếu liên quan chặt chẽ.
  • D. Sao chép mã kiểm tra chính tả vào tất cả các chức năng khác.

Câu 19: Khi một chương trình được chia thành các mô đun, việc hiểu cách hoạt động của toàn bộ chương trình trở nên dễ dàng hơn vì lý do nào?

  • A. Có thể tập trung hiểu chức năng của từng mô đun nhỏ và cách chúng tương tác qua giao diện.
  • B. Không cần đọc mã nguồn của bất kỳ mô đun nào.
  • C. Mã nguồn của mỗi mô đun luôn ngắn hơn 10 dòng.
  • D. Tất cả các mô đun đều có tên giống nhau.

Câu 20: Giả sử cần tối ưu hóa hiệu suất của chức năng sắp xếp dữ liệu trong một chương trình đã được thiết kế theo mô đun, với mô đun `Sapxep` riêng biệt. Cách tiếp cận nào sau đây thể hiện lợi ích của thiết kế mô đun?

  • A. Tìm và tối ưu hóa mã nguồn ở tất cả các mô đun khác.
  • B. Chỉ cần tập trung vào việc cải tiến hoặc thay thế mô đun `Sapxep` bằng một thuật toán hiệu quả hơn.
  • C. Xóa bỏ chức năng sắp xếp khỏi chương trình.
  • D. Thêm các dòng mã "sleep" vào mô đun `Sapxep`.

Câu 21: Việc sử dụng mô đun giúp giảm thiểu rủi ro lỗi lan truyền (error propagation). Điều này có nghĩa là gì?

  • A. Lỗi chỉ xảy ra ở một mô đun duy nhất và không bao giờ ảnh hưởng đến mô đun khác.
  • B. Khi một lỗi xảy ra, toàn bộ chương trình sẽ dừng lại ngay lập tức.
  • C. Lỗi từ môi trường bên ngoài không thể xâm nhập vào chương trình.
  • D. Một lỗi trong một mô đun ít có khả năng gây ra lỗi hoặc hành vi không mong muốn ở các mô đun khác do tính độc lập tương đối của chúng.

Câu 22: Trong một dự án lớn, việc chia nhỏ chương trình thành các mô đun nhỏ hơn, dễ quản lý hơn, cho phép ước tính thời gian và nguồn lực cần thiết cho từng phần công việc một cách chính xác hơn. Đây là lợi ích liên quan đến khía cạnh nào của quản lý dự án?

  • A. Lập kế hoạch và theo dõi tiến độ.
  • B. Tuyển dụng nhân sự.
  • C. Tiếp thị sản phẩm.
  • D. Đàm phán hợp đồng với khách hàng.

Câu 23: Khi thiết kế một chương trình theo mô đun, sau khi đã phân rã bài toán, bước tiếp theo thường là gì?

  • A. Viết toàn bộ mã nguồn cho tất cả các mô đun cùng lúc.
  • B. Kiểm thử toàn bộ chương trình.
  • C. Thiết kế chi tiết từng mô đun, bao gồm giao diện và logic bên trong.
  • D. Phát hành sản phẩm cho người dùng cuối.

Câu 24: Một chương trình xử lý ảnh cần có các chức năng: Đọc ảnh từ file, Áp dụng bộ lọc màu, Thay đổi kích thước, Lưu ảnh ra file. Chức năng "Áp dụng bộ lọc màu" có thể được thiết kế thành một mô đun riêng. Nếu sau này cần thêm một bộ lọc màu mới, lợi ích của việc này là gì?

  • A. Phải viết lại toàn bộ chương trình xử lý ảnh.
  • B. Chỉ cần thêm logic cho bộ lọc màu mới vào mô đun "Áp dụng bộ lọc màu" hoặc tạo một mô đun bộ lọc mới, không ảnh hưởng đến các chức năng đọc/lưu/thay đổi kích thước.
  • C. Chương trình sẽ tự động nhận biết bộ lọc mới mà không cần thêm mã.
  • D. Kích thước file ảnh sẽ giảm đi đáng kể.

Câu 25: Điều nào sau đây KHÔNG phải là một lợi ích điển hình của việc thiết kế chương trình theo mô đun?

  • A. Luôn làm cho chương trình chạy nhanh hơn bất kể kích thước hay chức năng.
  • B. Tăng khả năng tái sử dụng mã nguồn.
  • C. Giúp việc bảo trì và sửa lỗi dễ dàng hơn.
  • D. Hỗ trợ làm việc nhóm hiệu quả hơn.

Câu 26: Trong bối cảnh thiết kế mô đun, "tính đóng gói" (encapsulation) đề cập đến việc gì?

  • A. Gói toàn bộ chương trình vào một file nén.
  • B. Chia sẻ tất cả dữ liệu giữa các mô đun.
  • C. Ẩn đi chi tiết cài đặt bên trong của một mô đun và chỉ cho phép truy cập thông qua giao diện công khai (public interface).
  • D. Sử dụng các biến toàn cục cho tất cả dữ liệu.

Câu 27: Việc tái sử dụng một mô đun đã được kiểm thử kỹ lưỡng trong nhiều dự án khác nhau mang lại lợi ích gì?

  • A. Giảm thời gian và công sức phát triển, đồng thời tăng độ tin cậy của chương trình mới.
  • B. Bắt buộc phải viết lại mô đun đó cho phù hợp với dự án mới.
  • C. Làm tăng số lượng lỗi trong chương trình mới.
  • D. Chỉ có thể sử dụng mô đun đó một lần duy nhất.

Câu 28: Khi một chương trình được thiết kế theo mô đun, việc thêm một chức năng mới thường liên quan đến việc gì?

  • A. Viết lại toàn bộ chương trình từ đầu.
  • B. Thêm mô đun mới hoặc chỉnh sửa, mở rộng mô đun hiện có một cách cục bộ.
  • C. Xóa bỏ các mô đun cũ.
  • D. Thay đổi ngôn ngữ lập trình.

Câu 29: Giả sử bạn cần viết một chương trình mô phỏng thời tiết. Các chức năng chính bao gồm: Đọc dữ liệu lịch sử, Tính toán dự báo, Hiển thị kết quả trên bản đồ. Theo phương pháp mô đun, bạn nên tiếp cận việc chia nhỏ bài toán này như thế nào?

  • A. Viết tất cả logic vào một hàm duy nhất.
  • B. Tạo một mô đun cho mỗi dòng mã lệnh.
  • C. Chỉ tạo một mô đun để hiển thị kết quả.
  • D. Tạo các mô đun riêng biệt cho từng chức năng chính: Đọc dữ liệu, Tính toán dự báo, Hiển thị kết quả.

Câu 30: Điều gì xảy ra khi các mô đun trong một chương trình có tính kết nối (coupling) quá cao?

  • A. Các mô đun trở nên hoàn toàn độc lập.
  • B. Khả năng tái sử dụng mô đun tăng lên.
  • C. Thay đổi ở một mô đun có nhiều khả năng gây ra lỗi hoặc yêu cầu thay đổi ở các mô đun khác mà nó phụ thuộc vào.
  • D. Hiệu suất thực thi của chương trình được cải thiện đáng kể.

1 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 08

Câu 1: Trong phát triển phần mềm, phương pháp thiết kế chương trình theo mô đun (modular design) chủ yếu nhằm giải quyết vấn đề nào sau đây đối với các dự án lớn và phức tạp?

2 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 08

Câu 2: Một nhóm lập trình viên đang cùng phát triển một ứng dụng quản lý bán hàng lớn. Áp dụng thiết kế chương trình theo mô đun mang lại lợi ích rõ rệt nào cho quá trình làm việc nhóm của họ?

3 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 08

Câu 3: Trong một chương trình xử lý dữ liệu từ cảm biến, có một phần mã lệnh chuyên biệt để nhận dữ liệu thô và chuyển đổi nó sang định dạng có thể sử dụng được. Phần mã lệnh này rất phù hợp để xây dựng thành một mô đun riêng vì lý do nào sau đây?

4 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 08

Câu 4: Một chương trình quản lý thư viện được thiết kế với các mô đun như: Quản lý sách, Quản lý độc giả, Xử lý mượn/trả. Nếu cần bổ sung tính năng 'Tìm kiếm sách theo thể loại', nguyên tắc thiết kế mô đun gợi ý cách tiếp cận nào?

5 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 08

Câu 5: Khi các mô đun tương tác với nhau, chúng thường làm điều đó thông qua 'giao diện' (interface). Giao diện của một mô đun chủ yếu định nghĩa điều gì?

6 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 08

Câu 6: Một lỗi (bug) được phát hiện trong phần tính toán thuế của một chương trình kế toán lớn được thiết kế theo mô đun. Lợi ích chính của thiết kế mô đun trong trường hợp này là gì?

7 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 08

Câu 7: So với việc viết toàn bộ chương trình dưới dạng một khối mã lệnh duy nhất (monolithic), thiết kế theo mô đun mang lại lợi ích nào rõ rệt nhất khi cần bảo trì hoặc nâng cấp chương trình sau này?

8 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 08

Câu 8: Quá trình chia nhỏ một bài toán lớn thành các bài toán nhỏ hơn, độc lập với nhau để dễ giải quyết hơn trong thiết kế chương trình theo mô đun được gọi là gì?

9 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 08

Câu 9: Trong một chương trình xử lý dữ liệu bán hàng, giả sử có các mô đun `NhapDL` (nhập dữ liệu), `XuLyDL` (xử lý/sắp xếp dữ liệu), và `GhiBaoCao` (ghi báo cáo ra tệp). Mô đun `XuLyDL` cần nhận dữ liệu từ mô đun nào để thực hiện công việc của mình?

10 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 08

Câu 10: Mô đun `GhiBaoCao` (ghi báo cáo ra tệp) trong ví dụ trên (Câu 9) có nhiệm vụ đưa dữ liệu đã xử lý ra ngoài. Dữ liệu này sẽ được mô đun `GhiBaoCao` nhận từ mô đun nào?

11 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 08

Câu 11: Ưu điểm nào của thiết kế mô đun giúp việc kiểm thử (testing) chương trình trở nên hiệu quả hơn?

12 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 08

Câu 12: Một công ty phần mềm phát triển một thư viện chuẩn chứa các hàm toán học phức tạp. Việc đóng gói các hàm này thành một hoặc nhiều mô đun riêng biệt cho phép các dự án khác nhau của công ty dễ dàng sử dụng lại chúng. Điều này thể hiện rõ lợi ích nào của thiết kế mô đun?

13 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 08

Câu 13: Khi thiết kế một mô đun, điều quan trọng là nó chỉ nên thực hiện một chức năng cụ thể hoặc một tập hợp các chức năng có liên quan chặt chẽ. Nguyên tắc này giúp mô đun có đặc điểm nào sau đây?

14 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 08

Câu 14: Giả sử chương trình xử lý dữ liệu bán hàng (Câu 9 & 10) cần được nâng cấp để hỗ trợ định dạng báo cáo mới (ví dụ: xuất ra file PDF thay vì file văn bản). Theo nguyên tắc thiết kế mô đun, phần nào của chương trình sẽ cần thay đổi nhiều nhất?

15 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 08

Câu 15: Một chương trình được xây dựng theo phương pháp monolithic (một khối). Khi phát hiện một lỗi nhỏ trong logic xử lý dữ liệu, việc sửa lỗi có thể khó khăn hơn so với thiết kế mô đun vì lý do nào?

16 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 08

Câu 16: Khi thiết kế mô đun, việc giảm thiểu sự phụ thuộc giữa các mô đun (tính kết nối thấp) mang lại lợi ích gì?

17 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 08

Câu 17: Trong quá trình phân rã bài toán lớn thành các mô đun nhỏ hơn, người thiết kế cần xem xét điều gì để đảm bảo các mô đun được định nghĩa hợp lý?

18 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 08

Câu 18: Một chương trình xử lý văn bản có các chức năng: Mở tệp, Lưu tệp, Định dạng văn bản, Kiểm tra chính tả, In ấn. Theo phương pháp thiết kế mô đun, chức năng 'Kiểm tra chính tả' nên được xử lý như thế nào?

19 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 08

Câu 19: Khi một chương trình được chia thành các mô đun, việc hiểu cách hoạt động của toàn bộ chương trình trở nên dễ dàng hơn vì lý do nào?

20 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 08

Câu 20: Giả sử cần tối ưu hóa hiệu suất của chức năng sắp xếp dữ liệu trong một chương trình đã được thiết kế theo mô đun, với mô đun `Sapxep` riêng biệt. Cách tiếp cận nào sau đây thể hiện lợi ích của thiết kế mô đun?

21 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 08

Câu 21: Việc sử dụng mô đun giúp giảm thiểu rủi ro lỗi lan truyền (error propagation). Điều này có nghĩa là gì?

22 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 08

Câu 22: Trong một dự án lớn, việc chia nhỏ chương trình thành các mô đun nhỏ hơn, dễ quản lý hơn, cho phép ước tính thời gian và nguồn lực cần thiết cho từng phần công việc một cách chính xác hơn. Đây là lợi ích liên quan đến khía cạnh nào của quản lý dự án?

23 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 08

Câu 23: Khi thiết kế một chương trình theo mô đun, sau khi đã phân rã bài toán, bước tiếp theo thường là gì?

24 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 08

Câu 24: Một chương trình xử lý ảnh cần có các chức năng: Đọc ảnh từ file, Áp dụng bộ lọc màu, Thay đổi kích thước, Lưu ảnh ra file. Chức năng 'Áp dụng bộ lọc màu' có thể được thiết kế thành một mô đun riêng. Nếu sau này cần thêm một bộ lọc màu mới, lợi ích của việc này là gì?

25 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 08

Câu 25: Điều nào sau đây KHÔNG phải là một lợi ích điển hình của việc thiết kế chương trình theo mô đun?

26 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 08

Câu 26: Trong bối cảnh thiết kế mô đun, 'tính đóng gói' (encapsulation) đề cập đến việc gì?

27 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 08

Câu 27: Việc tái sử dụng một mô đun đã được kiểm thử kỹ lưỡng trong nhiều dự án khác nhau mang lại lợi ích gì?

28 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 08

Câu 28: Khi một chương trình được thiết kế theo mô đun, việc thêm một chức năng mới thường liên quan đến việc gì?

29 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 08

Câu 29: Giả sử bạn cần viết một chương trình mô phỏng thời tiết. Các chức năng chính bao gồm: Đọc dữ liệu lịch sử, Tính toán dự báo, Hiển thị kết quả trên bản đồ. Theo phương pháp mô đun, bạn nên tiếp cận việc chia nhỏ bài toán này như thế nào?

30 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 08

Câu 30: Điều gì xảy ra khi các mô đun trong một chương trình có tính kết nối (coupling) quá cao?

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


Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun - Đề 09

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun - Đề 09 được xây dựng với nhiều câu hỏi chất lượng, sát với nội dung chương trình học, giúp bạn dễ dàng ôn tập và kiểm tra kiến thức hiệu quả. Hãy cùng bắt đầu làm bài tập trắc nghiệm ngay để nâng cao hiểu biết và chuẩn bị tốt cho kỳ thi sắp tới!

Câu 1: Phương pháp thiết kế chương trình theo mô đun là gì?

  • A. Viết toàn bộ mã chương trình trong một tệp duy nhất.
  • B. Sử dụng các ngôn ngữ lập trình khác nhau cho cùng một dự án.
  • C. Tạo ra các bản sao của chương trình để thử nghiệm.
  • D. Chia chương trình lớn thành các phần nhỏ hơn, độc lập, mỗi phần thực hiện một chức năng cụ thể.

Câu 2: Đâu là ưu điểm chính của việc thiết kế chương trình theo mô đun giúp giảm thời gian sửa lỗi khi có vấn đề xảy ra?

  • A. Dễ dàng xác định và cô lập phần mã gây lỗi.
  • B. Mã nguồn trở nên dài hơn và phức tạp hơn.
  • C. Yêu cầu ít kiểm thử hơn so với chương trình không chia mô đun.
  • D. Các mô đun tự động sửa lỗi cho nhau.

Câu 3: Một chương trình quản lý điểm học sinh được chia thành các mô đun: Nhập điểm, Tính điểm trung bình, Xếp loại học lực, và In báo cáo. Nếu cần thay đổi cách làm tròn điểm trung bình, bạn sẽ cần chỉnh sửa mô đun nào?

  • A. Mô đun Nhập điểm.
  • B. Mô đun Tính điểm trung bình.
  • C. Mô đun Xếp loại học lực.
  • D. Mô đun In báo cáo.

Câu 4: Trong ngữ cảnh thiết kế mô đun, khái niệm "tính độc lập" của mô đun có ý nghĩa gì quan trọng nhất?

  • A. Mô đun không cần bất kỳ dữ liệu đầu vào nào.
  • B. Mô đun có thể chạy trên bất kỳ hệ điều hành nào.
  • C. Thay đổi bên trong một mô đun ít ảnh hưởng đến các mô đun khác.
  • D. Mô đun được viết bằng ngôn ngữ lập trình khác.

Câu 5: Giả sử bạn đang phát triển một trò chơi đơn giản. Công việc nào sau đây ít phù hợp nhất để trở thành một mô đun riêng biệt?

  • A. Thay đổi màu nền của một nút bấm cụ thể trên giao diện.
  • B. Xử lý logic di chuyển của nhân vật chính.
  • C. Quản lý điểm số và hiển thị bảng xếp hạng.
  • D. Tải và xử lý dữ liệu cấu hình từ tệp.

Câu 6: Một dự án phần mềm lớn được chia thành nhiều mô đun và giao cho các thành viên khác nhau trong nhóm cùng phát triển. Ưu điểm nào sau đây của thiết kế mô đun được thể hiện rõ nhất trong tình huống này?

  • A. Giảm thiểu dung lượng bộ nhớ cần thiết.
  • B. Tăng khả năng làm việc nhóm hiệu quả và song song.
  • C. Chỉ cần một lập trình viên duy nhất để hoàn thành dự án.
  • D. Loại bỏ hoàn toàn lỗi cú pháp trong mã nguồn.

Câu 7: Khi thiết kế mô đun cho một ứng dụng xử lý ảnh, công việc nào sau đây nên được xem xét tạo thành một mô đun riêng?

  • A. Hiển thị tên của ứng dụng trên thanh tiêu đề.
  • B. Thay đổi kích thước cửa sổ ứng dụng.
  • C. Kiểm tra kết nối mạng (nếu không liên quan đến xử lý ảnh).
  • D. Áp dụng bộ lọc màu (ví dụ: làm đen trắng, sepia) cho ảnh.

Câu 8: Công việc "sao lưu cơ sở dữ liệu người dùng hàng đêm" trong một hệ thống quản lý khách hàng có thể được phân loại vào nhóm công việc nào khi áp dụng thiết kế chương trình theo mô đun?

  • A. Công việc mới hoàn toàn, cần xây dựng mô đun mới.
  • B. Công việc nâng cấp một mô đun cũ.
  • C. Công việc không liên quan đến thuật toán và lập trình.
  • D. Công việc chỉ yêu cầu thay đổi dữ liệu đầu vào.

Câu 9: Mô đun "Xử lý dữ liệu" (ví dụ: Sapxep, XuLyDL) trong một chương trình báo cáo thường có nhiệm vụ chính là gì?

  • A. Đọc dữ liệu từ tệp hoặc nguồn khác.
  • B. Thực hiện các phép tính, sắp xếp, lọc dữ liệu theo yêu cầu.
  • C. Hiển thị hoặc ghi dữ liệu ra báo cáo cuối cùng.
  • D. Thu thập phản hồi từ người dùng.

Câu 10: Khi một mô đun được thiết kế tốt, nó thường có "giao diện" (interface) rõ ràng. Giao diện này bao gồm những gì?

  • A. Toàn bộ mã nguồn chi tiết bên trong mô đun.
  • B. Chỉ các biến cục bộ được sử dụng trong mô đun.
  • C. Các hàm, thủ tục và cách thức mà mô đun tương tác với bên ngoài (nhận gì, trả về gì).
  • D. Bản quyền sở hữu trí tuệ của mô đun.

Câu 11: Một chương trình được chia thành mô đun A, B, C. Mô đun A gọi hàm từ mô đun B, và mô đun B gọi hàm từ mô đun C. Nếu bạn cần thay đổi cách mô đun C xử lý dữ liệu, điều gì có khả năng xảy ra nhất?

  • A. Chỉ cần kiểm tra và sửa lỗi trong mô đun C và có thể là mô đun B (nếu giao diện C thay đổi).
  • B. Phải kiểm tra và sửa lỗi toàn bộ chương trình từ A đến C.
  • C. Các mô đun A và B sẽ tự động cập nhật theo thay đổi của C.
  • D. Thay đổi trong C không ảnh hưởng đến bất kỳ mô đun nào khác.

Câu 12: Công việc "cập nhật giá sản phẩm trong tệp dữ liệu" cho một ứng dụng bán hàng được thiết kế theo mô đun. Công việc này thuộc nhóm nào?

  • A. Công việc mới hoàn toàn.
  • B. Công việc nâng cấp một mô đun cũ.
  • C. Công việc không liên quan trực tiếp đến thuật toán và lập trình của ứng dụng, chỉ là cập nhật dữ liệu.
  • D. Công việc yêu cầu viết lại toàn bộ chương trình.

Câu 13: Tái sử dụng mã là một lợi ích quan trọng của thiết kế mô đun. Điều này có nghĩa là gì?

  • A. Mỗi mô đun chỉ có thể được sử dụng một lần duy nhất.
  • B. Các mô đun tự động sao chép mã của nhau.
  • C. Chỉ có thể tái sử dụng toàn bộ chương trình, không phải từng phần nhỏ.
  • D. Các mô đun đã được viết có thể được sử dụng lại trong các chương trình hoặc dự án khác mà không cần viết lại từ đầu.

Câu 14: Một chương trình xử lý văn bản cần thêm chức năng "kiểm tra chính tả". Theo phương pháp mô đun, việc thêm chức năng này nên được thực hiện như thế nào?

  • A. Thêm mã kiểm tra chính tả vào tất cả các mô đun hiện có.
  • B. Thiết kế và thêm một mô đun mới chuyên xử lý việc kiểm tra chính tả.
  • C. Xóa bớt một số chức năng cũ để có chỗ cho chức năng mới.
  • D. Yêu cầu người dùng tự kiểm tra chính tả thủ công.

Câu 15: Trong một chương trình quản lý kho hàng, mô đun nào sau đây có khả năng cao nhất chịu trách nhiệm tương tác trực tiếp với cơ sở dữ liệu để lấy thông tin sản phẩm?

  • A. Mô đun Truy xuất dữ liệu (hoặc tương đương).
  • B. Mô đun Hiển thị báo cáo.
  • C. Mô đun Tính toán tồn kho.
  • D. Mô đun Giao diện người dùng.

Câu 16: Việc chia chương trình thành các mô đun nhỏ hơn, mỗi mô đun có kích thước vừa phải, giúp ích gì cho quá trình đọc và hiểu mã nguồn?

  • A. Làm cho mã nguồn trở nên lộn xộn và khó theo dõi.
  • B. Không có tác động đáng kể đến khả năng đọc hiểu.
  • C. Chỉ giúp người viết mã ban đầu hiểu được chương trình.
  • D. Làm cho mã nguồn dễ đọc, dễ hiểu hơn vì mỗi phần chỉ tập trung vào một nhiệm vụ cụ thể.

Câu 17: Khi một lỗi được phát hiện trong một chương trình lớn được thiết kế theo mô đun, quá trình sửa lỗi (debugging) thường trở nên hiệu quả hơn vì lý do nào?

  • A. Toàn bộ chương trình sẽ dừng lại khi có lỗi.
  • B. Lỗi chỉ xảy ra ở mô đun đầu tiên.
  • C. Có thể khoanh vùng lỗi trong một hoặc vài mô đun liên quan thay vì phải kiểm tra toàn bộ mã nguồn.
  • D. Các mô đun tự động gửi báo cáo lỗi chi tiết qua email.

Câu 18: Giả sử bạn có một mô đun xử lý thanh toán trong một ứng dụng thương mại điện tử. Nếu yêu cầu mới là hỗ trợ thêm một phương thức thanh toán trực tuyến mới, công việc này thuộc nhóm nào?

  • A. Công việc không liên quan đến thuật toán và lập trình.
  • B. Công việc nâng cấp mô đun cũ (thêm logic cho phương thức mới).
  • C. Công việc mới hoàn toàn, cần xây dựng mô đun mới độc lập với mô đun thanh toán cũ.
  • D. Công việc yêu cầu xóa bỏ tất cả các phương thức thanh toán cũ.

Câu 19: Đâu là một ví dụ về chức năng có thể được đóng gói thành một mô đun riêng biệt trong một ứng dụng quản lý thư viện?

  • A. Tìm kiếm sách theo tiêu đề hoặc tác giả.
  • B. Thay đổi màu sắc của giao diện người dùng.
  • C. Phát nhạc nền cho ứng dụng.
  • D. Hiển thị đồng hồ hệ thống.

Câu 20: Khi thiết kế theo mô đun, việc kiểm thử từng mô đun nhỏ một cách riêng biệt (unit testing) có ưu điểm gì so với việc chỉ kiểm thử toàn bộ chương trình sau khi hoàn thành?

  • A. Unit testing không cần thiết nếu chương trình được chia mô đun.
  • B. Việc kiểm thử từng mô đun tốn kém và mất thời gian hơn.
  • C. Chỉ có thể phát hiện lỗi khi kiểm thử toàn bộ hệ thống.
  • D. Giúp phát hiện và sửa lỗi sớm trong quá trình phát triển, giảm chi phí và độ phức tạp khi sửa lỗi sau này.

Câu 21: Một chương trình xử lý dữ liệu cảm biến cần thêm khả năng kết nối với một loại cảm biến mới sử dụng giao thức truyền thông khác. Theo phương pháp mô đun, công việc này thuộc nhóm nào?

  • A. Công việc mới hoàn toàn (nếu giao thức khác biệt đáng kể) hoặc nâng cấp mô đun nhập/kết nối dữ liệu.
  • B. Công việc không liên quan đến lập trình.
  • C. Chỉ cần thay đổi cấu hình phần cứng.
  • D. Công việc yêu cầu giảm bớt số lượng cảm biến cũ.

Câu 22: Giả sử một mô đun "Xử lý đơn hàng" trong ứng dụng bán hàng bị lỗi. Nhờ thiết kế mô đun, điều gì có khả năng xảy ra nhất với các mô đun khác như "Quản lý sản phẩm" hay "Giao diện người dùng"?

  • A. Tất cả các mô đun khác cũng sẽ bị lỗi ngay lập tức.
  • B. Các mô đun khác vẫn có thể hoạt động bình thường miễn là chúng không phụ thuộc vào chức năng bị lỗi của mô đun "Xử lý đơn hàng".
  • C. Các mô đun khác sẽ tự động sửa lỗi cho mô đun "Xử lý đơn hàng".
  • D. Toàn bộ ứng dụng sẽ ngừng hoạt động hoàn toàn.

Câu 23: Việc đặt tên rõ ràng và mô tả chức năng của từng mô đun có vai trò gì trong quá trình phát triển và bảo trì chương trình?

  • A. Làm cho chương trình chạy nhanh hơn.
  • B. Không có vai trò gì, chỉ là hình thức.
  • C. Chỉ giúp người quản lý dự án hiểu chương trình.
  • D. Giúp lập trình viên dễ dàng hiểu được chức năng của từng phần, tìm kiếm và sử dụng mô đun phù hợp, và bảo trì mã nguồn hiệu quả hơn.

Câu 24: Trong một chương trình báo cáo doanh số, việc thay đổi định dạng ngày tháng trong báo cáo đầu ra (ví dụ: từ DD/MM/YYYY sang MM-DD-YYYY) thuộc nhóm công việc nào?

  • A. Công việc mới hoàn toàn.
  • B. Công việc nâng cấp một mô đun cũ (mô đun ghi báo cáo hoặc định dạng).
  • C. Công việc không liên quan đến lập trình.
  • D. Công việc yêu cầu thay đổi dữ liệu đầu vào.

Câu 25: Khi nào thì một chức năng hoặc một tập hợp các chức năng nên được xem xét để tách thành một mô đun riêng biệt?

  • A. Khi chức năng đó rất đơn giản.
  • B. Khi chức năng đó chỉ được sử dụng một lần duy nhất trong chương trình.
  • C. Khi chức năng đó thực hiện một nhiệm vụ logic riêng biệt, có khả năng được sử dụng lại, hoặc phức tạp.
  • D. Khi chức năng đó gây ra lỗi thường xuyên.

Câu 26: Một chương trình xử lý dữ liệu địa lý cần thêm chức năng "tính khoảng cách giữa hai điểm dựa trên tọa độ". Theo phương pháp mô đun, đây là loại công việc nào?

  • A. Công việc mới hoàn toàn, cần xây dựng mô đun tính toán mới.
  • B. Công việc nâng cấp mô đun nhập dữ liệu.
  • C. Công việc không liên quan đến lập trình.
  • D. Công việc yêu cầu xóa bớt dữ liệu địa lý.

Câu 27: Việc thiết kế theo mô đun giúp tăng khả năng "bảo trì" (maintenance) của chương trình. Điều này có nghĩa là gì?

  • A. Chương trình không bao giờ cần cập nhật hoặc sửa lỗi.
  • B. Chỉ có nhà phát triển ban đầu mới có thể sửa đổi chương trình.
  • C. Việc bảo trì trở nên phức tạp hơn.
  • D. Dễ dàng sửa lỗi, cập nhật chức năng hoặc cải tiến chương trình sau khi nó đã được triển khai.

Câu 28: Trong một chương trình xử lý đơn hàng trực tuyến, việc thay đổi "mức thuế suất" áp dụng cho các sản phẩm thuộc nhóm công việc nào?

  • A. Công việc mới hoàn toàn.
  • B. Công việc nâng cấp một mô đun cũ (mô đun tính giá hoặc xử lý đơn hàng).
  • C. Công việc không liên quan đến lập trình, chỉ cần cập nhật dữ liệu cấu hình.
  • D. Công việc yêu cầu thiết kế lại toàn bộ hệ thống thanh toán.

Câu 29: Một chương trình được thiết kế với mô đun "Xử lý đầu vào", "Xử lý logic chính", và "Ghi kết quả". Nếu cần thay đổi nguồn dữ liệu đầu vào từ đọc tệp sang đọc từ cơ sở dữ liệu trực tuyến, bạn sẽ cần tập trung chỉnh sửa hoặc thay thế mô đun nào?

  • A. Mô đun "Xử lý đầu vào".
  • B. Mô đun "Xử lý logic chính".
  • C. Mô đun "Ghi kết quả".
  • D. Cả ba mô đun đều cần viết lại hoàn toàn.

Câu 30: Lợi ích nào sau đây của thiết kế mô đun giúp giảm thiểu rủi ro khi một lập trình viên mới tham gia vào dự án?

  • A. Yêu cầu lập trình viên mới phải có kinh nghiệm rất lâu năm.
  • B. Mã nguồn trở nên phức tạp hơn đối với người mới.
  • C. Người mới có thể tập trung tìm hiểu và làm việc trên một mô đun cụ thể mà không cần hiểu toàn bộ chương trình ngay lập tức.
  • D. Thiết kế mô đun loại bỏ hoàn toàn nhu cầu đào tạo cho người mới.

1 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 09

Câu 1: Phương pháp thiết kế chương trình theo mô đun là gì?

2 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 09

Câu 2: Đâu là ưu điểm chính của việc thiết kế chương trình theo mô đun giúp giảm thời gian sửa lỗi khi có vấn đề xảy ra?

3 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 09

Câu 3: Một chương trình quản lý điểm học sinh được chia thành các mô đun: Nhập điểm, Tính điểm trung bình, Xếp loại học lực, và In báo cáo. Nếu cần thay đổi cách làm tròn điểm trung bình, bạn sẽ cần chỉnh sửa mô đun nào?

4 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 09

Câu 4: Trong ngữ cảnh thiết kế mô đun, khái niệm 'tính độc lập' của mô đun có ý nghĩa gì quan trọng nhất?

5 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 09

Câu 5: Giả sử bạn đang phát triển một trò chơi đơn giản. Công việc nào sau đây *ít phù hợp nhất* để trở thành một mô đun riêng biệt?

6 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 09

Câu 6: Một dự án phần mềm lớn được chia thành nhiều mô đun và giao cho các thành viên khác nhau trong nhóm cùng phát triển. Ưu điểm nào sau đây của thiết kế mô đun được thể hiện rõ nhất trong tình huống này?

7 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 09

Câu 7: Khi thiết kế mô đun cho một ứng dụng xử lý ảnh, công việc nào sau đây nên được xem xét tạo thành một mô đun riêng?

8 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 09

Câu 8: Công việc 'sao lưu cơ sở dữ liệu người dùng hàng đêm' trong một hệ thống quản lý khách hàng có thể được phân loại vào nhóm công việc nào khi áp dụng thiết kế chương trình theo mô đun?

9 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 09

Câu 9: Mô đun 'Xử lý dữ liệu' (ví dụ: Sapxep, XuLyDL) trong một chương trình báo cáo thường có nhiệm vụ chính là gì?

10 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 09

Câu 10: Khi một mô đun được thiết kế tốt, nó thường có 'giao diện' (interface) rõ ràng. Giao diện này bao gồm những gì?

11 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 09

Câu 11: Một chương trình được chia thành mô đun A, B, C. Mô đun A gọi hàm từ mô đun B, và mô đun B gọi hàm từ mô đun C. Nếu bạn cần thay đổi cách mô đun C xử lý dữ liệu, điều gì có khả năng xảy ra nhất?

12 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 09

Câu 12: Công việc 'cập nhật giá sản phẩm trong tệp dữ liệu' cho một ứng dụng bán hàng được thiết kế theo mô đun. Công việc này thuộc nhóm nào?

13 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 09

Câu 13: Tái sử dụng mã là một lợi ích quan trọng của thiết kế mô đun. Điều này có nghĩa là gì?

14 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 09

Câu 14: Một chương trình xử lý văn bản cần thêm chức năng 'kiểm tra chính tả'. Theo phương pháp mô đun, việc thêm chức năng này nên được thực hiện như thế nào?

15 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 09

Câu 15: Trong một chương trình quản lý kho hàng, mô đun nào sau đây *có khả năng cao nhất* chịu trách nhiệm tương tác trực tiếp với cơ sở dữ liệu để lấy thông tin sản phẩm?

16 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 09

Câu 16: Việc chia chương trình thành các mô đun nhỏ hơn, mỗi mô đun có kích thước vừa phải, giúp ích gì cho quá trình đọc và hiểu mã nguồn?

17 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 09

Câu 17: Khi một lỗi được phát hiện trong một chương trình lớn được thiết kế theo mô đun, quá trình sửa lỗi (debugging) thường trở nên hiệu quả hơn vì lý do nào?

18 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 09

Câu 18: Giả sử bạn có một mô đun xử lý thanh toán trong một ứng dụng thương mại điện tử. Nếu yêu cầu mới là hỗ trợ thêm một phương thức thanh toán trực tuyến mới, công việc này thuộc nhóm nào?

19 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 09

Câu 19: Đâu là một ví dụ về chức năng có thể được đóng gói thành một mô đun riêng biệt trong một ứng dụng quản lý thư viện?

20 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 09

Câu 20: Khi thiết kế theo mô đun, việc kiểm thử từng mô đun nhỏ một cách riêng biệt (unit testing) có ưu điểm gì so với việc chỉ kiểm thử toàn bộ chương trình sau khi hoàn thành?

21 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 09

Câu 21: Một chương trình xử lý dữ liệu cảm biến cần thêm khả năng kết nối với một loại cảm biến mới sử dụng giao thức truyền thông khác. Theo phương pháp mô đun, công việc này thuộc nhóm nào?

22 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 09

Câu 22: Giả sử một mô đun 'Xử lý đơn hàng' trong ứng dụng bán hàng bị lỗi. Nhờ thiết kế mô đun, điều gì có khả năng xảy ra nhất với các mô đun khác như 'Quản lý sản phẩm' hay 'Giao diện người dùng'?

23 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 09

Câu 23: Việc đặt tên rõ ràng và mô tả chức năng của từng mô đun có vai trò gì trong quá trình phát triển và bảo trì chương trình?

24 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 09

Câu 24: Trong một chương trình báo cáo doanh số, việc thay đổi định dạng ngày tháng trong báo cáo đầu ra (ví dụ: từ DD/MM/YYYY sang MM-DD-YYYY) thuộc nhóm công việc nào?

25 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 09

Câu 25: Khi nào thì một chức năng hoặc một tập hợp các chức năng nên được xem xét để tách thành một mô đun riêng biệt?

26 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 09

Câu 26: Một chương trình xử lý dữ liệu địa lý cần thêm chức năng 'tính khoảng cách giữa hai điểm dựa trên tọa độ'. Theo phương pháp mô đun, đây là loại công việc nào?

27 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 09

Câu 27: Việc thiết kế theo mô đun giúp tăng khả năng 'bảo trì' (maintenance) của chương trình. Điều này có nghĩa là gì?

28 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 09

Câu 28: Trong một chương trình xử lý đơn hàng trực tuyến, việc thay đổi 'mức thuế suất' áp dụng cho các sản phẩm thuộc nhóm công việc nào?

29 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 09

Câu 29: Một chương trình được thiết kế với mô đun 'Xử lý đầu vào', 'Xử lý logic chính', và 'Ghi kết quả'. Nếu cần thay đổi nguồn dữ liệu đầu vào từ đọc tệp sang đọc từ cơ sở dữ liệu trực tuyến, bạn sẽ cần tập trung chỉnh sửa hoặc thay th??? mô đun nào?

30 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 09

Câu 30: Lợi ích nào sau đây của thiết kế mô đun giúp giảm thiểu rủi ro khi một lập trình viên mới tham gia vào dự án?

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


Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun - Đề 10

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun - Đề 10 được xây dựng với nhiều câu hỏi chất lượng, sát với nội dung chương trình học, giúp bạn dễ dàng ôn tập và kiểm tra kiến thức hiệu quả. Hãy cùng bắt đầu làm bài tập trắc nghiệm ngay để nâng cao hiểu biết và chuẩn bị tốt cho kỳ thi sắp tới!

Câu 1: Khi thiết kế một chương trình quản lý bán hàng phức tạp theo phương pháp mô đun, việc chia nhỏ chương trình thành các mô đun như "Quản lý kho hàng", "Xử lý đơn hàng", "Lập báo cáo doanh thu" mang lại lợi ích chính nào sau đây?

  • A. Giảm đáng kể thời gian chạy của chương trình.
  • B. Chỉ cần một lập trình viên duy nhất để hoàn thành toàn bộ dự án.
  • C. Giúp quản lý độ phức tạp, dễ dàng bảo trì và nâng cấp chương trình.
  • D. Loại bỏ hoàn toàn khả năng xảy ra lỗi trong quá trình lập trình.

Câu 2: Một nhóm lập trình viên đang cùng phát triển một ứng dụng web lớn. Phương pháp thiết kế chương trình theo mô đun hỗ trợ hiệu quả công việc nhóm như thế nào?

  • A. Buộc tất cả lập trình viên phải làm việc trên cùng một đoạn mã duy nhất.
  • B. Cho phép các thành viên trong nhóm làm việc song song trên các mô đun khác nhau một cách độc lập.
  • C. Yêu cầu mỗi lập trình viên phải hiểu chi tiết toàn bộ mã nguồn của chương trình.
  • D. Giảm nhu cầu giao tiếp và phối hợp giữa các thành viên.

Câu 3: Giả sử chương trình xử lý doanh số ban đầu chỉ tạo báo cáo văn bản. Công ty muốn bổ sung chức năng tạo báo cáo dưới dạng biểu đồ hình cột. Công việc này thuộc nhóm nào trong bối cảnh thiết kế theo mô đun?

  • A. Công việc mới hoàn toàn (cần xây dựng mô đun mới).
  • B. Công việc nâng cấp một mô đun cũ (chỉnh sửa mô đun báo cáo hiện có).
  • C. Công việc không liên quan đến thuật toán và lập trình.
  • D. Công việc chỉ cần thay đổi dữ liệu đầu vào.

Câu 4: Khi một lỗi được phát hiện trong một chương trình được thiết kế theo mô đun, việc xác định và sửa lỗi thường dễ dàng hơn so với chương trình nguyên khối (monolithic). Lợi ích này chủ yếu đến từ đặc điểm nào của mô đun?

  • A. Các mô đun có kích thước rất lớn.
  • B. Các mô đun chia sẻ chung tất cả dữ liệu.
  • C. Các mô đun phụ thuộc chặt chẽ vào nhau.
  • D. Mỗi mô đun thực hiện một chức năng cụ thể và tương đối độc lập.

Câu 5: Chương trình phân tích doanh số có mô đun "Sapxep" dùng để sắp xếp mặt hàng theo doanh số. Nếu sau này muốn thay thuật toán sắp xếp hiện tại bằng một thuật toán hiệu quả hơn (ví dụ từ Bubble Sort sang Quick Sort), việc này sẽ dễ dàng thực hiện nhờ đặc điểm nào của thiết kế mô đun?

  • A. Mô đun "Sapxep" không tương tác với các mô đun khác.
  • B. Thuật toán sắp xếp không phải là phần cốt lõi của mô đun.
  • C. Có thể thay đổi nội bộ mô đun "Sapxep" mà ít ảnh hưởng đến giao diện và hoạt động của các mô đun gọi nó.
  • D. Việc thay đổi thuật toán luôn yêu cầu viết lại toàn bộ chương trình.

Câu 6: Một chương trình được thiết kế mô đun, nhưng khi định dạng tệp dữ liệu đầu vào thay đổi, hầu hết các mô đun từ nhập liệu, xử lý đến báo cáo đều phải sửa đổi. Điều này cho thấy chương trình đang vi phạm nghiêm trọng nguyên tắc nào trong thiết kế mô đun?

  • A. Tính tái sử dụng (Reusability).
  • B. Tính liên kết lỏng lẻo (Loose Coupling).
  • C. Tính gắn kết cao (High Cohesion).
  • D. Tính dễ đọc (Readability).

Câu 7: Mô đun xác thực người dùng (kiểm tra tên đăng nhập, mật khẩu) nên được thiết kế để chỉ trả về kết quả xác thực (Đúng/Sai hoặc mã lỗi) thay vì tự in thông báo "Đăng nhập thành công" hoặc "Sai mật khẩu" ra màn hình. Điều này tuân thủ nguyên tắc thiết kế mô đun nào?

  • A. Giảm tính tái sử dụng.
  • B. Tăng tính liên kết chặt chẽ.
  • C. Vi phạm tính gắn kết cao.
  • D. Tách biệt trách nhiệm (Separation of Concerns) và có giao diện rõ ràng.

Câu 8: Trong một hệ thống quản lý thư viện được thiết kế theo mô đun, chức năng nào sau đây thường là một phần nhỏ bên trong một mô đun lớn hơn, chứ ít khi là một mô đun độc lập hoàn chỉnh?

  • A. Kiểm tra xem một chuỗi có rỗng hay không.
  • B. Mô đun Quản lý độc giả.
  • C. Mô đun Xử lý mượn/trả sách.
  • D. Mô đun Tìm kiếm sách.

Câu 9: Công ty muốn bổ sung chức năng phân tích nâng cao dữ liệu doanh số, như dự báo xu hướng bán hàng trong quý tới, sử dụng các mô hình thống kê phức tạp. Công việc này trong bối cảnh thiết kế mô đun thuộc nhóm nào?

  • A. Công việc mới hoàn toàn, có thể cần thêm mô đun xử lý dữ liệu hoặc báo cáo mới.
  • B. Chỉ cần chỉnh sửa mô đun "NhapDL".
  • C. Chỉ cần chỉnh sửa mô đun "GhiDL".
  • D. Công việc không liên quan đến lập trình, chỉ cần cập nhật dữ liệu.

Câu 10: Trong ví dụ chương trình xử lý doanh số (NhapDL, Sapxep, GhiDL), nếu yêu cầu thay đổi từ "sắp xếp mặt hàng theo doanh số từ cao đến thấp" thành "sắp xếp mặt hàng theo tên từ A-Z", mô đun nào chắc chắn cần được chỉnh sửa?

  • A. NhapDL.
  • B. GhiDL.
  • C. Sapxep.
  • D. Cả ba mô đun NhapDL, Sapxep, và GhiDL.

Câu 11: Một mô đun tiện ích (utility module) cung cấp các hàm toán học cơ bản (cộng, trừ, nhân, chia). Tại sao mô đun này không nên chứa các lệnh in trực tiếp kết quả ra màn hình hoặc đọc dữ liệu từ bàn phím?

  • A. Vì các hàm toán học sẽ chạy chậm hơn nếu có lệnh I/O.
  • B. Để đảm bảo tính gắn kết cao (chỉ làm một việc là tính toán) và dễ tái sử dụng trong các ngữ cảnh khác nhau (không chỉ giao diện dòng lệnh).
  • C. Vì các mô đun tiện ích không được phép tương tác với người dùng.
  • D. Vì việc in kết quả là trách nhiệm của mô đun nhập liệu.

Câu 12: Một mô đun được coi là có "tính gắn kết cao" (high cohesion) khi:

  • A. Các thành phần bên trong mô đun thực hiện các chức năng có liên quan chặt chẽ với nhau và cùng phục vụ một mục đích duy nhất.
  • B. Mô đun phụ thuộc vào rất nhiều mô đun khác.
  • C. Mô đun không phụ thuộc vào bất kỳ mô đun nào khác.
  • D. Mô đun có kích thước rất lớn và chứa nhiều chức năng khác nhau.

Câu 13: Tính "liên kết lỏng lẻo" (loose coupling) giữa các mô đun là một mục tiêu quan trọng trong thiết kế. Lợi ích chính của việc giảm sự phụ thuộc giữa các mô đun là gì?

  • A. Làm cho chương trình chạy nhanh hơn.
  • B. Tăng kích thước tổng thể của chương trình.
  • C. Giảm khả năng tái sử dụng của các mô đun.
  • D. Giúp thay đổi một mô đun mà ít gây ảnh hưởng đến các mô đun khác.

Câu 14: Chương trình xử lý doanh số hiện đọc dữ liệu từ tệp văn bản. Nếu muốn mở rộng để đọc dữ liệu trực tiếp từ một cơ sở dữ liệu, mô đun nào trong cấu trúc NhapDL, Sapxep, GhiDL có khả năng cao nhất cần được chỉnh sửa hoặc thay thế bằng một mô đun mới?

  • A. NhapDL.
  • B. Sapxep.
  • C. GhiDL.
  • D. Không mô đun nào cần thay đổi, chỉ cần cấu hình.

Câu 15: Giao diện (interface) của một mô đun là tập hợp các hàm, thủ tục hoặc biến mà mô đun đó "công khai" cho các mô đun khác sử dụng. Mục đích chính của việc định nghĩa rõ ràng giao diện này là gì?

  • A. Che giấu hoàn toàn mọi thông tin về mô đun.
  • B. Buộc các mô đun khác phải truy cập trực tiếp vào dữ liệu nội bộ của mô đun.
  • C. Xác định cách các mô đun tương tác với nhau mà không cần biết chi tiết bên trong của nhau.
  • D. Chỉ cho phép mô đun đó gọi đến các mô đun khác.

Câu 16: Mô đun "XuLyDL" (Xử lý dữ liệu) trong chương trình phân tích doanh số có thể bao gồm các bước như lọc dữ liệu, tính toán tổng doanh số, xác định mặt hàng bán chạy. Trong thiết kế mô đun, các bước này thường được tổ chức như thế nào bên trong "XuLyDL"?

  • A. Viết tất cả các bước vào một hàm duy nhất rất dài.
  • B. Chia nhỏ thành các hàm hoặc thủ tục con, mỗi cái thực hiện một bước xử lý cụ thể.
  • C. Để các mô đun khác tự thực hiện các bước xử lý này.
  • D. Bỏ qua các bước xử lý chi tiết và chỉ làm việc với dữ liệu thô.

Câu 17: Nếu một lỗi được phát hiện là nằm trong mô đun "GhiDL" (Ghi dữ liệu/Báo cáo) của chương trình phân tích doanh số, bạn có thể suy luận gì về bản chất của lỗi đó?

  • A. Lỗi chắc chắn liên quan đến việc đọc dữ liệu từ tệp đầu vào.
  • B. Lỗi liên quan đến thuật toán sắp xếp dữ liệu.
  • C. Lỗi do dữ liệu đầu vào bị sai định dạng.
  • D. Lỗi có khả năng liên quan đến việc định dạng kết quả, ghi dữ liệu ra tệp báo cáo, hoặc chọn dữ liệu để in báo cáo.

Câu 18: Khi một lập trình viên được giao nhiệm vụ xây dựng mô đun "Sapxep", thông tin quan trọng nhất mà họ cần biết từ các mô đun khác (đặc biệt là mô đun "NhapDL") là gì để đảm bảo mô đun "Sapxep" hoạt động đúng?

  • A. Chi tiết mã nguồn của mô đun "NhapDL".
  • B. Định dạng và cấu trúc của dữ liệu (ví dụ: kiểu dữ liệu, thứ tự các trường) mà mô đun "NhapDL" cung cấp.
  • C. Tên của tất cả các mặt hàng trong tệp dữ liệu.
  • D. Lịch sử sửa đổi của mô đun "GhiDL".

Câu 19: Trong lập trình, sự khác biệt cơ bản nhất giữa một "hàm" (function) và một "mô đun" (module) trong bối cảnh thiết kế chương trình lớn là gì?

  • A. Hàm luôn trả về giá trị, còn mô đun thì không.
  • B. Hàm chỉ thực hiện một lệnh duy nhất, còn mô đun thực hiện nhiều lệnh.
  • C. Mô đun là đơn vị tổ chức mã nguồn lớn hơn (thường là một tệp hoặc thư mục), chứa các hàm, biến và lớp liên quan, trong khi hàm là một khối lệnh thực hiện một nhiệm vụ cụ thể.
  • D. Mô đun không thể gọi hàm khác, còn hàm có thể gọi mô đun.

Câu 20: Mặc dù chia nhỏ chương trình thành mô đun có nhiều lợi ích, nhưng nếu chia thành quá nhiều mô đun quá nhỏ, không đáng kể, có thể dẫn đến nhược điểm nào?

  • A. Làm cho mã nguồn dễ đọc hơn một cách đáng kể.
  • B. Tăng tính gắn kết của mỗi mô đun.
  • C. Giảm số lượng tệp trong dự án.
  • D. Tăng độ phức tạp trong việc quản lý các mô đun và mối quan hệ giữa chúng.

Câu 21: Công ty yêu cầu bổ sung tính năng tự động gửi báo cáo doanh số qua email hàng ngày. Công việc này liên quan đến việc tích hợp chương trình hiện tại với một hệ thống gửi email. Đây là loại công việc nào trong bối cảnh thiết kế mô đun?

  • A. Công việc mới hoàn toàn, có thể cần xây dựng mô đun gửi email mới và chỉnh sửa mô đun báo cáo hoặc điều phối.
  • B. Chỉ cần chỉnh sửa mô đun "NhapDL".
  • C. Chỉ cần thay đổi dữ liệu trong tệp đầu vào.
  • D. Công việc này không cần bất kỳ thay đổi nào về mã nguồn.

Câu 22: Khi thiết kế giao diện giữa hai mô đun, tại sao nên cố gắng giảm thiểu số lượng tham số được truyền qua lại giữa các hàm của chúng?

  • A. Để làm cho chương trình chạy nhanh hơn.
  • B. Để tăng tính gắn kết của mô đun.
  • C. Để giảm tính liên kết (coupling) giữa hai mô đun, giúp chúng độc lập hơn và dễ thay đổi hơn.
  • D. Để làm cho mã nguồn khó hiểu hơn, tránh bị sao chép.

Câu 23: Một mô đun chỉ chứa các hàm để thực hiện các phép tính thống kê trên một tập dữ liệu, không có chức năng đọc/ghi tệp hay tương tác người dùng. Mô đun này thể hiện rõ đặc điểm nào?

  • A. Tính gắn kết cao (High Cohesion), cụ thể là gắn kết chức năng.
  • B. Tính liên kết chặt chẽ (Tight Coupling).
  • C. Thiếu tính tái sử dụng.
  • D. Phụ thuộc nhiều vào giao diện người dùng.

Câu 24: Trong ví dụ chương trình xử lý doanh số, nếu tệp dữ liệu đầu vào Data.inp thay đổi định dạng từ "tên_mặt_hàng,doanh_số" sang "mã_mặt_hàng;tên_mặt_hàng;doanh_số", mô đun nào sẽ chịu ảnh hưởng trực tiếp và cần được chỉnh sửa?

  • A. NhapDL.
  • B. Sapxep.
  • C. GhiDL.
  • D. Tất cả các mô đun.

Câu 25: Một hàm trong chương trình vừa đọc dữ liệu từ tệp, vừa xử lý dữ liệu đó (tính toán, lọc), và cuối cùng in kết quả ra màn hình. Hàm này đang vi phạm nguyên tắc thiết kế mô đun nào?

  • A. Tính dễ đọc.
  • B. Tính tái sử dụng.
  • C. Tính gắn kết cao (High Cohesion) và Tách biệt trách nhiệm (Separation of Concerns).
  • D. Tính liên kết lỏng lẻo (Loose Coupling).

Câu 26: Khi nhiều lập trình viên cùng làm việc trên một dự án lớn, thiết kế theo mô đun giúp giảm thiểu xung đột mã nguồn (code conflicts) như thế nào?

  • A. Buộc tất cả lập trình viên phải code trên cùng một máy tính.
  • B. Cho phép mỗi lập trình viên làm việc chủ yếu trong phạm vi các mô đun cụ thể mà ít phải chỉnh sửa mã của các mô đun do người khác phụ trách.
  • C. Tự động phát hiện và sửa lỗi cú pháp.
  • D. Loại bỏ nhu cầu sử dụng hệ thống quản lý phiên bản (như Git).

Câu 27: Khả năng "tái sử dụng mã nguồn" (code reusability) là một lợi ích quan trọng của thiết kế mô đun. Điều này có nghĩa là gì?

  • A. Mỗi mô đun chỉ được sử dụng một lần trong chương trình.
  • B. Chỉ có thể sao chép và dán mã nguồn của mô đun sang các dự án khác.
  • C. Các mô đun được thiết kế tốt, thực hiện chức năng chung có thể dễ dàng được sử dụng lại trong các chương trình hoặc dự án khác mà không cần viết lại.
  • D. Mã nguồn của mô đun tự động cập nhật khi được sử dụng ở nhiều nơi.

Câu 28: Một phần mềm quản lý người dùng có mô đun "XacThuc" (Authentication) xử lý việc đăng nhập bằng tên người dùng và mật khẩu. Nếu công ty quyết định thay thế phương thức đăng nhập bằng cách sử dụng chứng chỉ số, mô đun nào có khả năng cao nhất cần được thay đổi hoặc xây dựng lại?

  • A. Mô đun "XacThuc".
  • B. Mô đun "QuanLyDuLieuNguoiDung".
  • C. Mô đun "GiaoDienNguoiDung".
  • D. Tất cả các mô đun đều phải thay đổi như nhau.

Câu 29: Mục tiêu chính và bao trùm nhất của việc áp dụng phương pháp thiết kế chương trình theo mô đun là gì?

  • A. Làm cho chương trình chạy nhanh hơn trên mọi phần cứng.
  • B. Giảm số lượng dòng mã trong chương trình.
  • C. Loại bỏ hoàn toàn nhu cầu kiểm thử chương trình.
  • D. Quản lý hiệu quả sự phức tạp của các chương trình lớn, giúp chúng dễ phát triển, hiểu, kiểm thử và bảo trì hơn.

Câu 30: Trong chương trình xử lý doanh số, bạn nhận thấy báo cáo cuối cùng luôn hiển thị mặt hàng bán chạy nhất và ít chạy nhất không chính xác, nhưng dữ liệu đầu vào và định dạng báo cáo ra tệp đều đúng. Dựa trên thiết kế mô đun (NhapDL, Sapxep, GhiDL), lỗi này khả năng cao nằm ở đâu?

  • A. Trong mô đun "NhapDL" khi đọc dữ liệu.
  • B. Trong mô đun "GhiDL" khi ghi báo cáo ra tệp.
  • C. Trong mô đun "Sapxep" khi thực hiện sắp xếp dữ liệu.
  • D. Lỗi nằm ngoài chương trình, có thể do hệ điều hành.

1 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 10

Câu 1: Khi thiết kế một chương trình quản lý bán hàng phức tạp theo phương pháp mô đun, việc chia nhỏ chương trình thành các mô đun như 'Quản lý kho hàng', 'Xử lý đơn hàng', 'Lập báo cáo doanh thu' mang lại lợi ích chính nào sau đây?

2 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 10

Câu 2: Một nhóm lập trình viên đang cùng phát triển một ứng dụng web lớn. Phương pháp thiết kế chương trình theo mô đun hỗ trợ hiệu quả công việc nhóm như thế nào?

3 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 10

Câu 3: Giả sử chương trình xử lý doanh số ban đầu chỉ tạo báo cáo văn bản. Công ty muốn bổ sung chức năng tạo báo cáo dưới dạng biểu đồ hình cột. Công việc này thuộc nhóm nào trong bối cảnh thiết kế theo mô đun?

4 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 10

Câu 4: Khi một lỗi được phát hiện trong một chương trình được thiết kế theo mô đun, việc xác định và sửa lỗi thường dễ dàng hơn so với chương trình nguyên khối (monolithic). Lợi ích này chủ yếu đến từ đặc điểm nào của mô đun?

5 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 10

Câu 5: Chương trình phân tích doanh số có mô đun 'Sapxep' dùng để sắp xếp mặt hàng theo doanh số. Nếu sau này muốn thay thuật toán sắp xếp hiện tại bằng một thuật toán hiệu quả hơn (ví dụ từ Bubble Sort sang Quick Sort), việc này sẽ dễ dàng thực hiện nhờ đặc điểm nào của thiết kế mô đun?

6 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 10

Câu 6: Một chương trình được thiết kế mô đun, nhưng khi định dạng tệp dữ liệu đầu vào thay đổi, hầu hết các mô đun từ nhập liệu, xử lý đến báo cáo đều phải sửa đổi. Điều này cho thấy chương trình đang vi phạm nghiêm trọng nguyên tắc nào trong thiết kế mô đun?

7 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 10

Câu 7: Mô đun xác thực người dùng (kiểm tra tên đăng nhập, mật khẩu) nên được thiết kế để chỉ trả về kết quả xác thực (Đúng/Sai hoặc mã lỗi) thay vì tự in thông báo 'Đăng nhập thành công' hoặc 'Sai mật khẩu' ra màn hình. Điều này tuân thủ nguyên tắc thiết kế mô đun nào?

8 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 10

Câu 8: Trong một hệ thống quản lý thư viện được thiết kế theo mô đun, chức năng nào sau đây thường là một phần nhỏ bên trong một mô đun lớn hơn, chứ ít khi là một mô đun độc lập hoàn chỉnh?

9 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 10

Câu 9: Công ty muốn bổ sung chức năng phân tích nâng cao dữ liệu doanh số, như dự báo xu hướng bán hàng trong quý tới, sử dụng các mô hình thống kê phức tạp. Công việc này trong bối cảnh thiết kế mô đun thuộc nhóm nào?

10 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 10

Câu 10: Trong ví dụ chương trình xử lý doanh số (NhapDL, Sapxep, GhiDL), nếu yêu cầu thay đổi từ 'sắp xếp mặt hàng theo doanh số từ cao đến thấp' thành 'sắp xếp mặt hàng theo tên từ A-Z', mô đun nào chắc chắn cần được chỉnh sửa?

11 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 10

Câu 11: Một mô đun tiện ích (utility module) cung cấp các hàm toán học cơ bản (cộng, trừ, nhân, chia). Tại sao mô đun này không nên chứa các lệnh in trực tiếp kết quả ra màn hình hoặc đọc dữ liệu từ bàn phím?

12 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 10

Câu 12: Một mô đun được coi là có 'tính gắn kết cao' (high cohesion) khi:

13 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 10

Câu 13: Tính 'liên kết lỏng lẻo' (loose coupling) giữa các mô đun là một mục tiêu quan trọng trong thiết kế. Lợi ích chính của việc giảm sự phụ thuộc giữa các mô đun là gì?

14 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 10

Câu 14: Chương trình xử lý doanh số hiện đọc dữ liệu từ tệp văn bản. Nếu muốn mở rộng để đọc dữ liệu trực tiếp từ một cơ sở dữ liệu, mô đun nào trong cấu trúc NhapDL, Sapxep, GhiDL có khả năng cao nhất cần được chỉnh sửa hoặc thay thế bằng một mô đun mới?

15 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 10

Câu 15: Giao diện (interface) của một mô đun là tập hợp các hàm, thủ tục hoặc biến mà mô đun đó 'công khai' cho các mô đun khác sử dụng. Mục đích chính của việc định nghĩa rõ ràng giao diện này là gì?

16 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 10

Câu 16: Mô đun 'XuLyDL' (Xử lý dữ liệu) trong chương trình phân tích doanh số có thể bao gồm các bước như lọc dữ liệu, tính toán tổng doanh số, xác định mặt hàng bán chạy. Trong thiết kế mô đun, các bước này thường được tổ chức như thế nào bên trong 'XuLyDL'?

17 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 10

Câu 17: Nếu một lỗi được phát hiện là nằm trong mô đun 'GhiDL' (Ghi dữ liệu/Báo cáo) của chương trình phân tích doanh số, bạn có thể suy luận gì về bản chất của lỗi đó?

18 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 10

Câu 18: Khi một lập trình viên được giao nhiệm vụ xây dựng mô đun 'Sapxep', thông tin quan trọng nhất mà họ cần biết từ các mô đun khác (đặc biệt là mô đun 'NhapDL') là gì để đảm bảo mô đun 'Sapxep' hoạt động đúng?

19 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 10

Câu 19: Trong lập trình, sự khác biệt cơ bản nhất giữa một 'hàm' (function) và một 'mô đun' (module) trong bối cảnh thiết kế chương trình lớn là gì?

20 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 10

Câu 20: Mặc dù chia nhỏ chương trình thành mô đun có nhiều lợi ích, nhưng nếu chia thành quá nhiều mô đun quá nhỏ, không đáng kể, có thể dẫn đến nhược điểm nào?

21 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 10

Câu 21: Công ty yêu cầu bổ sung tính năng tự động gửi báo cáo doanh số qua email hàng ngày. Công việc này liên quan đến việc tích hợp chương trình hiện tại với một hệ thống gửi email. Đây là loại công việc nào trong bối cảnh thiết kế mô đun?

22 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 10

Câu 22: Khi thiết kế giao diện giữa hai mô đun, tại sao nên cố gắng giảm thiểu số lượng tham số được truyền qua lại giữa các hàm của chúng?

23 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 10

Câu 23: Một mô đun chỉ chứa các hàm để thực hiện các phép tính thống kê trên một tập dữ liệu, không có chức năng đọc/ghi tệp hay tương tác người dùng. Mô đun này thể hiện rõ đặc điểm nào?

24 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 10

Câu 24: Trong ví dụ chương trình xử lý doanh số, nếu tệp dữ liệu đầu vào Data.inp thay đổi định dạng từ 'tên_mặt_hàng,doanh_số' sang 'mã_mặt_hàng;tên_mặt_hàng;doanh_số', mô đun nào sẽ chịu ảnh hưởng trực tiếp và cần được chỉnh sửa?

25 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 10

Câu 25: Một hàm trong chương trình vừa đọc dữ liệu từ tệp, vừa xử lý dữ liệu đó (tính toán, lọc), và cuối cùng in kết quả ra màn hình. Hàm này đang vi phạm nguyên tắc thiết kế mô đun nào?

26 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 10

Câu 26: Khi nhiều lập trình viên cùng làm việc trên một dự án lớn, thiết kế theo mô đun giúp giảm thiểu xung đột mã nguồn (code conflicts) như thế nào?

27 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 10

Câu 27: Khả năng 'tái sử dụng mã nguồn' (code reusability) là một lợi ích quan trọng của thiết kế mô đun. Điều này có nghĩa là gì?

28 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 10

Câu 28: Một phần mềm quản lý người dùng có mô đun 'XacThuc' (Authentication) xử lý việc đăng nhập bằng tên người dùng và mật khẩu. Nếu công ty quyết định thay thế phương thức đăng nhập bằng cách sử dụng chứng chỉ số, mô đun nào có khả năng cao nhất cần được thay đổi hoặc xây dựng lại?

29 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 10

Câu 29: Mục tiêu chính và bao trùm nhất của việc áp dụng phương pháp thiết kế chương trình theo mô đun là gì?

30 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 28: Thiết kế chương trình theo mô đun

Tags: Bộ đề 10

Câu 30: Trong chương trình xử lý doanh số, bạn nhận thấy báo cáo cuối cùng luôn hiển thị mặt hàng bán chạy nhất và ít chạy nhất không chính xác, nhưng dữ liệu đầu vào và định dạng báo cáo ra tệp đều đúng. Dựa trên thiết kế mô đun (NhapDL, Sapxep, GhiDL), lỗi này khả năng cao nằm ở đâu?

Viết một bình luận