
CH¬NG 1
C¸C KH¸I NIÖM C¬ Së
cña LËP TR×NH HíNG §èI TîNG
Ch¬ng 1 tr×nh bµy nh÷ng vÊn ®Ò sau:
Th¶o luËn vÒ c¸ch tiÕp cËn híng ®èi tîng, nh÷ng nhîc ®iÓm cña lËp tr×nh truyÒn
thèng vµ c¸c ®Æc ®iÓm cña lËp tr×nh híng ®èi tîng.
C¸c kh¸i niÖm c¬ së cña ph¬ng ph¸p híng ®èi tîng:
•§èi tîng
•Líp
•Trõu tîng hãa d÷ liÖu vµ bao gãi th«ng tin
•KÕ thõa
•T¬ng øng béi
•Liªn kÕt ®éng
•TruyÒn th«ng b¸o
C¸c bíc cÇn thiÕt ®Ó thiÕt kÕ ch¬ng tr×nh theo híng ®èi tîng
C¸c u ®iÓm cña lËp tr×nh híng ®èi tîng
C¸c ng«n ng÷ híng ®èi tîng
Mét sè øng dông cña lËp tr×nh híng ®èi tîng
1.1. Giíi thiÖu
1.1.1. TiÕp cËn híng ®èi tîng
Trong thÕ giíi thùc, chung quanh chóng ta lµ nh÷ng ®èi tîng, ®ã lµ c¸c thùc thÓ cã
mèi quan hÖ víi nhau. VÝ dô c¸c phßng trong mét c«ng ty kinh doanh ®îc xem nh
nh÷ng ®èi tîng. C¸c phßng ë ®©y cã thÓ lµ: phßng qu¶n lý, phßng b¸n hµng, phßng kÕ
to¸n, phßng tiÕp thÞ,... Mçi phßng ngoµi nh÷ng c¸n bé ®¶m nhiÖm nh÷ng c«ng viÖc cô
thÓ, cßn cã nh÷ng d÷ liÖu riªng nh th«ng tin vÒ nh©n viªn, doanh sè b¸n hµng, hoÆc
c¸c d÷ liÖu kh¸c cã liªn quan ®Õn bé phËn ®ã. ViÖc ph©n chia c¸c phßng chøc n¨ng
trong c«ng ty sÏ t¹o ®iÒu kiÖn dÔ dµng cho viÖc qu¶n lý c¸c ho¹t ®éng. Mçi nh©n viªn
trong phßng sÏ ®iÒu khiÓn vµ xö lý d÷ liÖu cña phßng ®ã. VÝ dô phßng kÕ to¸n phô
tr¸ch vÒ l¬ng bæng nh©n viªn trong c«ng ty. NÕu b¹n ®ang ë bé phËn tiÕp thÞ vµ cÇn
t×m th«ng tin chi tiÕt vÒ l¬ng cña ®¬n vÞ m×nh th× sÏ gëi yªu cÇu vÒ phßng kÕ to¸n.
Víi c¸ch lµm nµy b¹n ®îc ®¶m b¶o lµ chØ cã nh©n viªn cña bé phËn kÕ to¸n ®îc quyÒn
truy cËp d÷ liÖu vµ cung cÊp th«ng tin cho b¹n. §iÒu nµy còng cho thÊy r»ng, kh«ng cã
ngêi nµo thuéc bé phËn kh¸c cã thÓ truy cËp vµ thay ®æi d÷ liÖu cña bé phËn kÕ to¸n.
Kh¸i niÖm nh thÕ vÒ ®èi tîng hÇu nh cã thÓ ®îc më réng ®èi víi mäi lÜnh vùc trong ®êi
sèng x· héi vµ h¬n n÷a - ®èi víi viÖc tæ chøc ch¬ng tr×nh. Mäi øng dông cã thÓ ®îc
®Þnh nghÜa nh mét tËp c¸c thùc thÓ - hoÆc c¸c ®èi tîng, sao cho qu¸ tr×nh t¸i t¹o
nh÷ng suy nghÜa cña chóng ta lµ gÇn s¸t nhÊt vÒ thÕ giíi thùc.
Trong phÇn tiÕp theo chóng ta sÏ xem xÐt ph¬ng ph¸p lËp tr×nh truyÒn thèng ®Ó
tõ ®ã thÊy r»ng v× sao chóng ta cÇn chuyÓn sang ph¬ng ph¸p lËp tr×nh híng ®èi tîng.
1.1.2. Nh÷ng nhîc ®iÓm cña lËp tr×nh híng thñ tôc
C¸ch tiÕp cËn lËp tr×nh truyÒn thèng lµ lËp tr×nh híng thñ tôc (LTHTT). Theo c¸ch
tiÕp cËn nµy th× mét hÖ thèng phÇn mÒm ®îc xem nh lµ d·y c¸c c«ng viÖc cÇn thùc
hiÖn nh ®äc d÷ liÖu, tÝnh to¸n, xö lý, lËp b¸o c¸o vµ in Ên kÕt qu¶ v.v... Mçi c«ng viÖc
®ã sÏ ®îc thùc hiÖn bëi mét sè hµm nhÊt ®Þnh. Nh vËy träng t©m cña c¸ch tiÕp cËn
nµy lµ c¸c hµm chøc n¨ng. LTHTT sö dông kü thuËt ph©n r· hµm chøc n¨ng theo c¸ch
tiÕp cËn trªn xuèng (top-down) ®Ó t¹o ra cÊu tróc ph©n cÊp. C¸c ng«n ng÷ lËp tr×nh
1

