YOMEDIA
ADSENSE
Giáo trình UML - Chương 9: Lược đồ lớp thiết kế
186
lượt xem 31
download
lượt xem 31
download
Download
Vui lòng tải xuống để xem tài liệu đầy đủ
Trong UML, lơṕ thiêt́ kê ́ bao gôm̀ 2 thaǹ h phâǹ chiń h: ◦Thuôc̣ tính (attribute) ◦Thao tać (operation)
AMBIENT/
Chủ đề:
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Giáo trình UML - Chương 9: Lược đồ lớp thiết kế
- CHƯƠNG 8: CH Lược đồ lớp thiêt kế ́ (Design class diagram – DCD) 1 PTTKHT bang UML BM HTTT
- ̣ Nôi dung Nôi Lớp thiêt kế ́ ̣ ́ Phân loai cac operation Cac loai lớp thiêt kế ́ ̣ ́ Cach tao lược đồ DCD ́ ̣ 2 PTTKHT bang UML BM HTTT
- Lớp thiêt kế ́ UML, lơp thiêt kế ́ ́ Trong ̀ ̀ ̀ bao gôm 2 thanh phân ́ chinh: ̣́ ◦ Thuôc tinh (attribute) ́ ◦ Thao tac (operation) 3 PTTKHT bang UML BM HTTT
- ́ Thao tac (Operation) hành vi (behavior) liên quan đến 1 Là lớp. Một operation có 4 thành phần: ̀ ̀ ◦ Tâm nhin (visibility) ́ ◦ Tên thao tac (Operation name) ◦ Cac tham số ngõ vao: argument1, ́ ̀ argument2 .. ◦ Giá trị trả về (return type) hiệu: Ký Visibility Operation Name(argument1 : argument1 data type, argument2 : argument2 data type, …) : return type 4 PTTKHT bang UML BM HTTT
- ́ ̉ ̀ ̀ Bôn kiêu tâm nhin (visibility) Bôn (+) cho phep tât cả cac lớp ́ ́ ́ Public khac bên ngoai được xem và sử ́ ̀ ̣ ̀ dung operation nay. Private (-) giới han viêc truy xuât ̣ ̣ ́ chỉ trong pham vi cua class. Ví dụ ̣ ̉ chỉ có cac operation cua class mới ́ ̉ được truy xuât đên thuôc tinh riêng ́ ́ ̣́ (private) cua lớp đó ̉ 5 PTTKHT bang UML BM HTTT
- ́ ̉ ̀ ̀ Bôn kiêu tâm nhin (visibility) Bôn (#) cho phep chỉ cac lớp ́ ́ Protected con (subclass) cua lớp đó mới ̉ được xem và sử dung operation. ̣ Do tinh kế thừa cac lớp con phai ́ ́ ̉ truy xuât được đên cac thuôc tinh ́ ́ ́ ̣́ và thao tac cua lớp cha. ́ ̉ ́ ́ ́ Package (~) cho phep cac đôi tượng khac trong cung goi ́ ̀ ́ (package) được phep xem và sử́ ̣ dung operation. 6 PTTKHT bang UML BM HTTT
- Vií dụ về thao tac ́ V + totalOrderAmount (order : Order) : Dollar {The total is the sum of all line items less the volume discount. Each line item is the product of the unit price and quantity} 7 PTTKHT bang UML BM HTTT
- Operation 4 loại operations: Có implementor ◦ manager ◦ access ◦ helper. ◦ 8 PTTKHT bang UML BM HTTT
- Implementor Operations Thực thi 1 số chức năng nghiệp vụ. Operation loai nay thường được tìm ̣ ̀ thấy trong lược đồ Interaction vì lược đồ này tập trung chủ yếu vào chức năng nghiệp vụ. Mỗi message trong lược đồ có thể ánh xạ thành 1 implementor operation. Mỗi implementor operation cũng có thể lần ngược về lại yêu cầu ban đầu. 9 PTTKHT bang UML BM HTTT
- Implementor Operations Vì mỗi operation được suy từ message trên lược đồ interaction, mà lược đồ này lại được suy từ flow of events, và flow of event đến từ use case và use case thì suy được từ requirement. Khả năng lần theo vết này (trace) bảo đảm rằng mỗi requirement đều đuợc hiện thực hoá thành code và mỗi đoạn code đều có thể suy ngược về lại requirement. 10 PTTKHT bang UML BM HTTT
- Manager Operations điêp có tên là create trong UML là dang ̣ ̣ Thông đôc lâp ngôn ngữ dung để chỉ sự khởi đâu. Khi ̣ ̣ ̀ ̀ chuyên sang ngôn ngữ lâp trinh, chung thuôc ̉ ̣ ̀ ́ ̣ ̣ loai Manager Operation Loai operation nay quản lý việc tạo và huỷ các ̣ ̀ đối tượng. Có hai loại điển hình là constructor và destructor. Thường thì các manager operation này được tạo tự động cho mỗi class. Do có nhiêu thông dich khac nhau tuy theo ̀ ̣ ́ ̀ ngôn ngữ và vì sự khởi đâu/huy cua 1 lớp quá ̀ ̉ ̉ thông dung nên cac operation loai nay đêu bị ̣ ́ ̣ ̀ ̀ 11 PTTKHT bang UML BM HTTT
- Access Operations thường các attribute đều thuộc Thông loại private hay protected. Tuy nhiên có thể 1 lớp nay cân xem hay thay đôi ̀ ̀ ̉ thuôc tinh cua 1 lớp khac, điêu nay ̣́ ̉ ́ ̀ ̀ thưc hiên được thông qua access ̣ ̣ operation. Môt số ngôn ngữ như Java thì môi ̣ ̃ môt thuôc tinh đêu có phương thức ̣ ̣́ ̀ get và set để nhân hay đăt giá trị cho ̣ ̣ ̣́ ́ thuôc tinh đo. 12 PTTKHT bang UML BM HTTT
- Access Operations Access ́ operation get và set thường quá Cac thông dung, không cân đưa vao lược ̣ ̀ ̀ đồ class để tranh gây rườm ra. ́ ̀ Ví dụ với n thuôc tinh thì có tới 2n ̣́ method loai nay. Vì vây trong lược đồ ̣ ̀ ̣ class cua hệ thông POS , ta bỏ qua ̉ ́ không đưa method getPrice() vao lớp ̀ Product-Specification. 13 PTTKHT bang UML BM HTTT
- Helper Operations các operation mà 1 class cần thực Là thi nhiệm vụ của nó mà các lớp khác không cần biết đến các operation này. Thường là private và protected. Tương tự như implementor operation, helper operation được tìm từ các reflexive message trong lược đồ interaction. 14 PTTKHT bang UML BM HTTT
- Khai ́ ̣ Khai bao loai operation ́ ̣ Khai bao loai (stereotypes) operation giup nhân biêt nó thuôc loai nao để ́ ̣ ́ ̣ ̣ ̀ hiêu được muc đich sử dung no. ̉ ̣ ́ ̣ ́ ́ ́ ̣ Cach khai bao loai: operationName Ví du: thao tac Promote thuôc loai ̣ ̣ ̣ implementor Promote() 15 PTTKHT bang UML BM HTTT
- Tao lược đồ lớp thiêt kế ̣ ́ Tao Design Class Diagram- DCD có thể được thực hiên tiêp theo ̣ ́ DCD ngay sau khi tao lược đồ tuân tự ̣ ̀ nhưng trong thực tế thì DCD thường được tao song song với lược đồ tuân ̣ ̀ tự. 16 PTTKHT bang UML BM HTTT
- Interface Interface lâp trinh OO thì cân tach rời ̣ ̀ ̀ ́ Theo phân thực thi cua 1 lớp ra khoi giao ̀ ̉ ̉ ̣ ̉ ́ diên cua no. Hâu hêt ngôn ngữ OO ngay nay có hỗ ̀ ́ ̀ trợ khai niêm về interface. ́ ̣ Interface chỉ chứa cac khai bao ́ ́ phương thức (operation signature), không chưa mã thực thi. ́ 17 PTTKHT bang UML BM HTTT
- Vií dụ về interface V ́ môt lớp chuyên về bao mât, có ̣ ̉ ̣ Xet cac operation như sau CheckID, ́ CheckPassword, ́ LogSecurityViolation. Trong đo: ◦ CheckID có user ID như tham số và trả về giá trị Boolean bao cho biêt ID có hợp lệ ́ ́ hay không. ◦ CheckPassword có tham số đâu vao là ̀ ̀ password, giá trị trả về là kiêu Boolean. ̉ ◦ LogSecurityViolation không có tham sô. ́ 18 PTTKHT bang UML BM HTTT
- Vií dụ về interface V cach thông thường, lớp ́ Theo SecurityImplementer được tao ra chứa ̣ cả ba phương thức security và phân ̀ mã thực thi chức năng. Nêu hệ thông cân chức năng bao ́ ́ ̀ ̉ mât, hệ thông sẽ goi trực tiêp cac ̣ ́ ̣ ́ ́ phương thức cua lớp̉ SecurityImplementer Vân đề là nêu muôn thay đôi cac ́ ́ ́ ̉ ́ phương thức nay thì sẽ lam anh ̀ ̀ ̉ 19 PTTKHT bang UML BM HTTT
- Vií dụ về interface V ́ khac: tao lớp ́ ̣ Cach SecurityImplementer vơi cac phương ́ ́ thưc và mã thực thi. Tao thêm 1 lớp ́ ̣ khac có tên là SecurityInterface chỉ để ́ chưa cac khai bao phương thức ́ ́ ́ (operation signatures). Cac lớp khac sẽ tham chiêu đên lớp ́ ́ ́ ́ interface thay vì tham chiêu đên lớp ́ ́ thưc thi. Nhờ đó lớp implementor khi ̣ bị thay đôi sẽ khônglam anh hưởng ̉ ̀ ̉ cho cả hệ thông. ́ 20 PTTKHT bang UML BM HTTT
ADSENSE
CÓ THỂ BẠN MUỐN DOWNLOAD
Thêm tài liệu vào bộ sưu tập có sẵn:
Báo xấu
LAVA
AANETWORK
TRỢ GIÚP
HỖ TRỢ KHÁCH HÀNG
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn