LP TRÌNH HƯNG ðI TƯNGLP TRÌNH HƯNG ðI TƯNG
Chương 1
9/30/2009 1
NiNi dungdung
Lp trình thông thưng.
Lp trình hưng ñi tưng.
UUnified MModeling LLanguage - UML.
2
LpLp trìnhtrình thôngthông thưngthưng
Lp trình tuyn tính
Tư duy theo li tun t, ñơn gin.
ðơn lung và các công vic ñưc thc hin tun
t trong lung ñó.
Tn ti trong modul nhca phương pháp lp
trình khác.
Không gii quytñưc các yêu cu phc tp.
3
LpLp trìnhtrình thôngthông thưngthưng ((tttt))
Lp trình cu trúc
Cu
trúc
d
liu
:
cách
t
d
liu
,
t
bài
CCu trúc du trúc d liliuu +GiGii thui thutt =ChChươương trìnhng trình
Cu
trúc
d
liu
:
cách
t
d
liu
,
t
bài
toán dưi dng ngôn nglp trình.
Gii thut: mt quy trình ñ thc hin mt công
vic xác ñnh.
4
LpLp trìnhtrình thôngthông thưngthưng ((tttt))
Lp trình cu trúc (tt)
Phân chia chương trình chính thành các chương
trình con cho phù hp vi yêu cu, chc năng
mc
ñích
ca
mi
bài
toán
mc
ñích
ca
mi
bài
toán
Gii thut luôn phthuc cht chvào cu trúc
dliu
5
LpLp trìnhtrình hưnghưng ñiñi tưngtưng
Mt skhái nim cơbn
Lp trình hưng ñi tưng
Object Oriented Programming OOP
Các
ñc
ñim
ca
OOP
Các
ñc
ñim
ca
OOP
6
MtMt sskháikhái nimnim cơcơbnbn
ði tưng (Object)
Trong thgii thc:
ñi tưng mtthc th(entity) cth thông
thưng ta ths, nhìn thyhay cm nhnñưc.
Trong
lp
trình
:
Trong
lp
trình
:
Dùng ñ t1 ngưi, svt hay khái nim.
ði tưng cái ng dng munñ cpñn.
Trong hthng hưng ñi tưng, m i th ñu ñi
tưng.
7
MtMt sskháikhái nimnim cơcơbnbn ((tttt))
ði tưng trong th gii thc
Trng thái:
màu
hãng
sn
xut
hãng
sn
xut
model
giá
Hành ñng:
D!ng
Chy
Tăng tc
•Th"ng
•…
xe hơi
8
MtMt sskháikhái nimnim cơcơbnbn ((tttt))
ði tưng trong th gii thc(tt)
M iñi tưng ñu trng thái (state) và hành
ñng (behavior)
9
MtMt sskháikhái nimnim cơcơbnbn ((tttt))
ði tưng trong lp trình
Thuc tính, ñc tính, dliu(attribute,
property, data):
Trình bày, mô tcác ñcñim cañi tưng.
Phương thc, ng x#, hàm (method,
behavior, function):
Liên quan ñn nhng th ñi tưng làm.
Tác ñng lên dliu cañi tưng.
10
MtMt sskháikhái nimnim cơcơbnbn ((tttt))
Thuc tính:
•tiêu ñ
•ni dung
•kích thưc
màu
màu
Phương thc:
•v
•di chuyn
ñi kích thưc
ñóng, …
11
12
MtMt sskháikhái nimnim cơcơbnbn ((tttt))
Thuc tính:
•Màu
•Màu thân
•Chiu cao
T a
ñ
T a
ñ
Phương thc:
•v
13
MtMt sskháikhái nimnim cơcơbnbn ((tttt))
Thhin(instance)
Thuc tính ñưc xác ñnh giá trcth.
ði tưng cthg i mt thhin.
ði tưng (object) mt thc th
phn mm bao b c các thuc tính
b$i các phương thcliên quan.
ðiði tưngtưng XeXe ñpñp
((là 1 1 ththhinhin))
14
MtMt sskháikhái nimnim cơcơbnbn ((tttt))
Lp(class)
m%u(prototype) ca các ñi tưng cùng
kiu.
khuôn ñ ñ ra các ñi tưng.
ðnh
nghĩa
các
thuc
tính
phương
thc
ðnh
nghĩa
các
thuc
tính
phương
thc
chung cho c ñi tưng cùng loi.
VD: Lp XeDap thit kchung cho các ñi
tưng xe mini, xe ñòn, xe ñm, xe ñua, xe leo
núi, …
15
MtMt sskháikhái nimnim cơcơbnbn ((tttt))
Lp(class)
Lp to ra ñi tưng: b'ng cách gán g trc
thcho các thuc tính.
Lpñưc to ra khi biên dch
ði tưng to ra khi thc thi chương trình.
ði tưng mt thhin (instance) ca 1 lp
16
NhanVienNhanVien
nhân viên
H tên
Năm sinh
Ngh
nghip
Ngh
nghip
ða ch(
Hslương
Chc v
Làm vic ()
Ngh(phép ()
Lãnh lương ()
ÔngÔng NVANVA TTBTTB Ông LVCÔng LVC
17
Mt s khái nim cơ bn (tt)Mt s khái nim cơ bn (tt)
Truyn thông báo
Thông báo (message): 1 li yêu cu 1 hot
ñng.
Thông báo bao gm:
ði
tưng
nhn
thông
ñip
.
ði
tưng
nhn
thông
ñip
.
Hotñng (tên ca phương thc thc hin).
Chi tit thc hin (giá trcác tham s).
Truyn thông báo: kích hot hàm cùng tên
trên 1 ñi tưng ñ yêu cu thông tin.
18
NhanVienNhanVien
nhân viên
H tên
Năm sinh
Ngh
nghip
NhanVienNhanVien
8494
NVA
1970
Ths
Tin
h c
Ngh
nghip
ða ch(
Hslương
Chc v
Làm vic ()
Ngh(phép ()
Lãnh lương ()
ÔngÔng NVANVA
Ths
Tin
h c
ðH Tây ðô
3.04
Ging viên
NVA.nghNVA.nghphépphép
(22/9/2009)(22/9/2009)
19
LpLp trìnhtrình hưnghưng ñiñi tưngtưng
Mt skhái nim cơbn
Lp trình hưng ñi tưng
(Object Oriented Programming OOP)
Các
ñc
ñim
ca
OOP
Các
ñc
ñim
ca
OOP
20