Bài 7 Thiết kế hướng đối tượng - Pdf 13

Bé m«n C«ng nghÖ phÇn mÒm- Khoa CNTT- §HCN
Email:
K ngh phn mm
Software Engeneering
B môn Công ngh phn mm – HCN
2
NguynVnV
Ni dung
Bài 7: Thit k hng đi tng
̈ VÊn ®Ò tån t¹i trong h−íng kiÕn tróc
̈ Kh¸i niÖm liªn quan ®Õn ®èi t−îng
̈ Ng«n ng÷ UML
̈ Ph©n tÝch h−íng ®èi t−îng
̈ ThiÕt kÕ h−íng ®èi t−îng
̈ Sö dông mÉu thiÕt kÕ
B môn Công ngh phn mm – HCN
3
NguynVnV
TÀI LiU THAM KHO
1. Nguyn Vn V, Nguyn Vit Hà. Giáo trình k ngh phn
mm. Nhà xut bn i hc Quc gia Hà ni, 2008
2. Grady Booch, James Rumbaugh, Ivar Jacobson. The Unified
Modeling language User Guid. Addison-Wesley, 1998.
3. M. Ould. Managing Software Quality and Business Risk, John
Wiley and Sons, 1999.
4. Roger S.Pressman, Software Engineering, a Practitioner’s
Approach. Fifth Edition, McGraw Hill, 2001.
5. Ian Sommerville, Software Engineering. Sixth Edition, Addison-
Wasley, 2001.
6. Nguyn Vn V. Phân tích thit k h thng thông tin hin đi.
Hng cu trúc và hng đi tng, NXB Thng kê, 2002, Hà

Tơng tác giữa các đối tờng bằng truyền
thông báo
Các đối tợng có thể kế thừa nhau
B môn Công ngh phn mm – HCN
7
NguynVnV
VÝ dô kiÕn tróc h−íng ®èi t−îng
issue ()
sendReminder ()
acceptPayment ()
sendReceipt ()
invoice#
date
amount
customer
Invoice
invoice#
date
amount
customer#
Receipt
invoice#
date
amount
customer#
Payment
customer#
name
address
credit period

d1. Đối tơng
L các trừu tợng hóa thực thể của thế giới thực hoặc
của một hệ thống
Bao gồm: định danh, các thuộc tính v các phơng
thức
thao tác trên các dữ liệu thuộc tính của nó
Độc lập v đóng gói trạng thái thể hiện bằng giá trị
các thuộc tính của nó ở một thời điểm
Cung cấo dịch vụ cho đối tợng khác hay yêu cầu
các đối tợng khác thực hiện một dịch vụ
B mụn Cụng ngh phn mm HCN
11
NguynVnV
Lớp đối tợng
Lớp đối tợng l khuôn mẫu để tạo ra tập đối
tợng có các đặc trng chung
Lớp đối tợng có thể kế thừa thuộc tính v
dịch vụ từ lớp đối tợng khác
Lớp đợc xác định bằng:
Tên
Bộ các thuộc tính
Các phơng thúc
Sinh vien
maSV
hotenSV
diachi
lop
Tao( )
Capnhat( )
Xoa( )

Các cấu trúc cơ sở
khoản mục vô hớng
mảng (một chiều, nhiều chiều)
danh sách móc nối
cây phân cấp
B môn Công ngh phn mm – HCN
15
NguynVnV
VÝ dô
struct Date {
int year, mon, day;
};
struct Date {
int year;
int mon_and_day;
}
B mụn Cụng ngh phn mm HCN
16
NguynVnV
Tổng quát hóa v kế thừa
Một lớp có thể l lớp con của 1 lớp các đối tợng
tổng quá hơn, v gọi l kế thừa của lớp tổng quát
trên cây kế thừa, lớp cha (super class) có thể l
tổng quát hóa của 1 số các lớp con (sub-class)
Lớp con kế thừa các thuộc tính v phơng thức
của lớp cha v có thể thêm/thay đổi phơng thức,
thuộc tính
Sử dụng kế thừa giúp ta mô tả lớp con chỉ gồm
các đặc trung khác lớp cha
B môn Công ngh phn mm – HCN

chức về bi toán
B môn Công ngh phn mm – HCN
19
NguynVnV
T−¬ng t¸c gi÷a c¸c ®èi t−îng
state o3
o3:C3
state o4
o4: C4
state o1
o1: C1
state o6
o6: C1
state o5
o5:C5
state o2
o2: C3
ops1()
ops3 ()
ops4 ()
ops3 ()
ops1 ()
ops5 ()
B mụn Cụng ngh phn mm HCN
20
NguynVnV
Tơng tác giữa các đối tợng
Các đối tợng giao tiếp bằng trao đổi thông báo
Thông báo
Tên dịch vụ đợc yêu cầu

23
NguynVnV
e. Ng«n ng÷ m« h×nh hãa thèng nhÊt
Unified Modeling Language
̈ Là mt ngôn ng mô hình đ phát trin
phn mm hmg đi tng
̈ Các đc trng: UML là ngôn ng:
̇ đ ha
̇ làm trc quan hóa
̇ đc t
̇ xây dng mô hình
̇ làm tài liu
B môn Công ngh phn mm – HCN
24
NguynVnV
̈ Gåm 3 khèi c bn:
A. C¸c sù vËt (things)
1. C¸c sù vËt cÊu tróc (structural)
2. C¸c sù vËt hμnh vi (behavioral)
3. C¸c sù vËt nhãm gép(grouping)
4. C¸c sù vËt gi¶i thÝch (annotational
)
B. C¸c quan hÖ (Relationships)
C. C¸c biu ®å (Diagrams)
Ng«n ng÷ m« h×nh hãa thèng nhÊt
B môn Công ngh phn mm – HCN
25
NguynVnV
Ng«n ng÷ m« h×nh hãa thèng nhÊt
̈ C¸c sù vËt cÊu tróc (structural)


Nhờ tải bản gốc

Tài liệu, ebook tham khảo khác

Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status