bËc cao nh COBOL, FORTRAN, PASCAL, C, v.v..., lµ nh÷ng ng«n ng÷ lËp tr×nh híng
thñ tôc. Nh÷ng nhîc ®iÓm chÝnh cña LTHTT lµ:
Ch¬ng tr×nh khã kiÓm so¸t vµ khã kh¨n trong viÖc bæ sung, n©ng cÊp ch¬ng tr×nh.
Ch¬ng tr×nh ®îc x©y dùng theo c¸ch TCHTT thùc chÊt lµ danh s¸ch c¸c c©u lÖnh
mµ theo ®ã m¸y tÝnh cÇn thùc hiÖn. Danh s¸ch c¸c lÖnh ®ã ®îc tæ chøc thµnh
tõng nhãm theo ®¬n vÞ cÊu tróc cña ng«n ng÷ lËp tr×nh vµ ®îc gäi lµ hµm/thñ tôc.
Trong ch¬ng tr×nh cã nhiÒu hµm/thñ tôc, thêng th× cã nhiÒu thµnh phÇn d÷ liÖu
quan träng sÏ ®îc khai b¸o tæng thÓ (global) ®Ó c¸c hµm/thñ tôc cã thÓ truy nhËp,
®äc vµ lµm thay ®æi gi¸ trÞ cña biÕn tæng thÓ. §iÒu nµy sÏ lµm cho ch¬ng tr×nh
rÊt khã kiÓm so¸t, nhÊt lµ ®èi víi c¸c ch¬ng tr×nh lín, phøc t¹p th× vÊn ®Ò cµng trë
nªn khã kh¨n h¬n. Khi ta muèn thay ®æi, bæ sung cÊu tróc d÷ liÖu dïng chung cho
mét sè hµm/thñ tôc th× ph¶i thay ®æi hÇu nh tÊt c¶ c¸c hµm/thñ tôc liªn quan ®Õn
d÷ liÖu ®ã.
M« h×nh ®îc x©y dùng theo c¸ch tiÕp cËn híng thñ tôc kh«ng m« t¶ ®îc ®Çy ®ñ,
trung thùc hÖ thèng trong thùc tÕ.
Ph¬ng ph¸p TCHTT ®Æt träng t©m vµo hµm lµ híng tíi ho¹t ®éng sÏ kh«ng thùc sù t-
¬ng øng víi c¸c thùc thÓ trong hÖ thèng cña thÕ giíi thùc.
1.1.3. LËp tr×nh híng ®èi tîng
LËp tr×nh híng ®èi tîng (Object Oriented Programming - LTH§T) lµ ph¬ng ph¸p
lËp tr×nh lÊy ®èi tîng lµm nÒn t¶ng ®Ó x©y dùng thuËt gi¶i, x©y dùng ch¬ng tr×nh. §èi
tîng ®îc x©y dùng trªn c¬ së g¾n cÊu tróc d÷ liÖu víi c¸c ph¬ng thøc (c¸c hµm/thñ tôc)
sÏ thÓ hiÖn ®îc ®óng c¸ch mµ chóng ta suy nghÜ, bao qu¸t vÒ thÕ giíi thùc. LTH§T cho
phÐp ta kÕt hîp nh÷ng tri thøc bao qu¸t vÒ c¸c qu¸ tr×nh víi nh÷ng kh¸i niÖm trõu tîng
®îc sö dông trong m¸y tÝnh.
§iÓm c¨n b¶n cña ph¬ng ph¸p LTH§T lµ thiÕt kÕ ch¬ng tr×nh xoay quanh d÷ liÖu
cña hÖ thèng. NghÜa lµ c¸c thao t¸c xö lý cña hÖ thèng ®îc g¾n liÒn víi d÷ liÖu vµ nh
vËy khi cã sù thay ®æi cña cÊu tróc d÷ liÖu th× chØ ¶nh hëng ®Õn mét sè Ýt c¸c ph-
¬ng thøc xö lý liªn quan.
LTH§T kh«ng cho phÐp d÷ liÖu chuyÓn ®éng tù do trong hÖ thèng. D÷ liÖu ®îc
g¾n chÆt víi tõng ph¬ng thøc thµnh c¸c vïng riªng mµ c¸c ph¬ng thøc ®ã t¸c ®éng lªn
vµ nã ®îc b¶o vÖ ®Ó cÊm viÖc truy nhËp tïy tiÖn tõ bªn ngoµi. LTH§T cho phÐp ph©n
tÝch bµi to¸n thµnh tËp c¸c thùc thÓ ®îc gäi lµ c¸c ®èi tîng vµ sau ®ã x©y dùng c¸c d÷
liÖu cïng víi c¸c ph¬ng thøc xung quanh c¸c ®èi tîng ®ã.
Tãm l¹i LTH§T cã nh÷ng ®Æc tÝnh chñ yÕu nh sau:
1. TËp trung vµo d÷ liÖu thay cho c¸c ph¬ng thøc.
2. Ch¬ng tr×nh ®îc chia thµnh c¸c líp ®èi tîng.
3. C¸c cÊu tróc d÷ liÖu ®îc thiÕt kÕ sao cho ®Æc t¶ ®îc c¸c ®èi tîng.
4. C¸c ph¬ng thøc x¸c ®Þnh trªn c¸c vïng d÷ liÖu cña ®èi tîng ®îc g¾n víi nhau trªn
cÊu tróc d÷ liÖu ®ã.
5. D÷ liÖu ®îc bao bäc, che dÊu vµ kh«ng cho phÐp c¸c thµnh phÇn bªn ngoµi truy
nhËp tù do.
6. C¸c ®èi tîng trao ®æi víi nhau th«ng qua c¸c ph¬ng thøc.
7. D÷ liÖu vµ c¸c ph¬ng thøc míi cã thÓ dÔ dµng bæ sung vµo ®èi tîng nµo ®ã khi
cÇn thiÕt.
8. Ch¬ng tr×nh ®îc thiÕt kÕ theo c¸ch tiÕp cËn bottom-up (díi -lªn).
1.2. C¸c kh¸i niÖm c¬ b¶n cña lËp tr×nh híng ®èi tîng
Nh÷ng kh¸i niÖm c¬ b¶n trong LTH§T bao gåm: §èi tîng; Líp; Trõu tîng hãa d÷
liÖu, bao gãi th«ng tin; KÕ thõa; T¬ng øng béi; Liªn kÕt ®éng; TruyÒn th«ng b¸o.
2

