Phát Triển Biểu Hiện Của Tư Duy Điện Toán


2. Phát triển biểu hiện của tư duy điện toán

- Phát triển khả năng phân tích vấn đề, phân tích từng hoạt động cụ thể của các cú pháp thành các hoạt động thành phần để nắm rõ hoạt động của bất kỳ cú pháp nào. Cũng như phát triển khả năng vẽ sơ đồ phân tích hoạt động.

- Phát triển khả năng nhận dạng mẫu để chọn ra phương thức cần khai báo trong từng lớp để sử dụng được sự kế thừa trong lập trình hướng đối tượng.

- Phát triển khả năng phân tích, thiết kế thuật toán để xây dựng được chương trình thực hiện nhiệm vụ được yêu cầu.

B. DỰ KIẾN TỐ CHỨC CÁC HOẠT ĐỘNG DẠY HỌC Hoạt động 1: Gợi động cơ

GV? Trong cuộc sống thực tế, kế thừa là việc thừa hưởng lại những gì mà người khác để lại. Ví như con kế thừa tài sản của cha mẹ,…

Trong lập trình cũng vậy, kế thừa trong lập trình là cách một lớp có thể thừa hưởng lại những thuộc tính, phương thức từ một lớp khác và sử dụng chúng như là của bản thân mình.

Hiểu một cách trừu tượng, kế thừa là một đặc điểm của ngôn ngữ hướng đối tượng dùng để biểu diễn mối quan hệ cụ thể hóa - tổng quát hóa giữa các lớp.

Ví dụ: Giả sử có lớp SV chứa thông tin chung của một người học như MaSV, Hoten, Ngsinh,… Ta biết rằng lớp SVCQ, SVVLVH là trường hợp cụ thể của lớp SV, ngược lại lớp SV là trường hợp tổng quát của SVCQ, SVVLVH.

Có thể bạn quan tâm!

Xem toàn bộ 235 trang tài liệu này.

Do vậy, các bạn hiểu ý nghĩa của kế thừa này như thế nào? Và trong lập trình hướng đối tượng sẽ có các dạng kế thừa nào?

Hoạt động 2: Tìm hiểu về sự kế thừa trong lập trình hướng đối tượng

Dạy học kĩ thuật lập trình cho sinh viên ngành Kĩ thuật điện tử - viễn thông theo hướng phát triển tư duy điện toán - 17

* Mục tiêu hoạt động:

Giải thích được ý nghĩa của kế thừa trong lập trình hướng đối tượng.


* Sản phẩm học tập của SV: câu trả lời cho các câu hỏi của GV đặt ra về ý nghĩa của sự kế thừa trong lập trình.

* Cách thức thực hiện hoạt động của GV và SV:

- Chuyển giao nhiệm vụ: GV đặt vấn đề bằng các câu hỏi, yêu cầu SV trả lời câu hỏi.

GV: Các bạn hiểu ý nghĩa của kế thừa này trong lập trình như thế nào?

GV: Trong bài học trước, một lớp thường có những thành phần nào?

Vậy lớp dẫn xuất sẽ được kế thừa những thành phần nào của lớp cơ sở?

- Thực hiện nhiệm vụ: SV tìm hiểu tài liệu rồi trả lời câu hỏi GV đưa ra.

- GV nhận xét câu trả lời của SV và nêu tóm tắt lại những ý nghĩa về sự kế thừa trong lập trình hướng đối tượng.

- GV giới thiệu về sự kế thừa và phân tích từng thành phần cơ bản trong lớp kế thừa và cách thức kế thừa các thành phần trong các lớp với nhau.

* Nội dung hoạt động: Nội dung được trình bày chi tiết trong PHỤ LỤC 3. Hoạt động 3: Tìm hiểu và phân biệt các dạng kế thừa trong lập trình hướng đối tượng

* Mục tiêu hoạt động:

Phân biệt được các dạng kế thừa trong lập trình hướng đối tượng.

* Sản phẩm học tập của SV: Sơ đồ biểu diễn các dạng kế thừa trong lập trình.

