Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 19 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
19
Dung lượng
186,01 KB
Nội dung
PT & TK Hướng đối tượng – Thiết kế kiến trúc Dương Anh Đức 15 Các bước thiết kế Class w Tạo các Design Class ban đầu w Xác đònh các Persistent Class w Đònh nghóa cácOperation w Đònh nghóa Class Visibility w Đònh nghóa các Method w Đònh nghóa các trạng thái w Đònh nghóa các thuộc tính w Đònh nghóa các phụ thuộc w Đònh nghóa các mỗi kết hợp w Đònh nghóa các quan hệ tổng quát hóa w Giải quyết đụng độ giữa các Use-Case w Xử lý các yêu cầu phi chức năng nói chung w Checkpoints PT & TK Hướng đối tượng – Thiết kế kiến trúc Dương Anh Đức 16 Đònh nghóa cácOperation w Mục đích § Ánh xạ các nhiệm vụ đã xác đònh ơ mức phân tích thành cácoperation thực hiện chúng w Những cái cần xem xét: § Tên Operation, signature, và mô tả § Operation visibility § Tầm vực Operation • Class operation hay instance operation PT & TK Hướng đối tượng – Thiết kế kiến trúc Dương Anh Đức 17 Nhắc lại: Operation là gì ? CourseOffering addStudent deleteStudent getStartTime getEndTime Class Operation PT & TK Hướng đối tượng – Thiết kế kiến trúc Dương Anh Đức 18 :ClassA // Perform responsibility :ClassB :ClassA performResponsibility():result :ClassB Operation: Tìm chúng ở đâu? w Các thông điệp trong các interaction diagram w Các chức năng phụ thuộc vào cài đặt khác § Các chức năng quản trò § Các nhu cầu sao chép class § Các nhu cầu kiểm tra bằng, khác nhau, … PT & TK Hướng đối tượng – Thiết kế kiến trúc Dương Anh Đức 19 Đặt tên và mô tả cácOperation w Các tên thích hợp cho operation § Chỉ rõ kết quả của operation § Đứng dưới góc nhìn của client § Nhất quán qua tất cả các class w Đònh nghóa operation signature § operationName(parameter : class, ) : returnType w Cung cấp một mô tả ngắn, bao gồm ý nghóa của tất cả các tham số PT & TK Hướng đối tượng – Thiết kế kiến trúc Dương Anh Đức 20 Guidelines: Thiết kế Operation Signatures w Khi thiết kế operation signatures phải bảo đảm hàm chứa: § Các tham số truyền theo giá trò hay tham số? § Các tham số có bò thay đổi bởi operation? § Các tham số là optional? § Tham số có giá trò mặc đònh? § Miền tham số hợp lệ? w Càng ít tham số càng tốt w Truyền các object thay vì “data bits” PT & TK Hướng đối tượng – Thiết kế kiến trúc Dương Anh Đức 21 Phát hiện Additional Classes và Relationships Additional classes và relationships có thể được thêm vào để hỗ trợ signature ClassA Class2 op1(var1:Class2): Class3 Class3 PT & TK Hướng đối tượng – Thiết kế kiến trúc Dương Anh Đức 22 Public operations Protected operations Private operations Operation Visibility w Tính khả kiến được dùng để cung cấp tính đóng gói w Giá trò có thể là public, protected, hay private PT & TK Hướng đối tượng – Thiết kế kiến trúc Dương Anh Đức 23 Class - privateAttribute # protectedAttribute +publicOp() # protectedOp() - privateOp() Ký hiệu tính khả kiến? w Các ký hiệu sau được dùng: § + Public access § # Protected access § - Private access PT & TK Hướng đối tượng – Thiết kế kiến trúc Dương Anh Đức 24 Class - classifierScopeAttribute classifierScopeOperation() - instanceScopeAttribute instanceScopeOperation() Tầm vực w Xác đònh số lượng thể hiện của attribute / operation § Instance: 1 instance cho mỗi class instance § Classifier: 1 instance cho tất cả class instance w Tầm vực mức Classifier được ký hiệu bằng cách gạch dưới tên attribute/operation [...]... Đònh nghóa cácOperation w Hãy cho biết: § Các architectural layers, các package v thuộc của chúng § Các Design class cho một use case cụ th ( PT & TK Hướng đối tượng – Thiết kế kiến trúc Dương Anh Đức 29 Bài tập: Define Operations (tt.) w Với các design class, hãy xác đònh: § CácOperation và mô tả hoàn chỉnh của § Operation scope và visibility § Mọi mối quan hệ và các class bổ sung đ cho các operation. .. tập: Đònh nghóa cácOperation (tt w Xây dựng lược đồ sau: § VOPC class diagram, chứa tất cả các op operation signature, và các quan hệ PT & TK Hướng đối tượng – Thiết kế kiến trúc Dương Anh Đức 31 Các bước thiết kế Class w w w w w w w w w w w w w Tạo các Design Class ban đầu Xác đònh các Persistent Class Đònh nghóa cácOperation Đònh nghóa Class Visibility Đònh nghóa các Method Đònh nghóa các trạng thái... trúc Dương Anh Đức 25 Utility Classes w Thế nào là một Utility Class? § Utility là một class stereotype § Dùng để chỉ các class chứa một bộ các trình con miễn phí w Tại sao lại dùng chúng? § Để cung cấp các dòch vụ có thể hữu dụn các ngữ cảnh khác nhau § Để gói các hàm thư viện hay các ứng d tượng MathFunctions PT & TK Hướng đối tượng – Thiết kế kiến trúc Dương Anh Đức 26 Ví dụ: Utility... Persistent Class Đònh nghóa cácOperation Đònh nghóa Class Visibility Đònh nghóa các Method Đònh nghóa các trạng thái Đònh nghóa các thuộc tính Đònh nghóa các phụ thuộc Đònh nghóa các mỗi kết hợp Đònh nghóa các quan hệ tổng quát hóa Giải quyết đụng độ giữa các Use-Case Xử lý các yêu cầu phi chức năng nói chung Checkpoints PT & TK Hướng đối tượng – Thiết kế kiến trúc Dương Anh Đức 32 Nhắc lại: Package... long = 0 -pi : double = 3.14159265358979 +sin (angle : double) : double +cos (angle : double) : double +random() : double PT & TK Hướng đối tượng – Thiết kế kiến trúc Dương Anh Đức 27 Ví dụ: Đònh nghóa cácOperation RegistrationController 0 * (from Registration) + submitSchedule() + saveSchedule() + getCourseOfferings() : CourseOfferingList + getCurrentSchedule(forStudent : Student, forSemester . Đònh nghóa các Method w Đònh nghóa các trạng thái w Đònh nghóa các thuộc tính w Đònh nghóa các phụ thuộc w Đònh nghóa các mỗi kết hợp w Đònh nghóa các quan. :ClassB Operation: Tìm chúng ở đâu? w Các thông điệp trong các interaction diagram w Các chức năng phụ thuộc vào cài đặt khác § Các chức năng quản trò § Các