18
true class cout C++ operator catch virtual throw try friend bool cin new inline private OOP delete using false STL public 1 ThS. Đặng Bình Phương [email protected] VCBB © 13.09a this Bộ môn Công nghệ phần mềm Khoa Công nghệ thông tin Trường Đại học Khoa học Tự nhiên PP LT HƯỚNG ĐỐI TƯỢNG GIỚI THIỆU MÔN HỌC

Pplthdt c00 gioi_thieumonhoc_v13.09a

Embed Size (px)

Citation preview

Page 1: Pplthdt c00 gioi_thieumonhoc_v13.09a

trueclass

cout

C++operator

catch

virtual throw

try

friend bool

cinnew

inline private OOP

deleteusing falseSTL

public

1

T h S . Đ ặ n g B ì n h P h ư ơ n gd b p h u o n g @ f i t . h c m u s . e d u . v n

VCBB© 13.09a

this

Bộ môn Công nghệ phần mềm

Khoa Công nghệ thông tin

Trường Đại học Khoa học Tự nhiên

PP LT HƯỚNG ĐỐI TƯỢNG

GIỚI THIỆU MÔN HỌC

Page 2: Pplthdt c00 gioi_thieumonhoc_v13.09a

2

VC

BB

1 2 3 4

Nội dung

Giới thiệu môn học

Giới thiệu môn học

Cách thức đánh giá

Nội dung môn học

Tài liệu tham khảo

#include <iostream>using namespace std;

void main(){

cout << “Hello World”;cout << endl;

Page 3: Pplthdt c00 gioi_thieumonhoc_v13.09a

3

VC

BB

Giới thiệu môn học1 2 3 4

Giới thiệu môn học

Tên môn học: PP lập trình hướng đối tượng

Số tín chỉ: 4

Số tiết lý thuyết: 45

Số tiết thực hành: 30

Số tiết tự học: 90

Loại học phần: Bắt buộc

Môn học trước: NMLT, KTLT

Giảng viên lý thuyết: Đặng Bình Phương

[email protected]

(Tiêu đề thư phải bắt đầu bằng [SV])Giới thiệu môn học

Page 4: Pplthdt c00 gioi_thieumonhoc_v13.09a

4

VC

BB

Giới thiệu môn học1 2 3 4

Giới thiệu môn học

Mục tiêu môn học

Rèn luyện cho sinh viên kỹ năng và

phương pháp viết chương trình theo tiếp cận

hướng đối tượng bằng cách sử dụng một

NNLT hướng đối tượng cụ thể, có đối sánh và

liên hệ với những NNLT hướng đối tượng

thông dụng khác.

Truyền đạt cho sinh viên những

kinh nghiệm nghề nghiệp

liên quan đến áp dụng lập trình hướng đối

tượng trong thực tế sản xuất phần mềm.Giới thiệu môn học

Page 5: Pplthdt c00 gioi_thieumonhoc_v13.09a

5

VC

BB

Cách thức đánh giá1 2 3 4

Thang điểm

Thực hành (3 điểm)

Đồ án thực hành: 1,0 điểm

Bài tập hàng tuần: 1,0 điểm

Thi cuối kỳ: 1,0 điểm

Lý thuyết (7 điểm)

Bài tập hàng tuần: 2,0 điểm

Thi cuối kỳ: 5,0 điểm

Giới thiệu môn học

Kết quả = 30% TH + 70% LT

Page 6: Pplthdt c00 gioi_thieumonhoc_v13.09a

6

VC

BB

Nội dung môn học1 2 3 4

Chương 1

Một số vấn đề trong lập trình

Sự tổng quát hóa trong lập trình.

Vấn đề về các hàm cùng tên.

Về giá trị mặc định của tham số hàm.

Vấn đề về các hàm mã nguồn y hệt nhau.

Kí hiệu phép toán cho kiểu dữ liệu mới.

Nhu cầu về gia tăng tính tái sử dụng của

mã nguồn.

Giới thiệu môn học

Page 7: Pplthdt c00 gioi_thieumonhoc_v13.09a

7

VC

BB

Nội dung môn học1 2 3 4

Chương 2

Lớp và đối tượng

Khái niệm về lập trình hướng đối tượng.

Khái niệm về lớp và đối tượng.

Sự che dấu dữ liệu và phương thức.

Tạo lập, sử dụng và hủy đối tượng.

Một vài ví dụ minh họa.

Ký hiệu UML.

Sự tương đồng và khác nhau giữa C++, Java

và C#.

Giới thiệu môn học

Page 8: Pplthdt c00 gioi_thieumonhoc_v13.09a

8

VC

BB

Nội dung môn học1 2 3 4

Chương 3

Kiểu dữ liệu cơ sở và lớp dựng sẵn

Các kiểu dữ liệu cơ sở và phép toán.

Kiểu chuỗi kí tự.

Dữ liệu động.

Đối sánh các kiểu dữ liệu cơ sở của C++,

Java, C#.

Những điểm hạn chế của C++.

Giới thiệu môn học

Page 9: Pplthdt c00 gioi_thieumonhoc_v13.09a

9

VC

BB

Nội dung môn học1 2 3 4

Chương 4

Thuộc tính đối tượng và phương thức

Phương thức tạo lập (constructor).

Phương thức hủy (destructor).

Tham số của phương thức.

Định nghĩa phép toán (operator) cho

kiểu dữ liệu mới.

Phương thức chuyển đổi kiểu dữ liệu

(casting method).

Một số vấn đề liên quan khác.

Mẫu thiết kế Singleton và áp dụng.Giới thiệu môn học

Page 10: Pplthdt c00 gioi_thieumonhoc_v13.09a

10

VC

BB

Nội dung môn học1 2 3 4

Chương 5

Tổng quát hóa, đặc biệt hóa, đa hình

Tổng quát hóa và đặc biệt hóa.

Đa hình.

Kí hiệu UML.

Các vấn đề liên quan khi xét trong quan hệ

kế thừa.

Áp dụng.

Đối sánh giữa C++, Java và C#.

Giới thiệu môn học

Page 11: Pplthdt c00 gioi_thieumonhoc_v13.09a

11

VC

BB

Nội dung môn học1 2 3 4

Chương 6, 7

Lớp trừu tượng và giao diện lập trình

Phương thức thuần ảo.

Lớp trừu tượng (abstract class).

Giao diện lập trình (programming interface).

Áp dụng.

Các kiểu dữ liệu trừu tượng

Giới thiệu.

Những kiểu dữ liệu trừu tượng thông dụng.

Đồ án học tập.

Giới thiệu môn học

Page 12: Pplthdt c00 gioi_thieumonhoc_v13.09a

12

VC

BB

Nội dung môn học1 2 3 4

Chương 8

Liên hệ giữa các lớp

Các loại quan hệ.

Cài đặt các loại quan hệ.

Mẫu composite và áp dụng để lưu đối tượng

phức hợp.

Trường hợp đặc biệt.

Đồ án học tập (case study).

Giới thiệu môn học

Page 13: Pplthdt c00 gioi_thieumonhoc_v13.09a

13

VC

BB

Nội dung môn học1 2 3 4

Chương 9

Tập tin và lưu trữ đối tượng

Hệ thống nhập xuất chuẩn IO của C++.

Các đối tượng IO chuẩn và những thao tác.

Đọc dữ liệu từ tập tin.

Case study: Nạp đối tượng đã ghi sẵn

trên đĩa vào bộ nhớ.

Ghi dữ liệu lên tập tin: ofstream.

Phối hợp đọc và ghi dữ liệu trên cùng

một tập tin: fstream.

Đồ án học tập (case study).Giới thiệu môn học

Page 14: Pplthdt c00 gioi_thieumonhoc_v13.09a

14

VC

BB

Nội dung môn học1 2 3 4

Chương 10

Lớp tham số hóa bởi kiểu dữ liệu

Khái niệm và ý nghĩa của việc tham số hóa.

Tham số hóa cho hàm.

Tham số hóa cho lớp.

Vấn đề biên dịch chương trình có lớp tham số hóa.

Việc kế thừa các lớp tham số hóa.

Ứng dụng.

Đối sánh giữa C++, Java, C#.

Giới thiệu môn học

Page 15: Pplthdt c00 gioi_thieumonhoc_v13.09a

15

VC

BB

Nội dung môn học1 2 3 4

Chương 11, 12

Các thư viện lớp thông dụng

Các lớp container chuẩn của STL.

Các thuật toán tổng quát và thông dụng.

Số phức và các hàm toán học.

Xử lý lỗi và ngoại lệ

Giới thiệu.

Các ngoại lệ (exception).

Kỹ thuật assert và try-catch-throw.

Các kỹ thuật khác.

Giới thiệu môn học

Page 16: Pplthdt c00 gioi_thieumonhoc_v13.09a

16

VC

BB

Tài liệu tham khảo1 2 3 4

Tài liệu tham khảo (Tiếng Việt)

[OOP] PGS.TS. Trần Đan Thư, TS. Đinh Bá Tiến,

ThS. Nguyễn Tấn Trần Minh Khang, Lập trình

hướng đối tượng, NXB KHKT, 2010.

ThS. Đặng Bình Phương, Bài giảng PPLTHĐT.

Địa chỉ: www.mediafire.com/?s3ac23s0ekco4

Bài giảng, tài liệu tham khảo.

Một số bài giải (tham khảo).

Địa chỉ (moodle): http://courses.fit.hcmus.edu.vn

Nơi xem thông báo, trao đổi, thảo luận.

Giới thiệu môn học

Page 17: Pplthdt c00 gioi_thieumonhoc_v13.09a

17

VC

BB

Tài liệu tham khảo1 2 3 4

Tài liệu tham khảo (Tiếng Anh)

[Primer] Stephen Prata, C++ Primer Plus,

5th Edition, SAMS, 2005.

[FAQ] Marshall Cline, C++ FAQ Lite,

http://www.parashift.com/c++-faq-lite/

Bjarne Stroustrup, The C++ Programming

Language, 3rd Edition, Addison-Wesley, 1997.

Bruce Eckel, Thinking in C++, Prentice Hall, 1998.

Giới thiệu môn học

Page 18: Pplthdt c00 gioi_thieumonhoc_v13.09a

18

VC

BB

Tài liệu tham khảo1 2 3 4

Tài liệu tham khảo (Tiếng Anh)

Erich Gamma, Richard Helm, Ralph Johnson,

and John Vlissides, Design Patterns: Elements

of Reusable Objected-Oriented Software,

Addison-Wesley, 1995.

Eric Braude, Software Design – From

Programming to Architecture, John Wiley &

son, 2004.

Robert L. Kruse, Alexander J. RybaData, Data

Structures and Program Design in C++,

Prentice-Hall, Inc., 2000.

Giới thiệu môn học