1.2.1. §èi tîng
Trong thÕ giíi thùc, kh¸i niÖm ®èi tîng ®îc hiÓu nh lµ mét thùc thÓ, nã cã thÓ lµ
ngêi, vËt hoÆc mét b¶ng d÷ liÖu cÇn xö lý trong ch¬ng tr×nh,... Trong LTH§T th× ®èi t-
îng lµ biÕn thÓ hiÖn cña líp.
1.2.2. Líp
Líp lµ mét kh¸i niÖm míi trong LTH§T so víi kü thuËt LTHTT. Nã lµ mét b¶n mÉu
m« t¶ c¸c th«ng tin cÊu tróc d÷ liÖu vµ c¸c thao t¸c hîp lÖ cña c¸c phÇn tö d÷ liÖu. Khi
mét phÇn tö d÷ liÖu ®îc khai b¸o lµ phÇn tö cña mét líp th× nã ®îc gäi lµ ®èi tîng. C¸c
hµm ®îc ®Þnh nghÜa hîp lÖ trong mét líp ®îc gäi lµ c¸c ph¬ng thøc (method) vµ chóng
lµ c¸c hµm duy nhÊt cã thÓ xö lý d÷ liÖu cña c¸c ®èi tîng cña líp ®ã. Mçi ®èi tîng cã
riªng cho m×nh mét b¶n sao c¸c phÇn tö d÷ liÖu cña líp. Mçi líp bao gåm: danh s¸ch c¸c
thuéc tÝnh (attribute) vµ danh s¸ch c¸c ph¬ng thøc ®Ó xö lý c¸c thuéc tÝnh ®ã. C«ng
thøc ph¶n ¸nh b¶n chÊt cña kü thuËt LTH§T lµ:
§èi tîng = D÷ liÖu + Ph¬ng thøc
Ch¼ng h¹n, chóng ta xÐt líp HINH_CN bao gåm c¸c thuéc tÝnh: (x1,y1) to¹ ®é gãc
trªn bªn tr¸i, d,r lµ chiÒu dµi vµ chiÒu réng cña HCN. C¸c ph¬ng thøc nhËp sè liÖu cho
HCN, hµm tÝnh diÖn tÝch, chu vi vµ hµm hiÓn thÞ. Líp HINH_CN cã thÓ ®îc m« t¶ nh
sau:
H×nh 2.2 M« t¶ líp HINH_CN
Chó ý: Trong LTH§T th× líp lµ kh¸i niÖm tÜnh, cã thÓ nhËn biÕt ngay tõ v¨n b¶n ch¬ng
tr×nh, ngîc l¹i ®èi tîng lµ kh¸i niÖm ®éng, nã ®îc x¸c ®Þnh trong bé nhí cña m¸y tÝnh,
n¬i ®èi tîng chiÕm mét vïng bé nhí lóc thùc hiÖn ch¬ng tr×nh. §èi tîng ®îc t¹o ra ®Ó xö
lý th«ng tin, thùc hiÖn nhiÖm vô ®îc thiÕt kÕ, sau ®ã bÞ hñy bá khi ®èi tîng ®ã hÕt vai
trß.
1.2.3. Trõu tîng hãa d÷ liÖu vµ bao gãi th«ng tin
Trõu tîng hãa lµ c¸ch biÓu diÔn nh÷ng ®Æc tÝnh chÝnh vµ bá qua nh÷ng chi tiÕt
vôn vÆt hoÆc nh÷ng gi¶i thÝch. Khi x©y dùng c¸c líp, ta ph¶i sö dông kh¸i niÖm trõu t-
îng hãa. VÝ dô ta cã thÓ ®Þnh nghÜa mét líp ®Ó m« t¶ c¸c ®èi tîng trong kh«ng gian
h×nh häc bao gåm c¸c thuéc tÝnh trõu tîng nh lµ kÝch thíc, h×nh d¸ng, mµu s¾c vµ c¸c
ph¬ng thøc x¸c ®Þnh trªn c¸c thuéc tÝnh nµy.
ViÖc ®ãng gãi d÷ liÖu vµ c¸c ph¬ng thøc vµo mét ®¬n vÞ cÊu tróc líp ®îc xem nh
mét nguyªn t¾c bao gãi th«ng tin. D÷ liÖu ®îc tæ chøc sao cho thÕ giíi bªn ngoµi (c¸c
®èi tîng ë líp kh¸c) kh«ng truy nhËp vµo, mµ chØ cho phÐp c¸c ph¬ng thøc trong cïng
líp hoÆc trong nh÷ng líp cã quan hÖ kÕ thõa víi nhau míi ®îc quyÒn truy nhËp. ChÝnh
c¸c ph¬ng thøc cña líp sÏ ®ãng vai trß nh lµ giao diÖn gi÷a d÷ liÖu cña ®èi tîng vµ phÇn
cßn l¹i cña ch¬ng tr×nh. Nguyªn t¾c bao gãi d÷ liÖu ®Ó ng¨n cÊm sù truy nhËp trùc
tiÕp trong lËp tr×nh ®îc gäi lµ sù che giÊu th«ng tin.
HINH_CN
Thuéc tÝnh :
x1,y1
d,r
Ph¬ng thøc :
NhËp_sl
DiÖn tÝch
Chu vi
HiÓn thÞ
3

