1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Giáo trình lập trình hướng đối tượng ts trương quốc bảo (chủ biên)

221 3 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Giáo Trình Lập Trình Hướng Đối Tượng
Tác giả Ts. Truong Quoc Bao, ThS. Tran Thi Thuy, ThS. Tran Lam Quyen
Trường học Trường Đại Học Cửu Long
Chuyên ngành Công Nghệ Thông Tin
Thể loại Giáo Trình
Năm xuất bản 2020
Thành phố Hà Nội
Định dạng
Số trang 221
Dung lượng 3,49 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Ngon ngu C# duoc str dung de minh hoa cho phuong phap lap trinh huong ddi tuong trong giao trinh nay, vi day la mot ngon ngu don gian, than thien va dac biet la thudn huong ddi tuong.. N

Trang 2

■ ,GlAO TRINH *

LAP TRlHH HU0NG DOI TlfOHG

Trang 3

NHA XUAT BAN MONG BAN DOC

■ • 1.,r ■

60

- : - 674 2020

QDND - 2020

Trang 4

BQ GIAO DUG VA DAO TAO

TRirdNG DAI HOC CUU LONG

NHA XUAT BAN QUAN DOI NHAN DAN

(Dung cho sinh vien ngdnh cong nghe thong tin)

Trang 5

i

-Chu bien: TS Truong Quoc Bao

Tham gia bien soan: ThS Tran Thi Thuy

, ThS Tran Lam Quyen\

Trang 6

MUC LUC

12 14

19

• 19 20 20 20 22 23 31

36 37 39 41 42

DANH MUC HINH ANH VA BANG BIEU

DANH MUC Ttf VIET TAT

DOITU QNG

1.1 Giai thieu

1.2 Cac phuong phap lap trinh

1.2.1 Lap trinh tuyen tinh

1.2.2 Lap trinh huang cau true

1.2.3 Lap trinh huang dan the

1.2.4 Phuong phap tien can huang doi tuang

1.2.5 So sanh hai each tiep can

1.2.6 Xu huang phat then cua lap trinh huang doi tuang 34 1.3 Mot so khai niem ca ban

1.3.1 Doi tuang

1.3.2 Lap

1.3.3 Thuoc tinh

1.3.4 Phuong thuc

Trang 7

1.3,5 Trinitiiong hoa

46 46

■ , :46 48 49 50 50

51

' -52 1.6.2 ASP.NET va C#.NET

53 1.6.3 Java

55 56

■ 57 57

60

64

66

2.5.1 Phuong thuc tao (constructor) 67

2.2 Thuoc tinh truy cap (Muc do truy cap)

2.3 Cach su dung cac doi tuong ciia lop

2.4 Ttr khoa this

1.3.6 Thong diep

1.4 Cac dac diem quan trong cua lap trinh huong doi tuong

CAU HOI ON TAP

Chuang 2: LOIP DOI TURING

2.1 Khai bao lop '■

1.4.3 Da hinh

1.5 Mot so thuat ngu cua lap trinh huong doi tuong

1.6 Mot so ngon ngu lap trinh huong doi tuong

1.6.1 C++

1.4.1 Dong goi.

1.4.2 KSthua

Trang 8

69 70

2.7.1 Thuoc tinh tinh

74 76

’ll

78

80

81 86 90 90 90 91 91 92

■ 92

93

2.5.2 Phuong thuc tao sao chep (copy constructor)

2.6 Huy doi tuong

73

2.11.1 Cac truong chi doc

2.11.2 Lop truu tuong

2.11.3 Lop giao dien

2.11.4 Lop Sealed

2.11.5 Lop tinh

CALF HOI ON TAP

2.7.2 Phuong thuc tinh

2.8 Truyen tham so

2.8.1 Truyen tham tri bang tham so kieu gia tri

2.8.2 Truyen tham chieu bang tham so kieu gia tri

vdi tu khoa ref

2.8.3 Truyen tham chieu voi tham so kieu gia tri

bing tii khoa out

2.9 Qua tai phuong thuc (nap chong - overloading)

2.10 Dong goi du lieu vai thuoc tinh

2.11 Mot s6 khai niem khac

Trang 9

105 105 106 107 112 117 118 118 119 119 119 121 123 123 124 125 126 128

4.4 Goi phuang thuc tao cua lap ca sa

4.5 Vi du

BAI TAP

Chiroug 3: NAP CHONG TOAN TU* (OPERATOR

OVERLOADING)

5.1 Toantu

3.2 Nap chong loan tur

■3.2.1 Toan tu mot ngoi

3.2.2 Toan tu hai ngoi

3.3 Pham vi su dung toan tu

3.4 Yeu ciu khi su dung

3.5 Uu nhugc diem cua tai dinh nghTa toan tu

