Trắc nghiệm Tin học 11 Cánh diều KHMT bài 11 Thực hành thiết kế và lập trình theo modun

Trắc nghiệm Tin học 11 Cánh diều KHMT bài 11 Thực hành thiết kế và lập trình theo modun

1. Khi một module cần truy cập dữ liệu từ một module khác, việc truyền dữ liệu qua tham số của hàm gọi là gì?
2. Trong thiết kế phần mềm, giao diện rõ ràng (clear interface) cho một module có ý nghĩa gì đối với các lập trình viên khác?
3. Một ví dụ về hành vi khớp nối chặt (tight coupling) giữa hai module là gì?
4. Module trong lập trình là gì?
5. Nguyên tắc trừu tượng hóa (abstraction) trong lập trình module có nghĩa là gì?
6. Trong Python, tệp `__init__.py` trong một thư mục có ý nghĩa gì?
7. Một module tốt nên có mức độ phụ thuộc vào chi tiết (high dependency on details) với các module khác ở mức độ nào?
8. Trong ngữ cảnh của lập trình module, một giao diện (interface) có thể được xem như là:
9. Trong lập trình module, việc xác định rõ ràng giao diện (interface) của một module là quan trọng vì lý do gì?
10. Trong lập trình theo module, mục đích chính của việc chia chương trình thành các module độc lập là gì?
11. Nếu bạn muốn tạo một namespace riêng cho các hàm liên quan đến xử lý chuỗi trong dự án, bạn nên làm gì?
12. Giả sử bạn có một tệp tên là `math_operations.py` chứa các hàm tính toán. Để sử dụng hàm `add` trong tệp này từ một tệp khác, bạn sẽ làm gì trong Python?
13. Nếu một module có nhiều hàm, nhưng một module khác chỉ cần sử dụng một hoặc hai hàm đó, cách nhập nào là hiệu quả nhất để tránh làm ô nhiễm không gian tên?
14. Nguyên tắc khớp nối lỏng (loose coupling) giữa các module có nghĩa là gì?
15. Khi một module gọi một hàm (function) từ một module khác, điều này thể hiện loại tương tác nào?
16. Khi thiết kế một module xử lý dữ liệu người dùng, chức năng nào sau đây nên được đóng gói bên trong module đó?
17. Ngôn ngữ lập trình Python hỗ trợ lập trình theo module như thế nào?
18. Khi thiết kế một module, nguyên tắc đóng gói (encapsulation) đề cập đến điều gì?
19. Khi nào thì việc tạo ra các module riêng biệt là không cần thiết hoặc không hiệu quả?
20. Độ phức tạp của việc bảo trì phần mềm có mối liên hệ như thế nào với tính module hóa?
21. Khả năng tái sử dụng (reusability) của một module có ý nghĩa gì trong phát triển phần mềm?
22. Theo nguyên tắc gắn kết cao (high cohesion) trong thiết kế module, một module nên tập trung vào việc gì?
23. Lập trình theo module giúp ích gì cho quá trình gỡ lỗi (debugging)?
24. Khi bạn sử dụng `from math_operations import add` trong Python, điều gì sẽ xảy ra?
25. Trong Python, khi bạn nhập một module, điều gì sẽ xảy ra với mã nguồn của module đó?