PHẦN II XÂY DỰNG BÀI HỌC VÀ TỔ CHỨC HOẠT ĐỘNG HỌC
2.5. Ví dụ minh họa về xây dựng bài học môn Tin học
2.5.1. Xây dựng bài học về câu lệnh lặp, Tin học lớp 11, THPT
Tên chủ đề: Câu lệnh lặp trong lập trình Pascal
Khái quát các hoạt động học tập: Khung công việc chung của dạy học câu lệnh lặp trong lập trình Pascal do dựa trên quan điểm hoạt động bao gồm các hoạt động chính như chỉ ra dưới đây. Trong đó, mỗi hoạt động gắn liền với một bước chuẩn trong dạy học một câu lệnh điều khiển của ngôn ngữ lập trình.
Hoạt động khởi động: Hoạt động này được thực hiện khi tiến hành bước thứ nhất của quá trình dạy học một câu lệnh điều khiển, đó là Giới thiệu cấu trúc điều khiển. Tại bước này, GV đưa ra tình huống có vấn đề gợi cho HS nhu cầu muốn tìm hiểu cấu trúc điều khiển và khám phá câu lệnh tương ứng để giải quyết tình huống đã nêu. Vấn đề được nêu ra nên gắn với thực tế gần gũi xung quanh HS hoặc thực tế đời sống xã hội. Vấn đề được nêu ra nếu thuận lợi sẽ được liên hệ với nội dung giáo dục để HS thấy được ý nghĩa, tác dụng của bài học và yêu thích môn học hơn.
Hoạt động hình thành kiến thức và luyện tập: Hai hoạt động này được thực hiện khi tiến hành bước thứ hai và thứ ba của quá trình dạy học một câu lệnh điều khiển, đó là Giới thiệu câu lệnh và Củng cố câu lệnh.
Trong bước giới thiệu câu lệnh, GV dẫn dắt HS khám phá cú pháp và hoạt động của câu lệnh. Có hai cách để thực hiện điều này. Cách thứ nhất: GV giới thiệu cú pháp và hoạt động của câu lệnh, rồi lấy ví dụ minh họa. Tiếp theo, GV nêu ví dụ khác hoặc đề nghị HS nêu ví dụ khác và yêu cầu HS giải thích hoạt động của câu lệnh trong ví dụ đó. Cách thứ hai: GV lấy một số ví dụ hoặc tình huống cụ thể mà ở đó câu lệnh được sử dụng. Tiếp theo GV đề nghị HS khái quát thành cú pháp tổng quát và nêu hoạt động của câu lệnh. Cách thứ hai phát huy được tính tích cực học tập của HS.
Trong bước củng cố câu lệnh, GV tổ chức cho HS hai hoạt động chủ đạo đó là nhận dạng và thể hiện câu lệnh. Hoạt động nhận dạng giúp HS viết đúng câu lệnh, tránh được các sai sót mà HS thường mắc phải ghi viết câu lệnh. Hoạt động thể hiện rèn luyện cho HS cách áp dụng trực tiếp câu lệnh để giải quyết một yêu cầu đơn giản; hoặc vận dụng câu lệnh để giải quyết các yêu cầu phức tạp hơn, đòi nhiều thao tác tư duy hơn.
Hoạt động vận dụng và tìm tòi, mở rộng: Hoạt động vận dụng được thực hiện khi tiến hành bước thứ tư của quá trình dạy học một câu lệnh điều khiển, đó là Ứng dụng câu lệnh để giải quyết bài toán. Tại bước này, GV đưa ra một số bài toán đơn giản và gần gũi với HS, rồi hướng dẫn HS sử dụng kết hợp câu lệnh vừa học với những câu lệnh khác để cài đặt thuật toán giải quyết bài toán.
Hoạt động tìm tòi, mở rộng dành cho đối tượng HS khá và có thể không thực hiện đối với lớp mà trình độ chung của HS là thấp. Có hai cách để tiến hành hoạt động này. Cách thứ nhất là tiến hành như một bước độc lập (bước thứ năm - mở rộng, đào sâu - của quá trình dạy học một câu lệnh điều khiển); Cách thứ hai là thực hiện lồng ghép như một pha phía sau (phrase of deep learning) ngay trong hoạt động vận dụng. Nội dung của hoạt động tìm tòi, mở rộng là những bài toán được GV gợi ra nhằm hướng dẫn HS vận dụng kết hợp các câu lệnh điều khiển với nhau để giải quyết các vấn đề phức tạp hoặc các vấn đề của liên môn.
Căn cứ vào chuẩn kiến thức, kĩ năng của chương trình, nội dung của sách giáo khoa của môn Tin học tổ/nhóm chuyên môn xác định các nội dung kiến thức liên quan với nhau được thể hiện ở một số bài/tiết hiện hành (thường trong cùng một chương), từ đó xây dựng thành một bài học theo chủ đề chung trong môn học. Trường hợp có những nội dung kiến thức liên quan đến nhiều môn học, các tổ chuyên môn liên quan cùng nhau lựa chọn nội dung để thống nhất xây dựng một bài học theo chủ đề liên môn.
Bước 2. Thiết kế nội dung bài học
Niklaus Wirth - nhà khoa học máy tính nổi tiếng người Thụy Sĩ, tác giả của bộ sách “Nghệ thuật lập trình” đã viết: “Thuật toán + cấu trúc dữ liệu = chương trình máy tính”. Trong đó, có thể coi “thuật toán” được xây dựng bởi “các cấu trúc điều khiển”. Các cấu trúc điều khiển trong một ngôn ngữ lập trình cụ thể được thể hiện bằng “các câu lệnh điều khiển”. Sử dụng các câu lệnh điều khiển, có thể tạo ra các chương trình máy tính để giải quyết hầu hết những bài toán của khoa học và thực tiễn.
Ngôn ngữ lập trình Pascal bao gồm các câu lệnh điều khiển sau đây:
- Câu lệnh quyết định (decision statements) if-then và if-then-else - Câu lệnh ghép hay câu lệnh hợp thành (block statement) begin-end - Câu lệnh lặp (loop statements) gồm ba câu lệnh lặp sau:
- Lặp với số lần biết trước for-to-do và for-downto-do
- Lặp với số lần không biết trước, kiểm tra điều kiện trước while-do - Lặp với số lần không biết trước, kiểm tra điều kiện sau repeat-until
Trừ câu lệnh cuối cùng, các câu lệnh còn lại trên đây được giới thiệu trong chương III, SGK Tin học 11 hiện hành. Như vậy, chủ đề bài học tập trung vào tìm hiểu cấu trúc và câu lệnh lặp, được dạy sau cấu trúc và câu lệnh rẽ nhánh. Do vậy chủ đề học tập có thể được thiết kế với các nội dung cụ thể như sau:
Thứ tự nội dung Nội dung kiến thức Số tiết Nội dung 1 Cấu trúc lặp
Nội dung 2 Câu lệnh lặp for-do 2
Nội dung 3 Câu lệnh lặp while-do 1 Bài tập, thực hành và ôn tập 3 Bước 3. Xác định mục tiêu đầu ra cho bài học
Chủ đề và nội dung học tập trên đây dựa trên chuẩn kiến thức kĩ năng sau:
Kiến thức
- Hiểu nhu cầu của cấu trúc lặp trong biểu diễn thuật toán
- Hiểu cấu trúc lặp kiểm tra điều kiện trước, cấu trúc lặp với số lần định trước - Biết cách vận dụng đúng đắn từng loại cấu trúc lặp vào tính huống cụ thể - Bước đầu hình thành được khái niệm về lập trình có cấu trúc.
Kĩ năng
- Mô tả được thuật toán của một số bài toán đơn giản có sử dụng lệnh lặp.
- Viết đúng các lệnh lặp kiểm tra điều kiện trước, lệnh lặp với số lần định trước.
- Viết được thuật toán của một số bài toán đơn giản.
Bước 4. Mô tả mức độ yêu cầu kiểm tra, đánh giá
Bảng dưới đây xác định và mô tả 4 mức độ yêu cầu (nhận biết, thông hiểu, vận dụng, vận dụng cao) của mỗi loại câu hỏi/bài tập có thể sử dụng để kiểm tra, đánh giá năng lực và phẩm chất của học sinh trong dạy học chủ đề bài học “Câu lệnh trong lập trình Pascal”
BẢNG THAM CHIẾU CÁC MỨC YÊU CẦU CẦN ĐẠT CỦA CÂU HỎI, BÀI TẬP KIỂM TRA, ĐÁNH GIÁ
Nội dung
Câu hỏi/bài
tập
Nhận biết (Mô tả yêu cầu cần đạt)
Thông hiểu (Mô tả yêu cầu
cần đạt)
Vận dụng thấp (Mô tả yêu cầu cần
đạt)
Vận dụng cao (Mô tả yêu cầu
cần đạt) 1. Cấu trúc
lặp
Câu hỏi/
bài tập định tính (Trắc nghiệm, Tự luận)
HS chỉ ra được trong một tình huống cụ thể có cấu trúc lặp hay không và nó được biểu diễn đúng không.
HS giải thích được ý nghĩa và hoạt động của một cấu trúc lặp trong một tình huống cho trước.
HS lấy được ví dụ sử dụng cấu trúc lặp để giải quyết một tình huống cụ thể được đặt ra.
2. Câu lệnh lặp for-do
Câu hỏi/
bài tập định tính
HS mô tả được cú pháp và ngữ nghĩa của câu
HS giải thích được hoạt động của câu lệnh for-
Nội dung
Câu hỏi/bài
tập
Nhận biết (Mô tả yêu cầu cần đạt)
Thông hiểu (Mô tả yêu cầu
cần đạt)
Vận dụng thấp (Mô tả yêu cầu cần
đạt)
Vận dụng cao (Mô tả yêu cầu
cần đạt) (Trắc
nghiệm, Tự luận)
lệnh for-do (2 dạng for-to-do và for-downto- do.)
do (hai dạng) trong một tình huống cụ thể
Bài tập định lượng (Trắc nghiệm, Tự luận)
HS nhận ra được một câu lệnh for-do (2 dạng) viết đúng hay sai trong một tình huống cụ thể.
HS giải thích được hoạt động của một đoạn chương trình cụ thể chứa câu lệnh for-do (một trong hai dạng).
HS sử dụng câu lệnh for-do (một trong hai dạng) để viết được một đoạn chương trình thực hiện một tình huống quen thuộc.
HS sử dụng câu lệnh for-do (một trong hai dạng) để viết được một đoạn chương trình thực hiện một tình huống mới.
Bài tập thực hành
HS sửa được lỗi cú pháp của câu lệnh for-do (2 dạng) trong chương trình có lỗi.
HS sửa được lỗi ngữ nghĩa của câu lệnh for-do (2 dạng) trong chương trình có lỗi.
HS sử dụng câu lệnh for-do và các câu lệnh khác để viết được chương trình giải quyết vấn đề trong tình huống quen thuộc.
HS sử dụng câu lệnh for-do và các câu lệnh khác để viết được chương trình giải quyết vấn đề trong tình huống mới.
3. Câu lệnh lặp while- do
Câu hỏi/
bài tập định tính (Trắc nghiệm, Tự luận)
HS mô tả được cú pháp và ngữ nghĩa của câu lệnh while-do.
HS giải thích được hoạt động của câu lệnh while-do trong một tình huống cụ thể
Nội dung
Câu hỏi/bài
tập
Nhận biết (Mô tả yêu cầu cần đạt)
Thông hiểu (Mô tả yêu cầu
cần đạt)
Vận dụng thấp (Mô tả yêu cầu cần
đạt)
Vận dụng cao (Mô tả yêu cầu
cần đạt) Bài tập HS nhận ra HS giải thích HS sử dụng HS sử dụng câu định lượng được một câu được hoạt động câu lệnh while- lệnh while-do và (Trắc lệnh while-do của một đoạn do và các câu các câu lệnh nghiệm, viết đúng hay chương trình cụ lệnh khác để khác để viết Tự luận) sai trong một thể chứa câu viết được được chương
tình huống cụ lệnh while-do. chương trình trình giải quyết
thể. giải quyết vấn vấn đề trong
đề trong tình tình huống mới.
huống quen thuộc.
Bài tập HS sửa được HS sửa được lỗi HS sử dụng HS sử dụng câu thực hành lỗi cú pháp của ngữ nghĩa của câu lệnh while- lệnh while-do và
câu lệnh while- câu lệnh while- do và các câu các câu lệnh do trong do trong chương lệnh khác để khác để viết chương trình trình có lỗi. viết được được chương
có lỗi. chương trình trình giải quyết
giải quyết vấn vấn đề trong đề trong tình tình huống mới.
huống quen thuộc.
MÃ CÂU HỎI CỦA BẢNG THAM CHIẾU KIỂM TRA, ĐÁNH GIÁ
Nội dung Câu hỏi/bài tập
Nhận biết (Mô tả yêu cầu cần đạt)
Thông hiểu (Mô tả yêu cầu cần đạt)
Vận dụng thấp (Mô tả yêu cầu
cần đạt)
Vận dụng cao (Mô tả yêu cầu
cần đạt) Bài tập định
lượng ND1.ĐL.NB.* ND1.ĐL.TH.* ND1.ĐL.VDT.* ND1.ĐL.VDC.*
Bài tập thực
hành ND1.TH.TH.* ND1.TH.VDT.* ND1.TH.VDT.*
1. Cấu trúc lặp
Câu hỏi/ bài
tập định tính ND1.ĐT.NB.* ND1.ĐT.TH.* ND1.ĐT.VDT.*
2. Câu lệnh lặp for-do
Câu hỏi/ bài
tập định tính ND2.ĐT.NB.* ND2.ĐT.TH.*
Bài tập định
lượng ND2.ĐL.NB.* ND2.ĐL.TH.* ND2.ĐL.VDT.* ND2.ĐL.VDC.*
Bài tập thực
hành ND2.TH.NB.* ND2.ĐL.TH.* ND2.ĐL.VDT.* ND2.ĐL.VDC.*
3. Câu lệnh lặp while-do
Câu hỏi/ bài
tập định tính ND3.ĐT.NB.* ND3.ĐT.TH.*
Bài tập định
lượng ND3.ĐL.NB.* ND3.ĐL.TH.* ND3.ĐL.VDT.* ND3.ĐL.VDC.*
Bài tập thực
hành ND3.TH.NB.* ND3.TH.TH.* ND3.TH.VDT.* ND3.TH.VDT.*
Bước 5. Biên soạn các câu hỏi/bài tập/phiếu học tập
Căn cứ vào nội dung của chủ đề đã lựa chọn, dựa trên trình độ hiện có của học sinh, các mục tiêu năng lực được xác định để biên soạn các phiếu học tập, câu hỏi/bài tập cụ thể theo các mức độ yêu cầu đã mô tả để sử dụng trong quá trình tổ chức các hoạt động dạy học và kiểm tra, đánh giá, luyện tập theo bài học đã xây dựng. Các câu hỏi bài tập cho 3 nội dung trên đây của chủ đề học tập khá dài nên sẽ được trình bày ở sau bước 6.
Bước 6. Thiết kế tiến trình dạy học
Căn cứ vào các hoạt động học tập của HS được giới thiệu trong phần “Xác định chủ đề học tập” và căn cứ vào các nội dung học tập được giới thiệu trong phần “Thiết kế nội dung chủ đề”, tiến trình dạy học chủ đề “Các câu lệnh lặp trong lập trình Pascal” được mô tra như bảng dưới đây:
Tiết
thứ Tên bài và nội dung Hoạt động học tập của HS Bài 2: Câu lệnh lặp với số lần biết trước (02 tiết)
TIẾN TRÌNH DẠY HỌC
Chủ đề: Các câu lệnh lặp trong lập trình Pascal
1, 2
ND1. Cấu trúc lặp với số lần lặp biết trước
HĐ khởi động
ND2. Câu lệnh for-do HĐ hình thành kiến thức và luyện tập HĐ vận dụng và tìm tòi, mở rộng
3
Bài 3: Câu lệnh lặp với số lần không biết trước (01 tiết) ND3. Câu lệnh while-do
- Cấu trúc lặp với số lần không biết trước
- Câu lệnh while-do
HĐ khởi động
HĐ hình thành kiến thức và luyện tập HĐ vận dụng và tìm tòi, mở rộng 4, 5 Bài tập và thực hành (02 tiết) HĐ luyện tập và vận dụng
6 Ôn tập (01 tiết)
Chú ý: Các hoạt động vận dụng và tìm tòi mở rộng có thể không thực hiện hết các nội dung được nêu trong bài học, và có thể hướng dẫn HS học ở nhà.
Về phương pháp dạy học
Các bước dạy học một câu lệnh của ngôn ngữ lập trình được thực hiện dựa trên quan điểm hoạt động như sau:
Ở hoạt động hình thành kiến thức (giới thiệu các câu lệnh điều khiển), GV có thể tiếp cận dạy học dựa trên thuyết kiến tạo bằng cách đi từ các ví dụ cụ thể để HS khái quát thành cú pháp và ngữ nghĩa của câu lệnh.
Ở hoạt động luyện tập và vận dụng (củng cố câu lệnh), GV có thể tiếp cận dạy học theo định hướng tích hợp bằng cách thay các ví dụ trong SGK hiện hành bằng các bài toán của các môn học khác, đặc biệt là Toán, Vật lí, và Hóa học ở chương trình các lớp dưới hoặc của học kì 1, lớp 11. Ngoài ra, GV có thể sử dụng phương pháp
“dạy học phát hiện và giải quyết vấn đề” (problem posing and problem solving) để dẫn dắt HS tìm tòi, khám phá cách giải quyết các bài toán phù hợp được GV nêu ra.
Ở các tiết bài tập, thực hành và ôn tập, GV có thể tiến hành các PPDH tích cực khác như: dạy học hợp tác (cooperation learning); dạy học dựa trên tình huống (situation based learning); hoặc dạy học dựa trên trường hợp (case based learning).
Nội dung tiếp theo trong tài liệu này sẽ chỉ giới thiệu minh họa tiến trình dạy học của một tiết học nhưng có với nội dung trọn vẹn một bài học.