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 ớng đối tượng.
Phân 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 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
LƯỢC VỀ OOP
ĐỐI TƯỢNG
HÀNH VI
THÔNG ĐIỆP
DỮ LIỆU
ĐẶC TÍNH
GIẢI I TOÁN VỚI OOP
TÓM TẮT
3OOP-CHƯƠNG 1- NHẬP N OOP
LẬP TRÌNH THỦ TỤCLẬP TRÌNH THỦ TỤC
POP- Procedure Oriented Programming.
Phân công vic những vic nhỏ hơn
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 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ý lch đi em”
VietLyLich(x);
x.VietLyLich();
Din đt nào tnhiên hơn?
5OOP-CHƯƠNG 1- NHẬP 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ữ liu được biểu diễn bằng cấu trúc lồng nhau
hoc một pointer. Tính phân lớp khó được phát hin, 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;
};
Bn ngsao v2
tác vnày?
6OOP-CHƯƠNG 1- NHẬP 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 những đặc điểm ợ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 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 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 đố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 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 = Dliu + Hành vi
= +
9OOP-CHƯƠNG 1- NHẬP 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.
Tnhiên
Person
Male Female
is a is a
class PERSON
{....
} ;
class MALE: PERSON
{<dliu thêm>
} ;
class FEMALE: PERSON
{ <dliu thêm>
} ;
t
nhiên
Hin thc
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 sdng code
Tái sdng code
12 OOP-CHƯƠNG 1- NHẬP MÔN OOP
4
SỰ KHÁC BIỆTSỰ KHÁC BIỆT
Theo thtc
t tin (withdraw), gi tin
(deposit), chuyn tin (transfer)
Hướng đi tượng
Khách hàng (customer), tin (money),
tài khon (account)
13 OOP-CHƯƠNG 1- NHẬP MÔN OOP
SƠ LƯỢC VỀ OOPSƠ LƯỢC VỀ OOP
Đi tượng = Dliu + Hành vi
= +
14 OOP-CHƯƠNG 1- NHẬP MÔN OOP
ĐỐI TƯỢNGĐỐI TƯỢNG
Mt đi tượng nhưlà mt hp đen,
chi tiết n trong được du kín
Các đi tượng giao tiếp vi nhau thông
qua vic truyn các thông đip
(messages)
Thông đip được nhn bi c hành vi
ca đ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 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
Vt thsmó được
(Tangible things)
Vai trò (Roles)
Svic xy ra, tình tiết
(Incidents)
Stương tác (Interactions)
S t(Specifications)
Nhưlà xe hơi, máy in, ...
Công nhân, người ch, ...
Chuyến bay, tràn s, ...
kết tha ước, mua hàng,
...
Màu, hình dng
20 OOP-CHƯƠNG 1- NHẬP MÔN OOP