Hoạt động 1: Mở đầu · 5 phút
Chương trình một khối: khó kiểm thử ở đâu?
a) Mục tiêu
HS nhận ra hạn chế của chương trình viết gộp nhập, xử lí và xuất trong một đoạn, từ đó xác định nhu cầu mô đun hóa.
b) Nội dung
GV mô tả một chương trình giả định: một đoạn mã vừa yêu cầu người dùng nhập dãy số từ bàn phím, vừa tính tổng các số dương bằng vòng lặp, vừa in kết quả ngay trong cùng đoạn. HS trả lời hai câu hỏi: (1) Muốn thử phần tính tổng với dãy [-3,4,9] thì phải làm gì? (2) Nếu muốn sửa cách nhập dữ liệu thì có ảnh hưởng gì đến phần tính không?
c) Sản phẩm
HS nêu được ít nhất hai khó khăn: phải nhập tay mỗi lần kiểm thử, khó chạy tự động nhiều ca; sửa phần nhập có thể làm sai phần tính vì hai phần lẫn vào nhau. Từ đó HS nhận ra cần tách phần tính thành một hàm nhận dãy và trả kết quả.
d) Tổ chức thực hiện
Hoạt động của giáo viên
Hoạt động của học sinh
Giáo viên
Bước 1: Chuyển giao nhiệm vụ
GV chiếu đoạn mô tả chương trình gộp nhập, tính và xuất. GV nêu hai câu hỏi và yêu cầu HS suy nghĩ 1 phút.
Học sinh
HS lắng nghe, đọc đoạn mô tả trên bảng, chuẩn bị ý kiến cá nhân.
Giáo viên
Bước 2: Thực hiện nhiệm vụ
GV quan sát, gợi ý nếu HS chưa rõ: Nếu muốn thử nhiều dãy khác nhau thì sao?
Học sinh
HS suy nghĩ, ghi nhanh 1 đến 2 ý vào nháp. Dự kiến: Phải nhập lại từ bàn phím nhiều lần; khó thử đúng phần tính khi không có đầu vào cố định.
Giáo viên
Bước 3: Báo cáo, thảo luận
GV mời 2 HS trình bày, ghi ý chính lên bảng.
Học sinh
HS trình bày: Phải nhập tay, chậm và dễ sai; sửa phần nhập có thể làm hỏng phần tính.
Giáo viên
Bước 4: Kết luận, nhận định
GV nhận xét và dẫn vào bài: Để kiểm thử dễ dàng, ta cần tách chương trình thành các mô đun có trách nhiệm và giao diện rõ ràng.
Học sinh
HS ghi tên bài Bài 28: Thiết kế chương trình theo mô đun vào vở.