Bài 10: Thiết kế chương trình từ trên xuống và phương pháp mô đun hoá

Khởi động (SGK Cánh diều - Trang 131)

Hướng dẫn giải

Đúng vì khi phân tích ta đã sắp xếp theo các bước giải theo tuần tự bài toán.

(Trả lời bởi Thanh An)
Thảo luận (1)

Hoạt động (SGK Cánh diều - Trang 132)

Hướng dẫn giải

Theo em, đây là kết quả lập trình theo phương pháp mô đun hoá.

Vì bài toán được viết theo các bước từ việc lớn, thiết kế các hàm, viết các hàm, tiến hành viết chương trình.

(Trả lời bởi Thanh An)
Thảo luận (1)

Luyện tập 1 (SGK Cánh diều - Trang 134)

Hướng dẫn giải

Lập trình mô-đun hoá là một phương pháp trong phát triển phần mềm, trong đó toàn bộ hệ thống được chia thành các phần nhỏ hơn gọi là mô-đun, mỗi mô-đun có chức năng cụ thể và độc lập với các mô-đun khác. Việc phát triển phần mềm bằng phương pháp này giúp đơn giản hóa quá trình phát triển, bảo trì và nâng cấp phần mềm.

Lập trình mô-đun hoá giúp tăng tính tái sử dụng của các phần mềm vì mỗi mô-đun có thể được sử dụng lại trong các dự án khác. Việc tái sử dụng này giúp tiết kiệm thời gian và tài nguyên phát triển, đồng thời giảm thiểu số lượng lỗi liên quan đến việc lập trình lại các chức năng đã có sẵn.

Hơn nữa, lập trình mô-đun hoá giúp tăng tính bảo trì của các phần mềm bởi vì mỗi mô-đun được phát triển và kiểm thử độc lập với các mô-đun khác. Điều này giúp đơn giản hóa quá trình bảo trì và nâng cấp phần mềm vì chỉ cần sửa đổi một mô-đun cụ thể thay vì phải sửa đổi toàn bộ hệ thống.

Tóm lại, lập trình mô-đun hoá là một phương pháp quan trọng trong phát triển phần mềm, giúp tăng tính tái sử dụng, dễ bảo trì, dễ mở rộng và giảm thiểu các lỗi liên quan đến tính tương tác giữa các phần của hệ thống.

(Trả lời bởi Thanh An)
Thảo luận (1)

Luyện tập 2 (SGK Cánh diều - Trang 134)

Hướng dẫn giải

Chúng ta có thể bỏ hết các hàm trong một chương trình và thay thế bằng một khối lệnh lớn hơn để tạo thành một chương trình kiểu nguyên khối. Tuy nhiên, việc này không phải lúc nào cũng là tối ưu và có thể dẫn đến một số vấn đề như sau:

- Khó quản lý và bảo trì: Khi chương trình trở nên lớn hơn thì việc duy trì và sửa lỗi sẽ trở nên phức tạp và khó khăn hơn khi tất cả các lệnh được đặt trong một khối lệnh duy nhất.

- Không tái sử dụng được code: Nếu các phần code được sử dụng nhiều lần trong chương trình, việc đặt chúng vào các hàm riêng biệt sẽ giúp tiết kiệm thời gian và tối ưu hóa mã nguồn.

- Không tận dụng được tính mô đun của chương trình: Một chương trình mô đun có thể được chia thành các phần riêng biệt và phụ thuộc lẫn nhau. Việc bỏ hết các hàm và chuyển thành chương trình kiểu nguyên khối sẽ khiến chương trình mất đi tính mô đun và dễ dàng gây ra các vấn đề về phụ thuộc giữa các phần của chương trình.

(Trả lời bởi Thanh An)
Thảo luận (1)

Vận dụng (SGK Cánh diều - Trang 134)

Hướng dẫn giải

1. Sắp xếp chèn (Insertion Sort)

Ý tưởng: Insertion Sort lấy ý tưởng từ việc chơi bài, dựa theo cách người chơi "chèn" thêm một quân bài mới vào bộ bài đã được sắp xếp trên tay.

2. Sắp xếp lựa chọn (Selection Sort)

Ý tưởng của Selection sort là tìm từng phần tử cho mỗi vị trí của mảng hoán vị A' cần tìm.

3. Sắp xếp nổi bọt (Bubble Sort)

Ý tưởng: Bubble Sort, như cái tên của nó, là thuật toán đẩy phần tử lớn nhất xuống cuối dãy, đồng thời những phần tử có giá trị nhỏ hơn sẽ dịch chuyển dần về đầu dãy. Tựa như sự nổi bọt vậy, những phần tử nhẹ hơn sẽ nổi lên trên và ngược lại, những phần tử lớn hơn sẽ chìm xuống dưới.

(Trả lời bởi Thanh An)
Thảo luận (1)

Câu hỏi 1 (SGK Cánh diều - Trang 134)

Hướng dẫn giải

Các bước chính cần thực hiện khi áp dụng phương pháp lập trình mô đun hoá bao gồm:

- Phân tích chương trình để xác định các phần có thể tách ra thành các mô-đun.

- Thiết kế các mô-đun bằng cách xác định các hàm và biến cần thiết cho mỗi mô-đun.

- Xây dựng và kiểm tra các mô-đun một cách độc lập.

- Kết hợp các mô-đun thành chương trình chính bằng cách sử dụng các giao diện (API) đã được định nghĩa trước đó.

- Kiểm tra và sửa lỗi chương trình đã kết hợp các mô-đun.

Sau khi áp dụng phương pháp lập trình mô đun hoá, chương trình sẽ được phân tách thành các mô-đun riêng biệt, dễ quản lý và bảo trì hơn, đồng thời cũng giúp tăng tính tái sử dụng của code.

(Trả lời bởi Thanh An)
Thảo luận (1)

Câu hỏi 2 (SGK Cánh diều - Trang 134)

Hướng dẫn giải

Tăng tính tái sử dụng, dễ bảo trì, dễ mở rộng và giảm thiểu các lỗi liên quan đến tính tương tác giữa các phần của hệ thống.

(Trả lời bởi Thanh An)
Thảo luận (1)