Trang 10

138 140 141 141 143 147 149 149 150 151 156

- 5.4 VI du

166 : 171 173 173 174 179 181 181 181 184

; 5.2 Tao phuong thiic da hinh

5.3 Phan biet tir khoa new va override

TONG KET CHLTONG 5

BAI TAP

ChtfOTig 6: INTERFACE (GIAO DIEN)

6.1 Gioi thieu

6.2 Thue thi mot giao dien

6.3 Thue thi nhiSu giao dien

4.6 Lop co so va doi tuong thanh phan

4.7 Nghiem cam ke thira

Trang 11

6.4 Ma rang giao dien 188

189 190 191 191 193

204 204

211

TONG KET CHLTONG 6

BAI TAP

1 C# va Net

1.4 Ngon ngu C#

2 Tao ung dung trong C#

2.1 Lop, doi tuong va kieu

2.3 Str dung cong cu do 16i cua Visual Studio Net ■ 202

3 Co sc cua ngon ngu C#

S.l.KiSu

Trang 12

216 216

Trang 13

DANH MUC HINH ANH VA BANG BlfiU

A • 9

so kieu gia tri

Hinh 2.1 KSt qua chay chuong trinh minh hoa lop di&n

Hinh 2.2 Ket qua chuong trinh minh hoa lop hoc sinh

Hinh 2.3 KSt qua minh hoa v6 thuoc tinh tmh

Hinh 2.4 Truyen tham tri bang tham s6 ki$u gia tri

Hinh 2.5 TruySn tham chiSu bang tham s6 ki6u gia tri

voi tu khoa ref

Hinh 2.6 Truyen tham chieu bang tham

voi tir khoa ref voi lop thoi gian

Hinh 2.7 Truyen tham chi&i voi tham s6 ki£u gia tri bang tir khoa out Thong bao loi

Hinh 2.8 Kit qua chay minh hoa chuong trinh vi du v£ qua tai phuong there

Hinh 2.9 K6t qua chay minh hoa chuong trinh vi du vS qua tai phuong thuc Lop thoi gian

Hinh 2.10 Ket qua chuong trinh minh hoa v£ dong goi

du lieu vdi thuoc tinh

Hinh 3.1 Ket qua chay chuong trinh minh hoa v£ toan tu

mot ngoi Lop Thoi gian

Hinh 3.2 Ket qua chay chuong trinh minh hoa v£ toan tir mot ngoi Lop sd

Trang 14

117 131 137

156 165 170 184 154

, \

Hinh 3.3 Ket qua chay chuang trinh minh hoa ve loan tur

hai ngoi Lop Phan so

Hinh 4.1 Ket qua chay chucmg trinh vi du minh hoa ve

ke thua Quan ly luong nhan vien

Hinh 4.2 Ket qua chay chucmg trinh vi du minh hoa ve

ke thua Tuyen sinh

Hinh ‘4.3 Ket qua chay chuong trinh vi du minh hoa ve

ke thua Hinh hoc

Hinh 5.1 K£t qua chay chucmg trinh minh hoa phan biet

tu khoa new va override

Hinh 5.2 Ket qua chay chuomg trinh minh hoa ve Da hinh Quan ly luomg nhan vien

Hinh 5.3 Ket qua chay chuomg trinh minh Hoa ve Da

-Hinh 6.1 K6t qua chay vi du minh hoa ve Interface Lap Xe

Bang 5.1 Phuong thuc cua lap Object ma lap dan xuat

co the ghi de

Trang 15

DANH MUC TtT VIET TAT• • ■

OOP Object Oriented Programming

Object Oriented Methoology

Phan rich huong doi tuong Thiet ke huong doi tuong Phan rich thiet ke huong

Lap trinh huong doi tuong

Trang 16

LCH MdDAU

Phan mem ngay cang Ion va phuc tap va doi hoiphai duoc cap nhat lien tuc d£ dap ung nhirng yen canmoi cua nguoi dung Phuong phap lap trinh thu tuc

truyen thong dan tro nen khong dap ung duoc nhung doi hoi do cua nganh cong nghiep phan mem Lap trinh

huong doi tuong da ra doi trong boi canh nhu vay de ho tro su dung lai va phat trien cac phan mem quymo Ion.Phuong phap lap trinh huong doi tuong la motphuong phap lap trinh duoc su dung, boi hau het cacngon ngu lap trinh pho dung Day la phuong phap lap

trinh duoc de xu4t boi Dr Lan Kay vao nhung nam diu

cua thap nien 70 Mo hinh ma phuong phap lap trinh

huong ddi tuong d£ xu^tduatrenkhai niem ddi tuong va

lop, trong do chuong trinh la mot tap cac doi tuong tuong tac lan nhau

