Mô hình đối tượng (2)
Mô hình đối tượng (2)
07/12/14
Mô hình đối tượng
2 / 16
Nội dung
Nội dung
•
Mô tả sự kết hợp
•
Xem xét sự khái quát hoá và chi tiết hoá
•
Xem xét về lớp trừu tượng và lớp cụ thể
•
Xem xét việc sử dụng sự kế thừa
•
Quá trình phân lớp
•
Tinh chỉnh mô hình đối tượng.
07/12/14
Mô hình đối tượng
3 / 16
Sự kết hợp (Aggregation)
Sự kết hợp (Aggregation)
•
Là quan hệ “là bộ phận của”, chỉ ra một đối tượng là một
thành phần của một đối tượng khác
•
Quá trình tạo đối tượng tổng thể từ các đối tượng thành
phần được gọi là sự kết hợp (cấu thành)
•
“Tạo thành từ”)
•
Sự khác biệt giữa kết hợp và quan hệ bình thường:
–
Kết hợp: quan hệ giữa các thành phần với cái tổng thể
(trong cùng một đối tượng)
–
Quan hệ bình thường: quan hệ giữa các đối tượng khác
nhau.
07/12/14
Mô hình đối tượng
7 / 16
Sự tổng quát hoá và sự chuyên biệt hoá
Sự tổng quát hoá và sự chuyên biệt hoá
•
Sự chuyên biệt hoá (specialisation):
–
Quá trình đi từ một lớp khái quát, chi tiết thành nhiều
lớp khác biệt nhau.
07/12/14
Mô hình đối tượng
8 / 16
Ví dụ về sự chuyên biệt hoá
Ví dụ về sự chuyên biệt hoá
•
Discriminator
–
Là cái cho phép quyết định một đối tượng thuộc lớp nào
trong số các lớp chuyên biệt
–
Lớp trừu tượng và lớp cụ thể
•
Lớp trừu tượng (Abstract Class)
–
Là lớp tồn tại để cung cấp cái tổng quát trong một cây
kế thừa
–
Trong thế giới thực, lớp này không có đối tượng trực
thuộc trực tiếp với đầy đủ ý nghĩa
–
Thường là kết quả của sự khái quát hoá
•
Lớp cụ thể (Concret Class)
–
Là lớp có thể được tạo thể hiện
–
Các thể hiện của lớp cụ thể là các đối tượng
–
Sự tạo đối tượng được gọi là sự tạo thể hiện.
07/12/14
Mô hình đối tượng
12 / 16
Sự kế thừa (Inheritance)
Sự kế thừa (Inheritance)
•
Là cơ chế để chia sẻ các thuộc tính và phương thức thông
qua sự khái quát hoá (chuyên biệt hoá)
•
Nói chung, một lớp dưới kế thừa tất cả các thuộc tính và
phương thức của lớp trên (trừ các thuộc tính và phương
14 / 16
Khó khăn của sự phân lớp
Khó khăn của sự phân lớp
•
Sự trừu tượng hoá đóng vai trò quan trọng
•
Phụ thuộc vào kinh nghiệm, kiến thức,… của người thực
hiện
•
Cùng một bài toán có thể có nhiều cách nhìn nhận kết
quả là khác nhau.
07/12/14
Mô hình đối tượng
15 / 16
Tinh chỉnh mô hình
Tinh chỉnh mô hình
•
Nếu có lớp nào đó không có thuộc tính, phương thức có ý
nghĩa lớp đó là thừa
•
Nếu có phương thức nào đó cần được thực hiện nhưng
chưa có lớp đảm nhiệm thiếu lớp
•
Nếu trong số các đối tượng của một lớp có đối tượng nào
đó có vai trò đặc biệt cần chuyên biệt hoá lớp
•
Nếu có một số lớp có nhiều thuộc tính và/hoặc phương
thức giống nhau cần trừu tượng hoá
•
Nếu có liên hệ giữa các đối tượng mà chưa có quan hệ