
1
Chương 1:
NHẬP MÔN LẬP TRÌNH
HƯỚNG ĐỐI TƯỢNG
Giáo viên: Võ Hồng Bảo Châu
Khoa CNTT trường ĐH Lạc Hồng
LẬP TRÌNH
HƯỚNG ĐỐI TƯỢNG
MỤC TIÊUMỤC TIÊU
•Nhận biết sự khác biệt giữa lập trình hướng thủ tục và lập
trình hướng đối tượng.
•Phân tích, thiết kế và hiện thực được một chương trình
theo phương pháp hướng đối tượng.
•Nhận diện một số ngôn ngữ OOP.
•Nhận biết các khái niệm cơ bản của OOP.
2OOP-CHƯƠNG 1- NHẬP MÔN OOP
NỘI DUNG CHI TIẾTNỘI DUNG CHI TIẾT
•LẬP TRÌNH THỦ TỤC – POP
•LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG – OOP
•SƠ LƯỢC VỀ OOP
– ĐỐI TƯỢNG
– HÀNH VI
– THÔNG ĐIỆP
– DỮ LIỆU
– ĐẶC TÍNH
•GIẢI BÀI TOÁN VỚI OOP
•TÓM TẮT
3OOP-CHƯƠNG 1- NHẬP MÔN OOP
LẬP TRÌNH THỦ TỤCLẬP TRÌNH THỦ TỤC
•POP- Procedure Oriented Programming.
– Phân công việc những việc nhỏ hơn
– Là các chương trình con
– Thiết kế top-down
•Kỹ thuật POP:
Problem
Data
structure
Operation
(function)
Program
struct XX
{.....
};
type Fun (XX x)
{.....
};
void main()
{ X x;
Fun(x);
};
pick
nouns
pick
verbs
Data structure + Algorithm = Program
4OOP-CHƯƠNG 1- NHẬP MÔN OOP

2
NHƯỢC ĐIỂM CỦA POPNHƯỢC ĐIỂM CỦA POP
•Diễn đạt “thiếu tự nhiên”
Có học sinh x
“Viết lý lịch cho học sinh x”
“x ơi, viết lý lịch đi em”
“x ơi, viết lý lịch đi em”
VietLyLich(x);
x.VietLyLich();
Diễn đạt nào tựnhiên hơn?
5OOP-CHƯƠNG 1- NHẬP MÔN OOP
NHƯỢC ĐIỂM CỦA POPNHƯỢC ĐIỂM CỦA POP
•Khó mô tả những quan hệ phức tạp của thế giới tự nhiên.
Biểu diễn dạng cấu trúc “phức tạp”, không phải là dễ dàng
đối với nhiều người.
– Quan hệ giữa các dữ liệu được biểu diễn bằng cấu trúc lồng nhau
hoặc một pointer. Tính phân lớp khó được phát hiện, có khó
khăn trong biểu diễn lẫn tính dễ hiểu.
•Bảo mật kém do không thể giới hạn truy xuất đến một dữ
liệu.
struct STUDENT
{ char Name[21];
int Age;
int Score;
};
void main()
{STUDENT x = { “Hoa”, 19, 5};
x.Age=1000;
x.Score=-20;
};
Bạn nghĩ sao về2
tác vụnày?
6OOP-CHƯƠNG 1- NHẬP MÔN OOP
OOP
Cần một phương pháp lập trình
khác giúp giải quyết những
nhược điểm này.
OOP có những đặc điểm vượt
trội so với POP và là hướng lập
trình chủ đạo hiện nay.
7OOP-CHƯƠNG 1- NHẬP MÔN OOP
LẬP TRÌNH HƯỚNG ĐỐI TƯỢNGLẬP TRÌNH HƯỚNG ĐỐI TƯỢNG
•OOP – Object Oriented Programming.
•Chương trình là sự hoạt động của các đối tượng Giống
tự nhiên.
•Đối tượng thực thi một hoạt động tức là đối tượng thực
hiện một hành vi mà đối tượng này có khả năng.
•Một chương trình là một trật tự các lời yêu cầu đối tượng
thực hiện hành vi của mình.
Chương trình là một kích bản (script).
8OOP-CHƯƠNG 1- NHẬP MÔN OOP

3
•Từ những đối tượng, sự vật, sự kiện, ... tạo nên chương
trình
•Thiết kế bottom-up
Đối tượng = Dữliệu + Hành vi
= +
9OOP-CHƯƠNG 1- NHẬP MÔN OOP
ƯU ĐIỂM CỦA OOPƯU ĐIỂM CỦA OOP
•Dễ mô tả các quan hệ phân cấp trong thế giới tự nhiên.
Tựnhiên
Person
Male Female
is a is a
class PERSON
{....
} ;
class MALE: PERSON
{<dữliệu thêm>
} ;
class FEMALE: PERSON
{ <dữliệu thêm>
} ;
tự
nhiên
Hiện thực
10 OOP-CHƯƠNG 1- NHẬP MÔN OOP
ƯU ĐIỂM CỦA OOPƯU ĐIỂM CỦA OOP
•Có tính bảo mật cao: Bên ngoài không thể tùy tiện
truy cập một dữ liệu thuộc tính.
11 OOP-CHƯƠNG 1- NHẬP MÔN OOP
ƯU ĐIỂM CỦA OOPƯU ĐIỂM CỦA OOP
Tái sửdụng code
Tái sửdụng code
12 OOP-CHƯƠNG 1- NHẬP MÔN OOP

4
SỰ KHÁC BIỆTSỰ KHÁC BIỆT
Theo thủtục
Rút tiền (withdraw), gửi tiền
(deposit), chuyển tiền (transfer)
Hướng đối tượng
Khách hàng (customer), tiền (money),
tài khoản (account)
13 OOP-CHƯƠNG 1- NHẬP MÔN OOP
SƠ LƯỢC VỀ OOPSƠ LƯỢC VỀ OOP
Đối tượng = Dữliệu + Hành vi
= +
14 OOP-CHƯƠNG 1- NHẬP MÔN OOP
ĐỐI TƯỢNGĐỐI TƯỢNG
Một đối tượng nhưlà một hộp đen, mà
chi tiết bên trong được dấu kín
Các đối tượng giao tiếp với nhau thông
qua việc truyền các thông điệp
(messages)
Thông điệp được nhận bởi các hành vi
của đối tượng
15 OOP-CHƯƠNG 1- NHẬP MÔN OOP
Lan Cúc TrúcMai
girl
class
object
16 OOP-CHƯƠNG 1- NHẬP MÔN OOP

5
Mai
DỮ LIỆU (data):
-Xinh đẹp
-Dịu dàng
-...
HÀNH VI (behavior ):
-mua sắm
-làm việc nhà
-…
17 OOP-CHƯƠNG 1- NHẬP MÔN OOP
HÀNH VI (BEHAVIOR)HÀNH VI (BEHAVIOR)
•Thao tác (operation)
•Phương thức (method)
•Hàm (function)
•Thủ tục (procedure)
18 OOP-CHƯƠNG 1- NHẬP MÔN OOP
DỮ LIỆU (DATA)DỮ LIỆU (DATA)
•Thông tin (information)
•Tính chất (property)
•Thuộc tính (attribute)
•Trường (field)
19 OOP-CHƯƠNG 1- NHẬP MÔN OOP
NHỮNG GÌ LÀ ĐỐI TƯỢNGNHỮNG GÌ LÀ ĐỐI TƯỢNG
Vật có thểsờmó được
(Tangible things)
Vai trò (Roles)
Sựviệc xảy ra, tình tiết
(Incidents)
Sựtương tác (Interactions)
Sựmô tả(Specifications)
Nhưlà xe hơi, máy in, ...
Công nhân, người chủ, ...
Chuyến bay, tràn số, ...
Ký kết thỏa ước, mua hàng,
...
Màu, hình dạng
20 OOP-CHƯƠNG 1- NHẬP MÔN OOP