Ngon ngu C# duoc str dung de minh hoa cho

phuong phap lap trinh huong ddi tuong trong giao trinh nay, vi day la mot ngon ngu don gian, than thien va dac

biet la thudn huong ddi tuong Su don giancuangon ngu

C# giup nguoi hoc co thd tap trung vao tim hidu phuong

Trang 17

phap lap trinh, khong bi phan tan bdi rao can cua ngon ngu lap trinh Ngoai ra, C# cung la ngon ngfr lap trinh dugc su dung bdi nhieu mon hoc khac trong chuong trinh dao tao Ky su Cong nghe Thong tin cuaTruongDaihoc Cuu Long.

Giao trinh nay cung cap cho sinh vien cac kienthuc

Mon lap trinh hudng doi tuong theo chuong trinh

duoc phanbo lam 3 tin chi (45 tiet) ly thuyet va 1 tin chi(30 tiet) thuc hanh Noi dung cua giao trinh chia lam 6 chuong va 1 phu luc nhu sau:

- Chuong 1: Tong quan ve lap trinh hudng d6i tuong.

Trinh bay su tien hoa cua each tiep can tir lap trinh

truyen thong den each tiep can cua lap trinh hudng doi tuong va xu hudng phat trien cua lap trinh hudng ddi

tuong hien nay Trong chuong nay cung trinh bay cac

khai niem co ban nhu ddi tuong, lop ddi tuong vdi cacthudc tinh va phuong thuc, cac dac diem co ban cua lap

trinh hudng ddi tuong nhu tinh thua kd, tinh da hinh, tinhdong goi Va gidi thieu tong quan mot so ngon ngu lap trinh hudng ddi tuong thong dung hien nay

Trang 18

- Chinmg 2: Lop doi twang Trinh bay cac ky

thuat lap trinh huong doi ttrong dua tren ngon ngu C#

nhu khai bao lop,cac thuoc tinh va phuong thuc lop; tao,huy doi tuong; thanh vien tinh; truyen tham so; qua tai

r

phuong thuc va mot so khai niem khac trong lap trinh hudng doituang (lap trim tuang, lop giao dien, lap sealed,laptinh)

- Chirong 3: Nap chdng toan tu Trinhbay cac khai

niem va cai dat nap chong toan tu tren C# Trong chuang

nay, cung trinh bay uu, nhugc diem, pham vi su dung va

r x

mot so yeu cau khi tai dinh nghia toan tu tren C#

- Chuang 4: Ke thira. Trong chuang nay, chung

r

toi trinh bay ky thuat ke thua tren C#

- Chuang 5: Da hinh Trinh bay ky thuat da hinh

F

tren C# nhu tao phuong thuc da hinh, mot so luu yvdi tu

khoa new va overrideva lop trimtuang

- Chuang 6: Interface Trinh bay cac ky thuat lap

trinh giao dien cobanva nang cao trenC#

- Phu luc: Ngon ngu C# Giai thieu nhung khai

niem va nhung quy uac ban dau cua ngon ngu lap trinhC# Cau true chuong trinh, each bien dich, each dat tenbi£n, ki6u du lieu va cau true lenh ben trong ngon nguC#

Viec cho ra dai mot quyen giao trinh vbi muc tieu

nhu da neu d tren la khong dan gian khi kha nang va

THU

Trang 19

Tien siTRITONGQUOC BAG

kinh nghiem ciia nhom bien soan con gidi han; nhieukhai niem, thuat ngu dung trong giao trinh co nhieu dinh

nghia va each tiep can khac nhau Vi vay giao trinh nay

chac khdng tranh khdi nhung khiem khuyet, rat mongnhanduoc su gop ycuacac dongnghiep va ban doc

Trang 20

- Trinh baycac phuong phap lap trinh

- Mot so khai niem co ban trong lap trinh huong

mem cang phat trien thi ngudi ta cang thay ro tarn quan trong cua phuong phap lap trinh Phuong phap lap trinh tdt khong chi dam bao tao ra cac phan mem tot ma con

hd tro thiet ke phan mem cd tinh ma va ho tro kha nang

su dung lai cac mo dun Nho do chung ta cd the de dang

Trang 21

bao tri, nang cap phan mem cung nhu giam chi phi phat

trien phan mem

1.2 Cacphuong phap lap trinh

1.2.1 Lap trinh tuyen tinh

Dac tnmg co ban cua lap trinh tuyen tinh la tu duy

Lap trinh tuyen tinh co hai dactnmg:

- Dan gian: Chuang trinh duac tien hanh dan gian

theoloituantu, khong phuc tap

- Dan luong: Chi cd mot ludhg \ cdng viec duy% nhat,

va cac cdng viec duac thuchientuan tu trongludng do

