Tải bản đầy đủ (.pdf) (20 trang)

Định nghĩa các mỗi kết hợp

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (194.42 KB, 20 trang )

PT & TK Hướng đối tượng – Thiết kế kiến trúc
Dương Anh Đức
70
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ác Operation
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
71
Đònh nghóa Associations
w Mục đích
§ Tinh chỉnh các association còn lại
w Những gì cần xem xét :
§ Cân nhắc giữa Association và Aggregation
§ Cân nhắc giữa Aggregation và Composition
§ Cân nhắc giữa Attribute và Association
§ Chiều của quan hệ (Navigability)
§ Thiết kế Association class
§ Thiết kế bản số (Multiplicity design)
PT & TK Hướng đối tượng – Thiết kế kiến trúc


Dương Anh Đức
72
Whole
Part
Whole
Aggregation
Part
Nhắc lại: Composition là gì ?
w Là một dạng của aggregation với tính sở hữu
cao và trùng khớp về chu kỳ sống
§ “Bộ phận” không thể tồn tại lâu hơn “toàn thể”
PT & TK Hướng đối tượng – Thiết kế kiến trúc
Dương Anh Đức
73
w Shared Aggregation
w Non-shared Aggregation
1
Whole Part
1..* 0..*
Bản số > 1
Whole Part
1
0..*
Bản số = 1
Theo đònh nghóa, composition là non-shared aggregation
Whole Part
0..*
Bản số = 1
Composition
Aggregation: Shared hay không shared

PT & TK Hướng đối tượng – Thiết kế kiến trúc
Dương Anh Đức
74
aggregation
composition
Class1
Class1
Class2
Class2
Aggregation hay Composition?
w Xem xét
§ Chu kỳ sống của Class1 và Class2
PT & TK Hướng đối tượng – Thiết kế kiến trúc
Dương Anh Đức
75
Ví dụ: Composition
Student
Schedule
1 0..*
RegisterForCoursesForm
1 1
RegistrationController
PT & TK Hướng đối tượng – Thiết kế kiến trúc
Dương Anh Đức
76
Cân nhắc giữa Attributes và Composition
w Dùng composition khi
§ Các thuộc tính cần được nhận dạng độc lập
§ Nhiều class có chung các thuộc tính
§ Các thuộc tính có cấu trúc phức tạp và bản thân

chúng cũng có thuộc tính riêng
§ Các thuộc tính có hành vi riêng (phức tạp)
§ Các thuộc tính có quan hệ riêng
w Các trường hợp còn lại dùng attributes
PT & TK Hướng đối tượng – Thiết kế kiến trúc
Dương Anh Đức
77
Ví dụ: Attributes/Composition
Composition of
separate class
Attributes
0..*
11
Student
- name
- address
<<classifier scope>> - nextAvailID : int
- StudentID : int
- dateofBirth : Date
+ addSchedule()
+ getSchedule()
+ delete schedule()
+ hasPrerequisites()
# passed()
<<entity>>
Schedule
+ submit()
+ // save()
# any conflicts?()
+ // create with offerings()

+ new()
+ passed()
<<entity>>
- Semester

×