* Cách thức thực hiện hoạt động của GV và SV:

- Chuyển giao nhiệm vụ: GV đặt vấn đề bằng các câu hỏi, yêu cầu SV trả lời câu hỏi.

GV: Trong lập trình hướng đối tượng có nhiều dạng kế thừa, chúng ta có thể phân biệt sự khác nhau giữa những dạng kế thừa như thế nào?

- Thực hiện nhiệm vụ: SV trả lời câu hỏi GV đưa ra.

- GV nhận xét câu trả lời của SV.


- GV giới thiệu về sự kế thừa và vẽ sơ đồ biểu diễn từng dạng kế thừa, phân biệt sự khác nhau về cách thức kế thừa của từng thành phần cơ bản trong từng dạng kế thừa.

* Nội dung hoạt động: Nội dung được trình bày chi tiết trong PHỤ LỤC 3.

Hoạt động 4: Khám phá dạng kế thừa đơn

* Mục tiêu hoạt động:

- Giải thích được cách thức kế thừa giữa các lớp dẫn xuất và lớp cơ sở của dạng kế thừa cụ thể là kế thừa đơn.

- Viết được chương trình có ứng dụng kế thừa đơn.

- Xử lý linh hoạt các trường hợp dẫn xuất trong kế thừa đơn.

- Phát hiện và xử lý được lỗi cú pháp trong quá trình viết chương trình có ứng dụng kế thừa đơn.

* Sản phẩm học tập của SV: Bảng tổng hợp về ý nghĩa của các kiểu dẫn xuất thể hiện trong sự kế thừa; Chương trình ứng dụng có sử dụng kế thừa đơn cho một bài toán nào đó.

* Cách thức thực hiện hoạt động của GV và SV:

- Chuyển giao nhiệm vụ: GV đặt vấn đề bằng các câu hỏi, yêu cầu SV trả lời câu hỏi.

GV: Trong bài học trước, các bạn đã được biết phạm vi tác dụng của các thành phần trong một lớp. Vậy dựa vào đâu để xác định được phạm vi tác dụng của các thành phần đó trong một lớp?

SV trả lời, GV hỏi rõ tác dụng cụ thể của từng loại phạm vi như public, private và protected. Sau đó, GV tiếp tục gợi mở vấn đề với phạm vi “protected” có gì cần chú ý khi sử dụng sự kế thừa trong lớp.

- Thực hiện nhiệm vụ: GV cho SV thảo luận nhóm, SV báo cáo kết quả tự thực hiện và trả lời câu hỏi, yêu cầu GV đưa ra.

- GV nhận xét câu trả lời của SV.


- GV giới thiệu về cách khai báo, phân tích từng thành phần trong cú pháp khai báo trong dạng kế thừa đơn; vẽ hình minh họa từng thành phần trong lớp dẫn xuất nhằm phát triển khả năng tường minh hóa cấu trúc của lớp; lập bảng tổng hợp nhằm giúp SV phân biệt được phạm vi tác dụng của các thành phần của lớp dẫn xuất cũng như lớp cơ sở đối với từng kiểu dẫn xuất khác nhau; giải thích cấu tử và hủy tử trong lớp dẫn xuất; phân tích sự tương thích của lớp cơ sở và lớp dẫn xuất.

* Nội dung hoạt động: Nội dung được trình bày chi tiết trong PHỤ LỤC 3.

Hoạt động 5: Hướng dẫn học ở nhà

Bài tập 1: Với mục đích tính diện tích các hình vuông, hình chữ nhật, hình tròn, hình thang, hình tam giác.

Hãy tổ chức các lớp sao cho có thể kế thừa thành phần dữ liệu cài đặt:

- Cấu tử

- Nhập, xuất

- Tính diện tích.

Bài tập 2: Thư viện có 3 loại tài liệu: sách, tạp chí, giáo trình. Có các dữ liệu chung: mã tài liệu, vị trí, số lượng, đơn giá. Và có dữ liệu riêng như sau:

- Sách: tác giả, tên sách, năm xuất bản.

- Tạp chí: tên tạp chí, chuyên ngành.