LTu diem cua lap trinh tuyen tinh la chuong trinh

dan gian, de hieu, de ap dung cho cac chuang trinh dan

gian Vai cac chuang trinh phuc tap, khdng the su dung

lap trinh tuyen tinh de giai quyet

f

Ngay nay lap trinh tuyentinh chi ton taitrongpham

vi cac md dun nhd nhat cua cac phuong phap lap trinh khac Vi du nhu mot chuang trinh con cua lap trinh cd cau true, cac lenh cung duac thuc hien tuantu tu dau dencudi chuang trinh con

1.2.2 Lap trinh hirong cau true

Trong lap trinh hudng cau true, chuang trinh chinh

duac chia thanh cac chuangtrinh con va cac chuang trinh

Trang 22

con thuc hien mot cong viec xac dinh Chuang trinh chinh se goi chuang trinh con theo mot giai thuat hoac mot cau true duoc xac dinh Cac ngon ngu lap trinh

hudngcau truepho bien nhu Pascal, C va C++

Dac trung co ban nhat cua lap trinh huang cau true

- Cau true du lieu la each to chuc du lieu, each mo

ta baitoan dudi dang ngon ngu lap trinh

- Giai thuat la mot quy trinh de thuc hien mot cong

viecxac dinh

Trong chuong trinh, giai thuat co quan he phuthuocvao cau true du lieu:

- Mot cau true du lieu chi phu hop vdi mot so han

che cac giai thuat

- Neuthay doi cau true dulieu thi phai thay doi giai

thuat chophu hop

- Mot giai thuat thuang phai di kem vai mot cau

F

truedu lieunhat dinh

Tinh chatcua lap trinh hudng cau true:

- Moi chuong trinh con co the duac goi nhieu lantrong chuong trinh chinh,

- Cac chuong trinh con co the duoc goi den theo mot thu tubat ky, tuy thuoc vao giai thuat trong chuong

Trang 23

trinh chinh ma khong phu thuoc vao thii tu- khai bao cuacac chuong trinh con

motso can true dieu khien chuong trinh

- Chuang trinh sang sua, de hieu, de theo doi

- Tu duy giai thuat ro rang

r

- Lap trinh huong cau true khong ho trgviec su dung

lai ma nguon: Giai thuat luon phu thuoc chat che vao cau

true du lieu, do do khi thay doi cau true du lieu thi phai

thaydoi giaithuat,nghia la phai viet laichuong trinh

-Khong phuhopvai cac chuong trinh Ion

Van•> de co ban cua lap trinh huong cau true la lamsao de chia chuong trinh Ion thanh cac chuong trinh con

chophuhopvdi yeu cau, chuc nang va mucdich cua moi

bai toan Thong thuong de phan ra bai toan trong lap

trinh co cau true, ngubi ta thiet ke theo phuong phap tir

f

tren xuong (top down)

1.2.3 Lap trinh hirbng don th£

Trong phuong phap nay ngubi ta xem chuong trinh

la mot he thong cac don the, moi mot don the la mot he

thong cac thu tuc va ham Khi do, viec viet chuong trinh

la xac dinh xem chuong trinh gom nhung don the nao?

Trang 24

Dan tM n

Kh6i khai bdo

