Giáo Án Minh Họa 1 Cho Biện Pháp 2 Bài “Sự Kế Thừa Trong Lập Trình Hướng Đối Tượng”


SV.13. Theo các bạn, SV có thường xuyên đọc tài liệu, giáo trình hoặc là tìm đọc thông tin trên internet nội dung bài học trước khi đến lớp học?

1. Rất thường xuyên.

2. Thường xuyên.

3. Thỉnh thoảng.

4. Chưa bao giờ.

SV.14. Theo các bạn, SV có thường xuyên làm bài tập về nhà hoặc tham gia làm việc nhóm sau giờ lên lớp hay không?

1. Rất thường xuyên.

2. Thường xuyên.

3. Thỉnh thoảng.

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

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

4. Chưa bao giờ.

SV.15. Theo các bạn, SV có thường xuyên chủ động hỏi GV về những vấn đề mình thắc mắc, hay là mạnh dạn trình bày, phát biểu ý kiến của mình với GV hay khô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 - 23

1. Rất thường xuyên.

2. Thường xuyên.

3. Thỉnh thoảng.

4. Chưa bao giờ.

SV.16. Theo các bạn, SV có thường xuyên chờ GV hướng dẫn, gợi ý cách giải quyết vấn đề rồi mới làm hay không?

1. Rất thường xuyên.

2. Thường xuyên.

3. Thỉnh thoảng.

4. Chưa bao giờ.


SV.17. Theo các bạn, SV có thường xuyên chỉ tập trung học trong thời gian ôn thi hoặc trước thời gian ôn thi một vài tuần hay không?

1. Rất thường xuyên.

2. Thường xuyên.

3. Thỉnh thoảng.

4. Chưa bao giờ.

SV.18. Theo các bạn, SV có thường xuyên chỉ học những nội dung ghi chép trong vở trên lớp mà không tham khảo hay tìm kiếm tài liệu học thêm nữa hay không?

1. Rất thường xuyên.

2. Thường xuyên.

3. Thỉnh thoảng.

4. Chưa bao giờ.


Xin trân trọng cảm ơn sự hợp tác của các bạn sinh viên!


PHỤ LỤC 3 – GIÁO ÁN MINH HỌA 1 CHO BIỆN PHÁP 2 Bài “SỰ KẾ THỪA TRONG LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG”

(3 tiết trên lớp)

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

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

a. Kiến thức

- Trình bày được ý nghĩa và các dạng kế thừa từ lớp cơ sở.

- 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.

b. Kỹ năng

- Viết được chương trình có ứng dụng kế thừa trong lập trình hướng đối tượng.

- 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.

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: Thuyết trình, Vấn đáp, Phát hiện và giải quyết vấn đề.

D. NỘI DUNG BÀI HỌC

- Giới thiệu ý nghĩa về sự kế thừa.

- Các dạng kế thừa trong lập trình hướng đối tượng.

- Tìm hiểu kỹ một dạng kế thừa cụ thể: kế thừa đơn.

E. GỢI Ý TIẾN TRÌNH 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.

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 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?

A

1. Tổng quan về kế thừa

1.1 Ý nghĩa về kế thừa trong lập trình hướng đối tượng

- Kế thừa là việc sử dụng lại các đoạn mã trong chương trình.

- Tiết kiệm thời gian lập trình.

- Độ tin cậy của chương trình cao.

1.2 Kế thừa trong Lập trình hướng đối tượng

- Cho phép xây dựng một lớp mới bằng cách sử dụng lại các thành phần của các lớp đã có.

- Lớp B kế thừa từ lớp A. Khi đó, A gọi là lớp cơ sở (base class), B gọi là lớp dẫn xuất (derived class).

Ký hiệu:

Lớp cơ sở


Lớp dẫn xuất

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.



B


SVHeCQ

- Những thành phần lớp dẫn xuất B có thể được kế thừa từ lớp cơ sở A:

Lớp dẫn xuất B có thể kế thừa tất cả các thành phần của lớp cơ sở, trừ các thành phần sau:

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

+ Hàm bạn (friend)

+ Toán tử: phép gán

- Bất kỳ lớp nào đều có thể làm lớp cơ sở cho các lớp dẫn xuất tiếp theo. Chẳng hạn, giả sử cần quản lý sinh viên của trường, sự kế thừa trong chương trình quản lý thể hiện như sau:

SV


Lớp SVHeCQ và lớp SVHeVLVH là lớp dẫn xuất của lớp SV.

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ở?



SVHeVLVH

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

A

1.3 Các dạng kế thừa

a. Kế thừa đơn

Lớp dẫn xuất kế thừa từ một lớp cơ sở nguyên thủy (tức là lớp không kế thừa).

Ký hiệu: Lớp cơ sở


Lớp dẫn xuất

GV? Có 5 dạng kế thừa trong lập trình hướng đối tượng, chúng ta cần phân biệt sự khác nhau của từng dạng như thế nào?




B


b. Kế thừa đa mức

Lớp cơ sở là một dẫn xuất từ một lớp khác.

A

Lớp cơ sở (nguyên thủy)


B

Lớp dẫn xuất của lớp A

Lớp cơ sở của lớp C


C

Lớp dẫn xuất của lớp B

c. Kế thừa phân cấp

Các lớp được kế thừa dạng hình cây.


A



B

C

D


E

F

G

H

d. Kế thừa bội

- Một lớp dẫn xuất kế thừa từ nhiều lớp cơ sở.


A

B

C



D

DIEM

UUTIEN

SV

- Kế thừa bội là sự tổng hợp các lớp cơ sở để tạo ra một lớp mới. Chẳng hạn,


SV_HB




- Kế thừa bội cho phép lập trình theo nhóm.

e. Kế thừa phức hợp

- Là kế thừa kết hợp giữa kế thừa đa mức và kế thừa bội.

B

D

D

A

A

C

B

C


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

2. Kế thừa đơn

2.1 Khai báo

- Cho trước lớp cơ sở A, xây dựng một lớp dẫn xuất B kế thừa A với cú

pháp như sau:

Class B : <kiểu_dẫn_xuất> A

{

Khai báo thành phần của lớp B

}

GV: Để có thể hiểu rõ và vận dụng chính xác các dạng kế thừa, trong bài hôm nay, chúng ta sẽ lần lượt tìm hiểu kỹ chi tiết cách khai báo, tính chất và nguyên tắc hoạt động của dạng kế thừa đơn như thế nào?


GV: Phân tích từng thành phần trong cú pháp khai báo dạng kế thừa đơn.

Trong đó:

- class

- A

- B

: từ khóa để khai báo lớp

: tên lớp cơ sở (lớp cha/mẹ)

: tên lớp dẫn xuất (lớp thừa kế, lớp con)

- Các kiểu dẫn xuất:

+ private

+ protected

+ public

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

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