1. TRƯỜNG ĐHCN VIỆT - HUNG
KHOA CNTT
CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
Độc lập – Tự do – Hạnh phúc
ĐỀ CƯƠNG CHI TIẾT HỌC PHẦN
(Mẫu chương trình đào tạo tín chỉ)
1. Thông tin chung về học phần
- Tên học phần: Lập trình Hướng đối tượng
- Mã học phần: 81499
- Số tín chỉ: 03(2,1,6)
- Thuộc chương trình đào tạo của khóa 45, bậc: Đại học.
- Loại học phần: Bắt buộc
- Các học phần tiên quyết: Phương pháp lập trình (82456)
- Giờ tín chỉ đối với các hoạt động:
+ Nghe giảng lý thuyết: 23 tiết
+ Làm bài tập trên lớp: 7 tiết
+ Thảo luận: 0 tiết
+ Thực hành, thực tập, thực tế:… 0 giờ
+ Tự học: …. 90 giờ
- Khoa/ Bộ môn phụ trách học phần: Công nghệ thông tin
2. Mục tiêu, chuẩn đầu ra của học phần
2.1. Mục tiêu
Mục tiêu
Mô tả mục tiêu
(Học phần này trang bị cho sinh viên)
MT1- Kiến thức - Cung cấp các khái niệm về Lớp, đối tượng.
- Giúp sinh viên biết xây dựng các lớp, các phương thức và thuộc
tính sử dụng phạm vi truy xuất hợp lý.
- Trang bị cho sinh viên các kiến thức về xây dựng các toán tử trên
các Lớp đối tượng.
- Trang bị các kiến thức về các kỹ thuật kế thừa và đa hình trong lập
trình HĐT bằng C#.
- Cung cấp cho sinh viên phương pháp xử lý các ngoại lệ trong C#
MT2- Kỹ năng - Thành thạo các thao tác soạn thảo, biên dịch, kiểm thử chương
trình.
- Thành thạo các thao tác thiết kế, xây dựng và sử dụng các lớp đối
tượng.
- Sử dụng thành thạo các kỹ thuật kế thừa và đa hình để xử lý các bài
toán thực tế.
- Thành thạo trong việc bắt lỗi, xử lý ngoại lệ khi thiết kế một
2. chương trình cho bài toán thực tế.
MT3- Năng lực
tự chủ và trách
nhiệm
Rèn luyện tính kiên trì, kỷ luật, tinh thần tự giác
Trau dồi khả năng tư duy logic, sáng tạo.
2.2. Chuẩn đầu ra
Mục tiêu
Chuẩn
đầu ra
Mô tả
(Sau khi học xong học phần này, sinh viên có thể:)
MT1
MT1.1
- Có khả năng thiết kế chương trình theo OOP
- Biết cách xây dựng và sử dụng lớp sử dụng phạm vi truy xuất thích
hợp với các thành viên
MT1.2
- Biết cách xây dựng và sử dụng toán tử trên các lớp.
- Sử dụng thành thạo kỹ thuật nạp chồng toán tử.
MT1.3
- Hiểu nguyên lý hoạt động của các ngoại lệ (exception) và các dòng
vào ra cơ bản.
- Hiểu được nguyên lý của kế thừa và đa hình
MT2
MT2.1
- Có khả năng đưa ra một giải pháp lập trình hướng đối tượng
cho các bài toán ở quy mô tương đối đơn giản
- Có khả năng cài đặt một thiết kế hướng đối tượng cho trước
bằng ngôn ngữ C#
MT2.2
- Sử dụng linh hoạt các kỹ thuật kế thừa, đa hình trong các bài
toán cụ thể.
MT2.3 - Xử lý tốt các trường hợp ngoại lệ trong bất cứ bài toán nào.
MT3
MT3.1
- Có tính kiên trì
- Có khả năng tự học các ngôn ngữ lập trình hướng đối tượng
khác và tự tìm hiểu sử dụng các thư viện lập trình kèm theo.
MT3.2
Có khả năng tư duy logic, sáng tạo. Có thể tự thiết kế được giải
thuật cho bài toán cụ thể.
3. Tóm tắt nội dung học phần
Học phần Lập trình hướng đối tượng giới thiệu các vấn đề cơ bản sau:
- Các kiến thức cơ bản về lập trình hướng đối tượng.
- Khái niệm, cách xây dựng và sử dụng Lớp và đối tượng
- Nạp chồng hàm, chồng toán tử.
- Kỹ thuật kế thừa và đa hình
- Điều khiển ngoại lệ
4. Nội dung chi tiết học phần
Nội dung
Hình thức tổ chức dạy học học phần
Tổng
Lên lớp Thực hành, Tự
3. Lý
thuyết
Bài
tập
Thảo
luận
thí nghiệm,
thực tập,
thực tế,...
học,
tự
nghiên
cứu
(1) (2) (3) (4) (5) (6) (7)
Chương 1: Tổng quan về lập trình
hướng đối tượng và ngôn ngữ lập
trình C#
1.1. Các phương pháp lập trình
1.1.1. Lập trình tuần tự
1.1.2. Lập trình có cấu trúc
1.1.3. Lập trình hướng đối tượng
1.2. Bài toán quan hệ gia đình
1.3. Lập trình hướng đối tượng
1.3.1. Một số khái niệm
1.3.2. Các ưu điểm của lập trình
hướng đối tượng
1.3.3. Những ứng dụng của lập trình
hướng đối tượng
1.4. Các ngôn ngữ lập trình hướng
đối tượng
1.4.1. Một số ngôn ngữ
1.4.2. Ngôn ngữ lập trình C#
6 2 0 1 5
Chương 2: Đối tượng và lớp
3.1. Đối tượng
3.2. Lớp
3.2.1. Khai báo lớp
3.2.1.1. Tạo đối tượng
3.2.1.2. Các thành phần dữ liệu
3.2.1.3. Các hàm thành phần
3.2.1.4. Tham số ngầm định trong lời
gọi hàm thành phần
3.2.1.5. Phạm vi lớp
3.2.1.6. Từ khoá xác định thuộc tính
truy xuất
3.2.1.7. Gọi một hàm thành phần
trong một hàm thành phần khác
3.2.2. Khả năng của các hàm thành
phần
3.2.2.1. Các tham số với giá trị ngầm
định
3.2.2.2. Sử dụng đối tượng như tham
số của hàm thành phần
3.3. Phép gán các đối tượng
3.4. Hàm thiết lập (Hàm tạo)
3.4.1. Hàm thiết lập
3.4.2. Hàm huỷ bỏ
8 2 10 18
4. 3.4.3. Hàm thiết lập sao chép
3.5. Các thành phần tĩnh
3.5.1. Thành phần dữ liệu static
3.5.2. Khởi tạo các thành phần dữ
liệu tĩnh
3.5.3. Các hàm thành phần static
3.6. Đối tượng hằng
3.6.1. Đối tượng hằng
3.6.2. Hàm thành phần const
3.7. Các lỗi thường gặp
Chương 3: Chồng hàm, chồng toán
tử.
3.1. Chồng hàm
3.1.1. Khái niệm
3.1.2. Các quy tắc khi chồng hàm
3.1.3. Một số lỗi khi chồng hàm
3.2.Khả năng và giới hạn của định
nghĩa chồng toán tử
3.3.Chiến lược sử dụng hàm toán tử
3.3.1.Các phép toán một ngôi
3.3.2.Các phép toán hai ngôi
3.3.3.Các phép gán
3.4.Một số ví dụ tiêu biểu
3.5.Chuyển đổi kiểu
3.5.1.Hàm toán tử chuyển kiểu ép
buộc
3.5.2.Hàm toán tử chuyển đổi kiểu
cơ sở sang kiểu lớp
3.5.3.Chuyển đổi kiểu từ lớp này
sang lớp khác
4 1 0 8 4
Chương 4: Kế thừa và đa hình
4.1. Giới thiệu chung
4.2. Đơn thừa kế
4.2.1. Ví dụ
4.2.2. Truy cập các thành phần của
lớp cơ sở từ lớp dẫn xuất
4.2.3. Định nghĩa lại các thành phần
của lớp cơ sở trong lớp dẫn xuất
4.2.4. Tính thừa kế trong lớp dẫn
xuất
4.2.5. Hàm thiết lập trong lớp dẫn
xuất
4.2.6. Các kiểu dẫn xuất khác nhau
4.3. Hàm ảo và tính đa hình
4.3.1. Đặt vấn đề
4.3.2. Tổng quát về hàm ảo
3 1 8 17
5. 4.3.3. Lớp trừu tượng và hàm ảo
thuần tuý
4.4. Đa thừa kế
4.4.1. Đặt vấn đề
4.4.2. Lớp cơ sở ảo
4.4.3. Hàm thiết lập và huỷ bỏ - với
lớp ảo
4.4.4. Danh sách móc nối các đối
tượng
4.4.5. Xây dựng lớp trừu tượng
Chương 5: Điều khiển ngoại lệ
5.1. Khái niệm
5.2. Phát sinh và bắt giữ ngoại lệ..
5.2.1. Câu lệnh throw
5.2.2. Câu lệnh catch
5.2.3. Câu lệnh finally
5.3. Những đối tượng ngoại lệ
5.4. Tạo riêng các ngoại lệ
5.5. Phát sinh lại ngoại lệ
2 1 3 6
Tổng 23 7 30 60
5. Hình thức tổ chức dạy học cụ thể
Hình
thức tổ
chức dạy
học
Nội dung chính Yêu cầu SV chuẩn bị
Yêu cầu GV
chuẩn bị
Ghi chú
Lập trình
hướng đối
tượng, phương
pháp giải bài
toán mới
Tìm hiểu Về các hướng
phát triển lập trình hiện
nay. Cách sử dụng C#
Console, các lệnh cơ bản
trong C#.
Chuẩn bị đầy đủ:
Đề cương, giáo
án, câu hỏi, bài
tập và các công cụ
hỗ trợ dạy học cần
thiết trước khi lên
lớp
Đối tượng và
lớp
Tìm hiểu về lớp và đối
tượng. Cách xây dựng và
sử dụng lớp, đối tượng.
Phạm vi truy xuất các
thành viên lớp. Tìm hiểu
cách thực hiện các bài tập
trong đề cương HD tự học
Chuẩn bị đầy đủ:
Đề cương, giáo
án, câu hỏi, bài
tập demo và
chuẩn bị các công
cụ hỗ trợ dạy học
cần thiết trước khi
lên lớp
Chồng hàm và
chồng toán tử
Tìm hiểu, nghiên cứu về
hàm, toán tử trong C#.
Cách xây dựng, nạp
chồng toán tử, chồng
hàm. Làm các bài tập
Chuẩn bị đầy đủ:
Đề cương, giáo
án, câu hỏi, bài
tập, demo các bài
toán, chuẩn bị các
6. trong đề cương hướng dẫn
tự học
công cụ hỗ trợ dạy
học cần thiết trước
khi lên lớp
Kế thừa và đa
hình
Tìm hiểu, nghiên cứu về
tính kế thừa, tính đa hình
trong lập trình OOP. Cần
đọc và hiểu về nguyên lý
kế thừa và đa hình đối với
các lớp. Làm các bài tập
trong đề cương hướng dẫn
tự học
Chuẩn bị đầy đủ:
Đề cương, giáo
án, câu hỏi, bài
tập, demo, chuẩn
bị các công cụ hỗ
trợ dạy học cần
thiết trước khi lên
lớp
Điều khiển
ngoại lệ
Tìm hiểu về nguyên lý hoạt
động của các ngoại lệ (ex-
ception); Cách xử lý các
ngoại lệ trong C#. Làm
các bài tập trong đề cương
hướng dẫn tự học.
Chuẩn bị đầy đủ:
Đề cương, giáo
án, câu hỏi, bài
tập điều khiển
ngoại lệ. Chuẩn bị
các công cụ hỗ trợ
dạy học cần thiết
trước khi lên lớp
Bài tập
-Các bài tập về
xây dựng và sử
dụng lớp và đối
tượng.
-Bài tập về nạp
chồng hàm, toán tử
-Bài tập về kế thừa
và đa hình.
-Bài tập về xử lý
ngoại lệ.
Làm các bài tập liên quan
đến nội dung học mà
giảng viên giao cho
Chuẩn bị các bài
tập cơ bản và
nâng cao liên
quan đến nội dung
môn học
Thảo
luận
nhóm
- Phạm vi truy
xuất các thành
viên của 1 lớp
- Phương pháp
nạp chồng hàm,
toán tử.
- Nguyên lý kế
thừa và đa hình
- Xử lý ngoại lệ
Chuẩn bị đầy đủ các nội
dung mà giảng viên đã
giao cho từng nhóm dựa
trên đề cương, tài liệu
tham khảo mà giảng viên
cung cấp
Hướng dẫn sinh
viên cách làm việc
theo nhóm, phân
công nghiên cứu
cho từng thành
viên trong nhóm
và cách thuyết
trình, thảo luận
trên lớp
Thực
hành thí
nghiệm,
thực tập,
thực tế…
- Các bài tập về
xây dựng và sử
dụng lớp và đối
tượng.
- Bài tập về nạp
chồng hàm, toán tử
- Bài tập về kế
thừa và đa hình.
-Bài tập về xử lý
ngoại lệ.
Cài đặt các bài tập thực
hành trong giáo trình và
đề cương hướng dẫn tự
học
Phòng máy có cài
phần mềm hỗ trợ
lập trình
C/C++/C#.
Các chương trình
mẫu.
7. Sinh viên
tự nghiên
cứu, tự
học
Các nội dung kiến
thức trong
chương trình
Chuẩn bị đầy đủ các nội
dung tự học mà giảng
viên giao cho
Hướng dẫn sinh
viên cách học các
nội dung tự học
6. Tài liệu học tập
6.1 Tài liệu chính
[1] Lê Đăng Hưng, Tạ Tuấn Anh, Nguyễn Hữu Đức, Nguyễn Thanh Thuỷ, Lập
trình hướng đối tượng với C++, Nhà xuất bản KHKT
[2] . Phạm Hữu Khang, C# 2005 tập 3 (Lập trình hướng đối tượng). Nhà xuất bản
Lao động Xã hội, năm 2006
6.2 Tài liệu tham khảo
[1] Phạm Văn Ất, Lập trình hướng đối tượng với C++.
[2] G.J Bronson, Program development and design using C++, 2nd edition,
brools/cole Thompson learning, 2000
[3] H.M Deitel and P.J, Deitel, C++ how to program. 3nd edition, Prentice-hall,
2001.
[4] Khác: Internet
7. Các phương pháp giảng dạy và học tập của học phần:
Sử dụng các phương pháp giảng dạy theo học chế tín chỉ.
+ Phương pháp giảng dạy:
- Phương pháp thuyết trình, đàm thoại
- Phương pháp dạy học nêu vấn đề, giải quyết vấn đề
- Phương pháp làm việc nhóm
- Phương pháp dựng tình huống, định hướng hành động
- Phương pháp dạy học phát huy tính tích cực, sáng tạo
+ Phương pháp học tập:
- Phương pháp tự học
- Chia nhỏ kiến thức, tự tìm hiểu các tài liệu liên quan đến học phần do giảng viên
giới thiệu.
- Học tập theo nhóm
8. Chính sách đối với học phần và các yêu cầu khác của giảng viên:
Sinh viên phải tham dự học, thảo luận, kiểm tra theo quy chế học vụ hiện hành của
nhà trường. Cụ thể:
- Dự lớp: lý thuyết ≥ 80%; thực hành ≥ 80%.
- Bài tập: chuẩn bị đầy đủ các bài tập trên lớp, phòng thí nghiệm, ở nhà ….
- Dụng cụ và học liệu: máy tính có cài phần mềm lập trình, giáo trình, tài liệu
tham khảo.
9. Thang điểm đánh giá: Theo học chế tín chỉ
8. 10. Phương pháp, hình thức kiểm tra - đánh giá kết quả học tập học phần:
10.1. Kiểm tra - đánh giá quá trình: Kiểm tra định kỳ và điểm danh chiếm 10%
10.2. Kiểm tra - đánh giá giữa kỳ : Thi thực hành giữa kỳ chiếm 25%
10.3. Thi - đánh giá cuối kỳ: Thi cuối kỳ 65%
- Hình thức thi: Thực hành
- Thời lượng thi: 90 phút
11. Thông tin về giảng viên tham gia giảng dạy (Họ tên, học hàm, học vị, các hướng
nghiên cứu chính; Địa chỉ liên lạc: Số điện thoại, E-mail…)
STT Họ tên
Học
hàm,
học vị
Các
hướng
nghiên
cứu
Địa chỉ liên lạc SĐT Email
1
Nguyễn
Thị Thu
Thủy
Thạc sĩ CNTT
Tổ DP6 – Xuân
Khanh – Sơn Tây
– Hà Nội
0984083308
Nttthuy2103@g
mail.com
2
Hà Nội, ngày……..tháng…….năm ……..
Trưởng khoa
(Ký và ghi rõ họ tên)
Trưởng bộ môn
(Ký và ghi rõ họ tên)
Người soạn
(Ký và ghi rõ họ tên)