1.2.4. KÕ thõa
KÕ thõa lµ qu¸ tr×nh mµ c¸c ®èi tîng cña líp nµy ®îc quyÒn sö dông mét sè tÝnh
chÊt cña c¸c ®èi tîng cña líp kh¸c. Sù kÕ thõa cho phÐp ta ®Þnh nghÜa mét líp míi trªn
c¬ së c¸c líp ®· tån t¹i. Líp míi nµy, ngoµi nh÷ng thµnh phÇn ®îc kÕ thõa, sÏ cã thªm
nh÷ng thuéc tÝnh vµ c¸c hµm míi. Nguyªn lý kÕ thõa hç trî cho viÖc t¹o ra cÊu tróc
ph©n cÊp c¸c líp.
1.2.5. T¬ng øng béi
T¬ng øng béi lµ kh¶ n¨ng cña mét kh¸i niÖm (ch¼ng h¹n c¸c phÐp to¸n) cã thÓ sö
dông víi nhiÒu chøc n¨ng kh¸c nhau. VÝ dô, phÐp + cã thÓ biÓu diÔn cho phÐp “céng”
c¸c sè nguyªn (int), sè thùc (float), sè phøc (complex) hoÆc x©u ký tù (string) v.v...
Hµnh vi cña phÐp to¸n t¬ng øng béi phô thuéc vµo kiÓu d÷ liÖu mµ nã sö dông ®Ó xö
lý.
T¬ng øng béi ®ãng vai quan träng trong viÖc t¹o ra c¸c ®èi tîng cã cÊu tróc bªn
trong kh¸c nhau nhng cïng dïng chung mét giao diÖn bªn ngoµi (nh tªn gäi).
1.2.6. Liªn kÕt ®éng
Liªn kÕt ®éng lµ d¹ng liªn kÕt c¸c thñ tôc vµ hµm khi ch¬ng tr×nh thùc hiÖn lêi gäi
tíi c¸c hµm, thñ tôc ®ã. Nh vËy trong liªn kÕt ®éng, néi dung cña ®o¹n ch¬ng tr×nh øng
víi thñ tôc, hµm sÏ kh«ng ®îc biÕt cho ®Õn khi thùc hiÖn lêi gäi tíi thñ tôc, hµm ®ã.
1.2.7. TruyÒn th«ng b¸o
C¸c ®èi tîng göi vµ nhËn th«ng tin víi nhau gièng nh con ngêi trao ®æi víi nhau.
ChÝnh nguyªn lý trao ®æi th«ng tin b»ng c¸ch truyÒn th«ng b¸o cho phÐp ta dÔ dµng
x©y dùng ®îc hÖ thèng m« pháng gÇn h¬n nh÷ng hÖ thèng trong thÕ giíi thùc. TruyÒn
th«ng b¸o cho mét ®èi tîng lµ yªu cÇu ®èi tîng thùc hiÖn mét viÖc g× ®ã. C¸ch øng xö
cña ®èi tîng ®îc m« t¶ bªn trong líp th«ng qua c¸c ph¬ng thøc.
Trong ch¬ng tr×nh, th«ng b¸o göi ®Õn cho mét ®èi tîng chÝnh lµ yªu cÇu thùc
hiÖn mét c«ng viÖc cô thÓ, nghÜa lµ sö dông nh÷ng hµm t¬ng øng ®Ó xö lý d÷ liÖu ®·
®îc khai b¸o trong ®èi tîng ®ã. V× vËy, trong th«ng b¸o ph¶i chØ ra ®îc hµm cÇn thùc
hiÖn trong ®èi tîng nhËn th«ng b¸o. Th«ng b¸o truyÒn ®i còng ph¶i x¸c ®Þnh tªn ®èi t-
îng vµ th«ng tin truyÒn ®i. VÝ dô, líp CONGNHAN cã thÓ hiÖn lµ ®èi tîng cô thÓ ®îc
®¹i diÖn bëi Hoten nhËn ®îc th«ng b¸o cÇn tÝnh l¬ng th«ng qua hµm TINHLUONG ®·
®îc x¸c ®Þnh trong líp CONGNHAN. Th«ng b¸o ®ã sÏ ®îc xö lý nh sau:
Trong ch¬ng tr×nh híng ®èi tîng, mçi ®èi tîng chØ tån t¹i trong thêi gian nhÊt
®Þnh. §èi tîng ®îc t¹o ra khi nã ®îc khai b¸o vµ sÏ bÞ hñy bá khi ch¬ng tr×nh ra khái
miÒn x¸c ®Þnh cña ®èi tîng ®ã. Sù trao ®æi th«ng tin chØ cã thÓ thùc hiÖn trong thêi
gian ®èi tîng tån t¹i.
1.3. C¸c bíc cÇn thiÕt ®Ó thiÕt kÕ ch¬ng tr×nh theo híng ®èi tîng
Ch¬ng tr×nh theo híng ®èi tîng bao gåm mét tËp c¸c ®èi tîng vµ mèi quan hÖ gi÷a
c¸c ®èi tîng víi nhau. V× vËy, lËp tr×nh trong ng«n ng÷ híng ®èi tîng bao gåm c¸c bíc
sau:
1. X¸c ®Þnh c¸c d¹ng ®èi tîng (líp) cña bµi tãan.
2. T×m kiÕm c¸c ®Æc tÝnh chung (d÷ liÖu chung) trong c¸c d¹ng ®èi tîng nµy,
nh÷ng g× chóng cïng nhau chia xÎ.
3. X¸c ®Þnh líp c¬ së dùa trªn c¬ së c¸c ®Æc tÝnh chung cña c¸c d¹ng ®èi tîng.
4
CONGNHAN.TINHLUONG (Hoten)
§èi tîng Th«ng b¸o Th«ng tin