- Giáo trình: tác giả, tên.

Tổ chức các lớp sao cho kế thừa được các dữ liệu chung. Tiến hành cài đặt:

- Cấu tử, hủy tử

- Thủ tục nhập, xuất.

2.3.2.2 Giáo án minh họa số 2

Nội dung bài “Bài tập về Kế thừa” trong học phần “Kĩ thuật lập trình”.

Tác giả trình bày tóm tắt mục tiêu bài học về kiến thức và kỹ năng, giới thiệu những hoạt động chính dự kiến thực hiện tại lớp. Nội dung cụ thể của giáo án bài dạy được trình bày ở PHỤ LỤC 4.


A. MỤC TIÊU BÀI HỌC

1. Kiến thức – Kỹ năng:

- Vận dụng kiến thức đã học để viết được chương trình có ứng dụng kế thừa nhằm giải quyết một vài bài toán đơn giản gắn liền với thực tiễn.

- Phát hiện và xử lý được lỗi cú pháp trong quá trình viết chương trình.

2. Phát triển biểu hiện của tư duy điện toán

- Phát triển khả năng phân tích vấn đề, phân tích từng hoạt động cụ thể của các cú pháp thành các hoạt động thành phần để nắm rõ hoạt động của bất kỳ cú pháp nào. Cũng như phát triển khả năng vẽ sơ đồ phân tích hoạt động.

- Phát triển khả năng nhận dạng mẫu để chọn ra phương thức cần khai báo trong từng lớp để sử dụng được sự kế thừa trong lập trình hướng đối tượng.

- Phát triển khả năng phân tích, thiết kế thuật toán để xây dựng được chương trình thực hiện nhiệm vụ được yêu cầu.

B. CÔNG VIỆC CHUẨN BỊ

1. Giáo viên chuẩn bị:

- Nghiên cứu nội dung bài học: Nghiên cứu Giáo trình Kĩ thuật lập trình (dành cho SV KTĐT, VT), tài liệu tham khảo liên quan, soạn kế hoạch giảng dạy, giáo án bài dạy theo hướng tổ chức hoạt động học cho SV.

- Xây dựng kế hoạch giảng dạy, giáo án bài dạy theo hướng tổ chức hoạt động học cho SV với hệ thống câu hỏi gợi ý hoạt động học tập, hệ thống các bài tập luyện tập kỹ năng trong bài học.

2. SV chuẩn bị:

- Ôn tập các kiến thức đã học trong các tiết học trước liên quan đến nội dung bài học.

3. Phương tiện dạy học:

- Giáo trình Kĩ thuật lập trình, tài liệu tham khảo.

- Máy tính, máy chiếu


- Bài giảng (điện tử)

- Công cụ lập trình (C/C++)

C. PHƯƠNG PHÁP DẠY HỌC

- Phương pháp dạy học: Dạy học hợp tác, kĩ thuật “mảnh ghép”.

D. NỘI DUNG HOẠT ĐỘNG

- Luyện tập viết chương trình có sử dụng cách thức kế thừa đơn trong chương trình.

Bài tập 1: Với mục đích tính diện tích các hình vuông, hình chữ nhật, hình tròn, hình thang, hình tam giác.

Hãy tổ chức các lớp sao cho có thể kế thừa thành phần dữ liệu cài đặt:

- Cấu tử

- Nhập, xuất

- Tính diện tích.

Bài tập 2: Thư viện có 3 loại tài liệu: sách, tạp chí, giáo trình. Có các dữ liệu chung: mã tài liệu, vị trí, số lượng, đơn giá. Và có dữ liệu riêng như sau:

- Sách: tác giả, tên sách, năm xuất bản.

- Tạp chí: tên tạp chí, chuyên ngành.

- Giáo trình: tác giả, tên sách.

Tổ chức các lớp sao cho kế thừa được các dữ liệu chung. Tiến hành cài đặt:

- Cấu tử, hủy tử

- Thủ tục nhập, xuất.

E. GỢI Ý TIẾN TRÌNH DẠY HỌC Hoạt động 1: Luyện tập

