Lập trình theo mô đun lμ áp dụng mô hình kết cấu mô đun nh− trên vμo xây dựng ch−ơng trình. Một ch−ơng trình lớn, phức tạp cần đ−ợc phân chia lμm nhiều mô đun ch−ơng trình. Mỗi mô đun ch−ơng trình hoμn thμnh một phần công việc t−ơng đối độc lập. Một mô đun, đối với các mô đun khác giống nh− một "hộp đen". Nghĩa lμ nội dung cụ thể ở bên trong của nó, các lệnh xử lí, tính toán lμm theo cách nμy hay theo cách khác lμ không quan trọng miễn lμ hoμn thμnh phần công việc đ−ợc giaọ Các mô đun ch−ơng trình đ−ợc "ráp nối" với nhau thông qua các giao diện - interfaces - lμ các đầu vμo, đầu rạ Đầu vμo của mô đun nμy lμ đầu ra của mô đun khác. Cứ nh−
thế dữ liệu sẽ đ−ợc chuyển tiếp xử lí giữa các mô đun cho đến khi đạt kết quả cuối cùng.
Giống nh− việc kết cấu các máy móc thiết bị theo mô đun, lập trình theo mô đun cũng có đầy đủ những −u điểm t−ơng tự. Nó hỗ trợ cho phát hiện vμ sửa chữa lỗi, bảo trì vμ nâng cấp ch−ơng trình, sử dụng lại các mô đun ch−ơng trình con đã hoμn thiện vμ tổ chức các nhóm cộng tác thực hiện ch−ơng trình một cách mềm dẻo linh hoạt.
1.1.5 Ví dụ.
Sau khi đã phân tích ch−ơng trình lμm phép nhân hai ma trận ta có thể thiết kế ch−ơng trình nμy theo mô đun nh− sau:
- Mô đun 1: đảm bảo phần công việc nhập ma trận từ bμn phím. - Mô đun 2: thực hiện phép nhân hai ma trận sau khi đã kiểm tra điều kiện nhân đ−ợc.
- Mô đun 3: hiển thị ma trận (kết quả) ra mμn hình.
Mô đun 1 sẽ đ−ợc sử dụng hai lần để nhập lần l−ợt hai ma trận đầu vμo
A,B. Mô đun 2 sử dụng một lần để thực hiện phép nhân. Môđun 3 có thể sử dụng ba lần: in ra hai ma trận đầu vμo A,B vμ in ma trận kết quả C.