void main() {

- Donthe hudng du lieu ladon the duoc thiet ke va

xay dung de phuc vu cho mot kieu du lieu nao do ben

trongchuong trinh Vi du: Thu vienstring.h

- Don the hudng chuc nang la don the duoc thiet ke

va xay dung de phuc vu cho motnhdm chuc nang nao do

bentrongchuong trinh Vi du: Thu vien math.h

Dan th& 1

Trang 25

- Khong quan ly duoc su thay doi du lieu khi co

nhieu chuong trinh cung thay doi mot bien chung Van

de nay dac biet nghiem trong khi cac ung dung ngay cang Ion, nguoi ta khong the kiem soat duoc truy nhap

dencac biendulieuchung

r

- Khong tiet kiem duoc tai nguyen con nguoi: Giai

thuat gan lien voi cau true du lieu, neu thaydoi cau true

du lieu, se thay doi giai thuat va phai viet lai ma chuong trinh tu dau

De khac phuc duoc hai han che nay khi giai quyetcac bai toan Ion, nguoi ta xay dung mot phuong phap tiep can moi la phuong phap lap trinh hudng doi tuong,voi hai muc dich:

*> r

- Dong goi du lieu de han che su truy nhap tu do

vao dulieu, khong quan lyduoc

- Cho phep su dung lai ma nguon, han ch£ viec phai viet lai ma tu dau cho cac chuong trinh

Viec dong goi du lieu duoc thuc hien theo phuong

phap trim tuong hoa d6i tuong thanh lop tu thap len cao nhu sau:

- Thu thap cac thuoc tinh cua moi doi tuong, gincacthuoc tinhvao doi tuong tuong ung

- Nhdiri cac doi tuong co cac thuoc tinh tuong tu

nhau thanh nhom, loai bo bdt cac thuoc tinh cabiet, chigiu lai cac thuoc tinh chung nhat Day duoc goi la qua

trinh trim tuong hoa doi tuong thanh lop

Trang 26

- Dong goi du lieu cua cac doi tuong vao lop tuong

ung Moi thuoc tinh cua doi tuong tro thanh mot thuoc tinh cua lop tuong ung

- Viec truy cap du lieu duoc thuc hien thong quacac phuong thucduoc trang bi cho lop Khong duoc truycap tu do true tiep den du lieu

- Khi co thay doi trong du lieu cua doi tuong, ta chi

can thay doi cac phuong thuc truy cap thuoc tinh cualop

ma khong can thay doi ma nguon cua cac chuong trinh

su dung lop tuong ung

Viec cho phep sudung lai ma nguonduoc thuchienthong qua co ch6 ke thua trong lap trinh hudng doituong Theo do:

- Cac lop co the duoc ke thua nhau de tan dung cac

thuoc tinh, cac phuong thuccua nhau

- Trong lop danxuat(lop duockethua, lop con) co the

su dung lai cacphuong thuc cua lop co so (lop bi lop khac k£thua, lop cha) ma khongcAn thiet cai dat lai ma nguon

- Ngay ca khi lop dan xuAt dinh nghia lai cac phuong thuc cho minh, lop co so cung khong bi anh hudng va

khong phaisua lai bat ky mot doanma nguon nao

Ngon ngu lap trinh hudng doi tuong pho bien hien

nay la C# (CSharp), C++, Java, Trongdo C++ la ngon

ngu co nhung dac trung co ban cua lap trinh hudng doi tuong nhung van khong phai la ngon ngu lap trinh thuan

Trang 27

hudng doi tirong Con C# va Java thuc su la ngon ngulap trinh thuan huong doi tuong.

Lap trinh hu&ng doi tuong cd hai dqc tnmg co ban:

Dong goi du lieu: Du lieu luon duoc to chuc thanhcac thuoc tinh cua lop doi tuong Viec truy cap d£n dulieu phaithong qua cac phuong thuc cuadoi tuong lop

Su dung lai ma nguon: Duoc the hien thong qua co

che ke thua

- Khong con nguy co du lieu bi thay ddi tu do trong

chuongtrinh

- Khi thay doi cau true du lieu cua mot lop, khong

can thay doi cac ma nguon cua cac lop khac ma chi c&nthay doi mqt so phuong thuc ciia lop bi thay d6i DiSu nay han che su anh hudng xau cua viec thay ddi du lieu

den cac lop khac trong chuong trinh

-Cd the su dung lai ma nguon, tiet kiem tai nguyen

-Phuhop vdi cac du an phan mem Ion, phuc tap

I.2.4.2 Phuong phap phan tich va thiet ke hirdng doi tuong

Mot so van de co ban dat ra cho phuong phap hudng ddi tuong la tu mot bai toan ban dAu, lam sao

de thu duoc mot tap cac ddi tuong, vdi cac chuc nang

bai toan dat ra? Phuong phap phan tich thidt kd hudng

Trang 28

d6i tugng ra doi nham tra lai cho can hoi nay Muc

dich la xay dung mot tap hop cac lop doi tuong tuong

ung vdi moi bai toan, phuong phap nay tien hanh theohai pha chinh:

- Pha phan tich: Chuy^n doi yen cau bai toan tir

ngon ngu tu nhien sang ngon ngumo hinh

- Pha thiet ke: Chuyen doi dac ta bai toan duoi dang ngon ngu mo hinh sang mot mo hinh cu the co thecaidat duoc

Hai pha phan tich va thiet ke nay bao gom nhieubuoc khac nhau:

-Mo ta bai toan

- Dac tayeu cau >

- Trich chon doi tuong

- Mo hinhhoa lop doi tuong

- Thietke tong quan

- Thietke chi tiet

Butfc 1: Mo ta bai toan

Bai toan ban dau duoc duoc phat bieu dudi dang

ngon ngu tunhien, bao gom:

- Muc dich, chuc nang chung

-Cac yeu cau ve thong tin du lieu

- Cac yeu c&u ve chuc nang thuchien

Trang 29

Bird’ c 2: Dac ta yeu cau

Cac yeu cau duoc hinh thuc hoa len mot muc cao

hon bang each su dungngon ngu kieukichban de mo ta

Trong motkich ban, moi chuc nang, moi boatdong duroc

mo ta bang mot kichbanbao gom:

- Cac tac nhan tham giavao kichban

- Vai tro cuamoi tac nhan trongkichban

- Thu tucac hanh dong ma moi tac nhan thuc hien:

Khi nao thuc hien, tac dong vao tac nhan nao, thong tinnao dugc trao doi

Qua trinh tren dugc tien hanh voi tat ca cac chuc nang yeucau cuahe thong

Bird’ c 3: Trich chon doi tirong

Bude nay se tien hanh de xuatcac ddi tugng co th£

cd mat trong he thong:

- Dua vao cac kich ban dugc mo ta trong budc hai,

chon ra cac tac nhan cd xuit hien d£ d£ xu&t thanh cac

ddi tugng

- Lua chon cac doi tugng bing each loai bo cac tac

nhan benngoai he thong, cac tac nhan trunglap

- Cudi cung, ta thu thap dugc tap cac ddi tugng cua

he thong

Bird’ c 4: Mo hinh hoa Idp doi tirnng

Budc nay tidn hanh triru tugng hoa ddi tugng thanhcac Idp:

Trang 30

- Thu thap tat ca cac thuoc tinh cua moi doi tugng vua thu thap duoc, dua vao yeu cau ve thong tin trongyeu cau he thong (tu buoc 1)

- Thu thap cac hanh dong ma moi doi tugng can

f

thuc hien, dua vao cac kich ban ma doi tugng tuong ung

co tham gia (trong buoc 2)

- Nhom cac doi tugng tuong tunhau, hoac co nhieu

> r

thuoc tinhgan giong nhau

- Loai bo mot so thuoctinh ca biet, rieng tu cua mot

so doi tugng trongnhom

- Mo hinh moi nhom doi tugng con lai thanh lop: Cac thuoc tinh chung cua cac ddi tugng thanh thuoc tinh

cua lop, cac hanh dong cua cac d6i tugng thanh phuongthuc cua lop

Ket qua thu dugc mot tap cac lopdoi tugng ban dau

ke moi quan he giua cac lop trong he thong:

- Xac dinh so do thua ke neu co giua cac lop: Neuhai lop co mot so thuoc tinh chung, thi tach cac thuoctinh chung lam thanh mot lop co so va hai lop ban dau d£u din xuat tu lop co so do Thong thuong, lop chungnhat se lam lop co so va lop cang cu the cang chi tiet thi

lamlop dan xuat

Trang 31

- Xac dinh tirang tac neu co giua cac lop: Dua vao

cac kich ban dugc mo ta trong buoc 2, hai tac nhan co

tirong tac vol nhau thi hai lop tuong ung o budc nay cung co tirang tac vbi nhau

Ket qua thu dugc cua budc nay la mot so do quan

he ben ngoai giua cac lop trong he thong

Binfc 6: Thiet ke chi tiet

f f

Budc nay se thuc hien thiet ke d muc vi mo, nghTa

la thiet ke kientrue ben trongcuamoi Idp ddi tugng:

- To chuc du lieu cua Idp theo cac thuoc tinh Quy

dinhpham vitruy cap cho tung thuoc tinh

- Thiet ke chi tiet each cu xu cua Idp ddi tugng

thong qua cac phuang thuc cua lap: Xac dinh kidu du

lieu tra ve, kieu tham so cua phuang thuc, mo ta thuat

toanchi tiet cho tungphuang thuc, neu can

Ket qua thu dugc cua budc nay la mot tap cac lap

vdi thiet ke chitietkientrueben trong

Sau cac budc phantich thiet ke hudng ddi tugng tu mot yeu cau cua bai toan ban d&u, ta thu dugc mot md

hinh he thonghudngddi tugng chi tidt:

- C6 cai nhin tong quan,vimd ve he thong b&ng md hinh thiet ke tong quan, chi ro sd lugng cac Idp ddi

tugng, mdi quan he ke thua va quan he tuang tac giuacac Idp ddi tugng trong he thdng

Trang 32

Co cai nhin chi tiet, vi mo ve he thong bang mo

Sau pha phan tich va thiet ke hudng doi tuong, ta

thu duoc dac ta he thong dudi dang mo hinh cac lop:

tren nhieumat:

- Phuong phap mo hinh bai toan khac nhau

-Dac trung khac nhau ve dong gdi

-Uii / nhuoc diem khac nhau

- Linh vuc ung dung khac nhau

Khac nhau ve phuong phap mo hinh

Hai phuong phap nay khac nhau hoan toan d each

Trang 33

- Phuong phap huong doi tuong bat dau bang

nhung doi tuong cu the, tap hop cac thuoc tinh cua tung doi tuong Sau do, nhom cac doi tuong tuong tu nhau

thanh nhom, loaibo cac thuoctinh qua ca biet,chi giu lai

Hai phuong phap tiep can nay cd nhung dac trung

hoan toan khac nhau:

- Phuong phap hudng doi tuong cd dac trung la dulieu duoc dong gdi de han che truy cap tu do true tiep

Thu hai la cho phep su dung lai ma ngudn de tiet kiem tai nguyen va edng sue

-Trongkhi do, dac trung cuaphuong phap lap trinh

truyen thong la cau true du lieu, giai thuat va moi quan

he phu thuoc chat che cua giai thuat vao cautrue du lieu

Khac nhau ve uu, nhuoc diem

•>

diem trai nguoc nhau nhu:

Trang 34

- Phuong phap huong doi tuong co uu diem la bao

ve du lieu tranh bi truy cap true tiep tu do tu ben ngoai, tiet kiem duoc tai nguyen va cong sue lap trinh do co the dung lai duoc ma nguon Tuynhien, phuong phap nay lai

kha phuc tap, kho theo doi duoc luong du lieu va hon

r \

nua giai thuat khong phai la van de trong tam cua phuong phap nay

5 f

- Trai lai, phuong phap lap trinh truyen thong lai co

uu diem la tu duygiai thuat ro rang, de theo doi luong du

lieu, chuong trinh dongian va de hieu Tuy nhien, khong

bao ve duoc an toan ve du lieu trong chuong trinh Hon

nua, han che Ion nhat la su phu thuoc chat che cua giai

thuat vao cautrue du lieu, khiencho khi thaydoi cau true

du lieu thi thuong phai thay doi giai thuat va do do, phai

viet lai ma cho chuong trinh

Khac nhau ve linh vuc ap dung

Do su khac nhauve cac dac trung va su khac nhau

ve uu, nhuoc diem, cho nen hai phuong phap nay cung

co su khac nhau dang ke tronglinh vuc ap dung:

- Phuong phap lap trinh huong doi tuong thuong

duoc ap dung cho bai toan Ion, phuc tap, co nhieu luong

du lieu khac nhau, khong the quan ly duoc bang phuong

phap lap trinh truyen thong Khi do, nguoi ta ’ dung phuong phap huong doi tuong de tan dung kha nang bao

ve du lieu tranh bi truy cap tu do Hon nua, tan dungkha

Trang 35

nang dung lai ma nguon cua phuang phap nay de tiet

kiem tai nguyen va cong sue

> r

- Trong khi do, phuang phap lap trinh truyen thong

thuong phu hapvdi cac bai toan nhd, co luong du lieu to rang, can phai tu duy giai thuat ro rang va nguai lap trinh

vln co kha nang tu quan ly dugc moi truy cap den cac dulieu cua chuang trinh

1.2.6 Xu huoug phat trien cua lap trinh hirdoig doi tirang

Lap trinh hirong thanh ph^n

Xuat phat tu lap trinh huang doi tuong, tu duy lap

trinh huang thanh phan (component oriented programming)

- Sau do, ngudi ta ghep cac thanh phan voi nhau de

thu dugc mot phan mem thoa man mot tap cac yeu cauxac dinh

Vai lap trinh huang thanhphan, ngudi ta co thetien

hanh lap trinh theo phuong phap sau:

- Xaydung mot thu viencac thanhphan, moi thanh phan thuchien mot cong viecxac dinh

Trang 36

ghep lai vdi nhau Nguvi lap trinh chi phai phattrien them

cac thanhphanminh canmachua co trong thu vien

Phuong phap nay co uu diem ratIon:

- Lap trinh vien co the chia se voi nhau nhung thanh

Trong xu hudng lap trinh hudng thanhphan, mot so

phuong phap lap trinh khac da nay sinh va dang phattrienmanh me:

- Lap trinh hudng agent (agent oriented programming)

- Laptrinh hudng aspect (aspectorientedprogramming)

Lap trinh hirdng agent

Lap trinh hudng agent cd the xem la mot muc triru

tuong cao hon cua lap trinh hudngthanhphan Trong do,

cac agent la cac thanh phan cd kha nang hoat dong doclap, tu chu de hoan thanh cong viec cua minh Hon nua,

cac agent cd kha nang chu dong lien lac vdi cac agent khac de cd the phdi hop, cong tac hay canh tranh nhau de hoan thanh nhiem vu

Lap trinhhudng agent cd hai dac trung coban:

Trang 37

/ 9

- Thu nhat la kha nang tu chu cua moi agent de

hoanthanh nhiem vu rieng

- Thu hai la tinh to , chuc xa hoi giua cac agent, cho•»

phep cac agent phoi hop, cong tac, canh tranh nhau de hoan thanh nhiem vu chung cua toan he thong

Lap trinh huong aspect

Lap trinh huong aspect cung la mot xu huong ciialap trinh huong thanh phan Theo do, moi thanh phan co nhiem vu hoan thanhtheo mot luong cong viec hoac mot

r \ o '

khia canh cua van de Sau do, tong hop cac thanh phan cua cac luong khac nhau, ta thu duoc giai phap cho baitoan cua minh

Lap trinh huong aspect co dac trung co ban:

- Tinh dong goi theo luong cong viec, hoac dong

goi theo khia canh cuavande

- Tinh don dieu theo luong, trong mot luong cong

f

viec, cac nhiem vu duoc thuchien lien tiep nhau, tuan tu nhu tronglap trinh tuyen tinh

1.3 Mot so khai niem * • co ban

Huong doi tuong la ky thuat mo hinh hoa mot he

Trang 38

- Ma s6: 1711020399

- Ho ten: Tran ThiThiiy

-Nganh hoc: Cong nghe thongtin

- Khoa: Ky thuat - Cong nghe

Trong khi do, trang thai cua thiet'bi trong phong/ khoa la:

(class) la mot khai niem triru tuong dung de chi mot tap

hop cac doi tuong co mat trong he thong Moi lop la dac

ta cac dac diem cua cac doi tuong thuoc lop do Cu the, mot dinh nghia lop mo ta tat ca cac thuoc tinh cua cac

ddi tuong thanh vien cua lop va phuong thuc thuc thihanh vi cua cac doi tuong do

- Trong bai toan quan ly trang thiet bi, moi thiet bi

cu the cua mot khoa/phdng la mot doi tuong Nhungkhai

niem “Thidt bi” la mot lop ddi tuong dung de chi chungchungmotthiet bi

Trang 39

Quan he giua lop va doi tuong gan giong nhu quan

he giua kieu du lieu va cac bien thuoc kieu du lieu do

Cac doi tuong duac tao ra khi chuong trinh chay va lop

thong tu dong goi mot ham khoi tao (Constructor) de khdi tao gia tri cho cac thuoc tinh cua doi tuang Ke tu

do, doi tuang bat dau ton tai, nd gui va nhan cac thong

f

diep va cudi cung thi nd bi huy di khi khdng con can tdi nua Trong khi doi tuang tdn tai, nd giu mot dinh danh

va trang thai cuaminh Moi doi tuang cd mot dinh danh

rieng va cd bo thuoc tinh rieng, doc lap vdi cac ddi tuang khac thuoc cung mot lop Trong thuc te, moi ddi tuong

cd vitri rieng trongbd nhd

Cac ddi tuang dung cac thong diep de lien lac vdi nhau Nhin tu phuong dien lap trinh, viec gui mot thongdiep tai mot ddi tuang chinh la goi mot phuongthuc ciiaddi tuang do, con viec mot ddi tuang nhan duac mot

Trang 40

kieu huang doi tirong la boat dong dinh nghia cac the

loai cua cac doi tirong do o hinh thuc cac khuon mau de

tao ra chung

Trong thoi gian chay, mot chirong trinh OOP chinh

la mot tap cac ddi tirong gui thong diep cho nhau de yencan dichvu va thirchien dich vu khi duoc yeu cau Viec

mot doi tirong thirc hien mot dichvu co the dan denviec

no thay doi trang thai cua ban than Mot vi du co tinh

chat gan voi the gidi thirc: xuat hoa don tai mot cua

f

hang Ta co cac doi tuong: nhan vien, khach hang, hang

hoa, doanh thu cua cua hang, Trinh tu dien ra nhu sau: Khach hang mua hang va nhan vien lap hoa don, mon

hang do se giam 1 trong kho, tien doanh thu cua cua hang

setanglen voi khoan tiencua khachmua vada trir thue va

so luong hoa don luu tru tang them 1 Nhuvay giao dich nay bao gom cac yeu cau dich vu va viec cac doi tuong

thuchien cac yeucau do, dong thoithaydoitinh trang cua

minh (doanh thu cua hang tang len, so luong hang trong

kho giam, so luonghoa don tang them, )

1.3.1 Doi tuong

Trong lap trinh hudng doi tuong gan nhu bat cu thu

gi cung co the duoc mo hinh hoa bang mot doi tuong

Moi ddi tuong co mot tap cac thuoc tinh (attribute) nhucac gia tri hay trang thai de mo hinh hoa doi tuong do.M6i ddi tuong co mot tap cac trach nhiem ma no thuchien bang each cung capdichvu cho cac ddi tuong khac

Cac dich vu nay cd the cho phep truy van thong tin haylamthayddi trangthai cua ddi tuong

Ngày đăng: 15/11/2023, 14:16

🧩 Sản phẩm bạn có thể quan tâm