* Mục tiêu hoạt động:

- Tạo cơ hội cho SV vận dụng cũng như tăng mức độ thành thạo trong việc sử dụng dạng kế thừa đơn trong lập trình hướng đối tượng.


- Tạo hứng thú học tập cho SV thông qua các bài toán liên hệ chặt chẽ với thực tiễn.

* Sản phẩm học tập của SV: Đoạn chương trình thực thi bài toán bằng ngôn ngữ lâp trình.

* Cách thức thực hiện hoạt động của GV và SV:

- Kĩ thuật “mảnh ghép” thường mất nhiều thời gian dành cho việc tổ chức, tạo các nhóm.

- Kĩ thuật “mảnh ghép” đòi hỏi các nhiệm vụ giao cho mỗi nhóm chuyên gia phải tương đương nhau về khổi lượng công việc và đặc biệt là phải có tính độc lập cao. “Tính độc lập cao” nghĩa là không có công việc nào phải thực hiện sau một công việc khác. Do đó, hai bài tập nêu trong hoạt động là độc lập với nhau và có độ khó tương đương đương nhau.

- Kĩ thuật “mảnh ghép” đòi hỏi GV phải rất chú trọng vào khả năng quan sát và bao quát lớp để đảm bảo được sự điều tiết các hoạt động học của SV. Nói chung, các bài tập đã nêu trong hoạt động là không khó vì chúng chỉ yêu cầu ở mức vận dụng trực tiếp. Tuy nhiên, đối với lớp có khả năng nhận thức thấp, GV sẽ điều tiết như sau:

+ Ở bước 2, nếu sắp hết thời gian, với mỗi nhiệm vụ đã giao, GV chỉ cần một nhóm chuyên gia làm đúng và khi nhóm đó làm xong thì lập tức yêu cầu SV chuyển sang bước 3.

+ Ở bước 3, nếu thấy hoạt động “chuyển giao sản phẩm” không có hiệu quả tốt, GV cho các nhóm dừng lại và chuyển sang phương pháp dạy học truyền thống. Cụ thể ở đây, GV sẽ trình bày và giải thích các chương trình giải quyết bài tập 1 và bài tập 2.

- Chuyển giao nhiệm vụ: GV đưa ra nội dung yêu cầu 2 bài tập có sử dụng kế thừa đơn, GV chia lớp thành 2 nhóm (A và B). Sau đó, mỗi nhóm chọn một bài tập.


- Thực hiện nhiệm vụ: Các nhóm SV thảo luận và hình thành bài toán. GV hỗ trợ, theo dõi quá trình giải quyết vấn đề của nhóm yếu hơn.

- Báo cáo nhiệm vụ: Trao đổi chéo giữa các nhóm bài làm của từng nhóm. GV đưa ra tiêu chí và đáp án, theo dõi, hỗ trợ các nhóm tự đánh giá.

Khi các nhóm SV đánh giá chéo, GV lưu ý SV những điểm sau: cần bám sát các tiêu chí đánh giá, hỏi GV nếu chưa hiểu rõ; phải đảm bảo công bằng, khách quan (đánh giá theo tiêu chí, không dựa vào cảm nhận chủ quan); thông báo cho GV biết những trường hợp không có vào bảng tiêu chí đã mô tả để GV kịp thời bổ sung và điều chỉnh.

- GV cùng SV thảo luận bài làm của từng nhóm. GV sẽ tóm lại và khái quát thành một lớp bài toán.

* Nội dung hoạt động: Nội dung được trình bày chi tiết trong PHỤ LỤC 4.

Hoạt động 2: Củng cố và hướng dẫn học ở nhà

- Nhận xét chung về tinh thần, thái độ và kết quả lập trình của các nhóm.

- Khen ngợi các nhóm làm bài nhanh và đúng, nhóm chấm bài chính xác.

- Gợi ý một số bài toán có vận dụng dạng kế thừa đơn trong lập rình hướng đối tượng.

..... Xem trang tiếp theo?
⇦ Trang trước - Trang tiếp theo ⇨

Ngày đăng: 02/09/2022