4. Tõ líp c¬ së, x©y dùng c¸c líp dÉn xuÊt chøa c¸c thµnh phÇn, nh÷ng ®Æc tÝnh
kh«ng chung cßn l¹i cña c¸c d¹ng ®èi tîng. Ngoµi ra, ta cßn ®a ra c¸c líp cã quan hÖ víi
c¸c líp c¬ së vµ líp dÉn xuÊt.
1.4. C¸c u ®iÓm cña lËp tr×nh híng ®èi tîng
C¸ch tiÕp cËn híng ®èi tîng gi¶i quyÕt ®îc nhiÒu vÊn ®Ò tån t¹i trong qu¸ tr×nh
ph¸t triÓn phÇn mÒm vµ t¹o ra ®îc nh÷ng s¶n phÈm phÇn mÒm cã chÊt lîng cao.
Nh÷ng u ®iÓm chÝnh cña LTH§T lµ:
1. Th«ng qua nguyªn lý kÕ thõa, cã thÓ lo¹i bá ®îc nh÷ng ®o¹n ch¬ng tr×nh lÆp l¹i
trong qu¸ tr×nh m« t¶ c¸c líp vµ më réng kh¶ n¨ng sö dông c¸c líp ®· ®îc x©y dùng.
2. Ch¬ng tr×nh ®îc x©y dùng tõ nh÷ng ®¬n thÓ (®èi tîng) trao ®æi víi nhau nªn
viÖc thiÕt kÕ vµ lËp tr×nh sÏ ®îc thùc hiÖn theo quy tr×nh nhÊt ®Þnh chø kh«ng ph¶i
dùa vµo kinh nghiÖm vµ kü thuËt nh tríc. §iÒu nµy ®¶m b¶o rót ng¾n ®îc thêi gian x©y
dùng hÖ thèng vµ t¨ng n¨ng suÊt lao ®éng.
3. Nguyªn lý che giÊu th«ng tin gióp ngêi lËp tr×nh t¹o ra ®îc nh÷ng ch¬ng tr×nh
an toµn kh«ng bÞ thay bëi nh÷ng ®o¹n ch¬ng tr×nh kh¸c.
4. Cã thÓ x©y dùng ®îc ¸nh x¹ c¸c ®èi tîng cña bµi to¸n vµo ®èi tîng cña ch¬ng
tr×nh.
5. C¸ch tiÕp cËn thiÕt kÕ ®Æt träng t©m vµo ®èi tîng, gióp chóng ta x©y dùng ®-
îc m« h×nh chi tiÕt vµ gÇn víi d¹ng cµi ®Æt h¬n.
6. Nh÷ng hÖ thèng híng ®èi tîng dÔ më réng, n©ng cÊp thµnh nh÷ng hÖ lín h¬n.
7. Kü thuËt truyÒn th«ng b¸o trong viÖc trao ®æi th«ng tin gi÷a c¸c ®èi tîng gióp
cho viÖc m« t¶ giao diÖn víi c¸c hÖ thèng bªn ngoµi trë nªn ®¬n gi¶n h¬n.
8. Cã thÓ qu¶n lý ®îc ®é phøc t¹p cña nh÷ng s¶n phÈm phÇn mÒm.
Kh«ng ph¶i trong hÖ thèng híng ®èi tîng nµo còng cã tÊt c¶ c¸c tÝnh chÊt nªu trªn.
Kh¶ n¨ng cã c¸c tÝnh chÊt ®ã cßn phô thuéc vµo lÜnh vùc øng dông cña dù ¸n tin häc
vµ vµo ph¬ng ph¸p thùc hiÖn cña ngêi ph¸t triÓn phÇn mÒm.
1.5. C¸c ng«n ng÷ híng ®èi tîng
LËp tr×nh híng ®èi tîng kh«ng lµ ®Æc quyÒn cña mét ng«n ng÷ nµo ®Æc biÖt.
Còng gièng nh lËp tr×nh cã cÊu tróc, nh÷ng kh¸i niÖm trong lËp tr×nh híng ®èi tîng cã
thÓ cµi ®Æt trong nh÷ng ng«n ng÷ lËp tr×nh nh C hoÆc Pascal,... Tuy nhiªn, ®èi víi
nh÷ng ch¬ng tr×nh lín th× vÊn ®Ò lËp tr×nh sÏ trë nªn phøc t¹p. Nh÷ng ng«n ng÷ ®îc
thiÕt kÕ ®Æc biÖt, hç trî cho viÖc m« t¶, cµi ®Æt c¸c kh¸i niÖm cña ph¬ng ph¸p híng
®èi tîng ®îc gäi chung lµ ng«n ng÷ ®èi tîng. Dùa vµo kh¶ n¨ng ®¸p øng c¸c kh¸i niÖm
vÒ híng ®èi tîng, ta cã thÓ chia ra lµm hai lo¹i:
1. Ng«n ng÷ lËp tr×nh dùa trªn ®èi tîng
2. Ng«n ng÷ lËp tr×nh híng ®èi tîng
LËp tr×nh dùa trªn ®èi tîng lµ kiÓu lËp tr×nh hç trî chÝnh cho viÖc bao gãi, che
giÊu th«ng tin vµ ®Þnh danh c¸c ®èi tîng. LËp tr×nh dùa trªn ®èi tîng cã nh÷ng ®Æc
tÝnh sau:
•Bao gãi d÷ liÖu
•C¬ chÕ che giÊu vµ truy nhËp d÷ liÖu
•Tù ®éng t¹o lËp vµ xãa bá c¸c ®èi tîng
•PhÐp to¸n t¶i béi
Ng«n ng÷ hç trî cho kiÓu lËp tr×nh trªn ®îc gäi lµ ng«n ng÷ lËp tr×nh dùa trªn ®èi
tîng. Ng«n ng÷ trong líp nµy kh«ng hç trî cho viÖc thùc hiÖn kÕ thõa vµ liªn kÕt ®éng,
ch¼ng h¹n Ada lµ ng«n ng÷ lËp tr×nh dùa trªn ®èi tîng.
5

