Nhập môn công nghệ phần mềm: Thiết kế hướng đối tượng - Sử dụng UML

7 27 0
Nhập môn công nghệ phần mềm: Thiết kế hướng đối tượng - Sử dụng UML

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

Thông tin tài liệu

[r]

(1)

Thiết kế hướng ñối

tượng - Sử dụng

UML (7)

Nguyn Thanh Bình

Khoa Cơng nghệ Thơng tin

Trường ðại hc Bách khoa

ðại hc ðà Nng

2

Nội dung

Khái niệm cơ bản hướng ñối tượng Biểu ñồ ca sử dụng

(2)

3

Hướng chức năng

Dựa vào chức hệ thống

Hệthống tập hợp chức

Chia nhỏcác chức làm mịn dần

Hệthống gồm hệthống Làm chủ ñộphức tạp

Các chức trao ñổi với

truyền tham sốhoặc dữliệu (chẳng hạn biến toàn cục) dùng chung

Hướng chức năng

Phân cấp chức năng

Hệthống

Chức Chức năng 2

(3)

5

Hướng chức năng

Ưu ñiểm

Phân tích chức hệthống ðưa lại kết mong ñợi

Nhược ñiểm

Chức cấu trúc

Thay ñổi vềchức khó khăn thay đổi cấu trúc Tính mởcủa hệthống thấp

Khó tái sửdụng

Chi phí sửa chữa lỗi lớn

6

Hướng đối tượng

Lấy ñối tượng làm trung tâm

Hệthống = tập hợp ñối tượng + quan

hệgiữa ñối tượng

Các ñối tượng trao đổi thơng điệp

(message)

Khơng sửdụng biến toàn cục

(4)

7

Hướng đối tượng

Phân biệt

Lập trình cấu trúc

• Thuật tốn + cấu trúc liệu = chương

trình

Lập trình HðT

• Σđối tượng = chương trình

• đối tượng = thuật tốn + cấu trúc dữliệu

Hướng đối tượng

Ưu điểm chính

Gần gũi với thế giới thực Tái sử dụng dễ dàng

ðóng gói, che dấu thơng tin làm cho hệ thống tin cậy hơn

(5)

9

ðối tượng

ðối tượng (object) khái niệm cho

phép mô tả các sự vật/thực thể trong thế giới thực

Các ñối tượng trì quan hệ

giữa chúng

Nguyễn Văn A một ñối tượng

10

ðối tượng

Các tính chất của đối tượng

ðối tượng = trạng thái + hành vi + ñịnh danh

• Trạng thái đặc tính đối tượng thời điểm

• Hành vi thểhiện chức ñối tượng

(6)

151

Sinh mã

Mã phương thức total()

:ListOfOrders :OneOrder

:AirPlane : total() : *[for each] subtotal()

3 : getPrice() public double total()

{

double sum = 0;

for (int i=0; i<orderList.size(); i++) sum += orderList.elementAt(i).subtotal(); return sum;

}

Sinh mã

Mã phương thức subTotal()

:ListOfOrders :OneOrder

1 : total() : *[for each] subtotal()

3 : getPrice() public double subtotal()

{

(7)

153

Sinh mã

Mã phương thức getPrice()

:ListOfOrders :OneOrder

:AirPlane : total() : *[for each] subtotal()

3 : getPrice()

public float getPrice() {

return price; }

154

Công cụ

Phần mềm Rational Rose, Poisedon

for UML, Umbrello

Thiết kếcác biểuđồ UML Sinh mã chương trình

• C++

• Java

• VB

Ngày đăng: 09/03/2021, 05:37

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan