Mụ hỡnh đối tượng
17.7.2.4 Tổng kết về phỏt triển cõy cấu trỳc
Cơ chế dựng chung thuộc tớnh và thủ tục sử dụng nguyờn tắc khỏi quỏt húa được gọi là
tớnh thừa kế (inheritance). Sử dụng tớnh thừa kế để tinh chế (refine) cỏc lớp sẽ dẫn tới việc phỏt triển một cõy cấu trỳc. Nờn phỏt hiện những ứng xử (behaviour) chung trong một loạt lớp rồi thể hiện nú thành một lớp cha. Sự khỏc biệt trong ứng xử của cựng một lớp sẽ dẫn tới việc tạo ra cỏc lớp con.
Khi phỏt triển cõy cấu trỳc, hóy quan sỏt ứng xử của cỏc lớp. Trong trường hợp cú một liờn hệ tồn tại từ một lớp cụ thể đến tất cả cỏc lớp con của một lớp cha, nờn dịch chuyển liờn hệ này lờn lớp cha. Nếu tồn tại một liờn hệ giữa một lớp nào đú và một lớp cha, hóy chuyờn biệt húa và nõng cao cấu trỳc để xỏc định xem liệu liờn hệ này cú được ỏp dụng cho tất cả cỏc lớp con của lớp cha nọ hay khụng. Nếu cú thỡ gỏn nú vào lớp cha, nếu khụng thỡ dịch xuống cho những lớp con phự hợp.
Trong khi tiến hành khỏi quỏt húa, trọng tõm cụng việc là xỏc định cỏc ứng xử chung trong một nhúm nhiều lớp chuyờn biệt bậc trung. Khi đó xõy dựng được một thủ tục hoặc một thuộc tớnh chung, nờn kiểm tra lại xem chỳng cú thật sự là yếu tố chung của tất cả cỏc lớp chuyờn biệt trong phạm vi này. Khỏi quỏt húa được ỏp dụng chỉ khi chỳng ta cú một tập hợp cỏc lớp định nghĩa một loại đối tượng riờng biệt và cú một số lượng lớn cỏc ứng xử chung. Trọng tõm ở đõy là tạo nờn lớp cha chứa cỏc ứng xử chung đú.
Khi chuyờn biệt húa, ta đi tỡm cỏc sự khỏc biệt trong ứng xử để tạo cỏc lớp con thớch ứng. Cú nghĩa là ta xem xột một lớp tồn tại, kiểm tra xem cú phải tất cả cỏc ứng xử của nú đều cú khả năng ỏp dụng cho mọi đối tượng. Nếu khụng, ta lọc ra ứng xử khụng phải lỳc nào cũng cần thiết và chia trường hợp nú ra thành cỏc lớp con. Trọng tõm của chuyờn biệt húa là tạo cỏc lớp con. Với cơ chế thừa kế, một lớp con sẽ kế thừa mọi thuộc tớnh à thủ tục của tất cả cỏc lớp cha của nú. Hỡnh sau làm rừ việc tạo cấu trỳc lớp sử dụng tớnh khỏi quỏt.
G
Hỡnh 17.34- Phỏt triển hệ thống lớp (1)
Thường xảy ra trường hợp tất cả cỏc lớp con cựng tham gia vào một liờn hệ hoặc kết tập. Trong trường hợp này nờn tạo lớp cha định nghĩa liờn hệ /kết tập đú. Hỡnh sau giải thớch thờm điểm này:
Hỡnh 17.35- Phỏt triển hệ thống lớp (2)