1. Lập trình hướng đối tượng
C++
Extra part - UML
Giảng viên giảng dạy: Nguyễn Hữu Vân Long
2. BM MMT&TT 2
Chương 2 Extra
Lập trình hướng đối tượng OOP
p Sơ lược về UML
p Một số biểu đồ trong UML
p Sơ đồ lớp và ví dụ minh họa trong StarUML
3. BM MMT&TT 3
Lớp
Khai báo
Định nghĩa
Thuộc tính và Hàm thành viên
Đối tượng
Khai báo
Sử dụng
Sơ lược hàm xây dựng và hàm hủy
Dữ liệu hàm thành viên tĩnh
Khai thác 1 lớp trong ứng dụng
Nội dung bài giảng
4. BM MMT&TT 4
Giới thiệu UML
Các loại biểu đồ trong UML
Sơ đồ lớp
Một số ví dụ minh họa
Giới thiệu StarUML
Nội dung bài giảng
5. BM MMT&TT 5
UML: Unified Modeling Language
Là một ngôn ngữ dùng để mô hình hóa các hệ thống thông
tin theo Hướng đối tượng theo hướng thống nhất.
Ra đời năm 1997 -> phổ biến đến nay.
Bao gồm một hệ thống các ký hiệu (symbol), sơ đồ
(diagram) thống nhất để thiết kế các IS theo OO.
Được sử dụng trong nhiều giai đoạn của qui trình phát triển
phần mềm: phân tích, thiết kế, triển khai, kiểm thử….
Một số công cụ: Rational Rose, Visio, StartUML,
ArgoUML,…phát sinh tự động cho các ngôn ngữ
OOP
Giới thiệu UML
6. BM MMT&TT 6
UML bao gồm 9 loại sơ đồ
Use case disgram: Sơ đồ use case
Class diagram: Sơ đồ lớp.
Object diagram: Sơ đồ đối tượng.
Sequence diagram: Sơ đồ trình tự.
State diagram: Sơ đồ trạng thái.
Collaboration diagram: Sơ đồ cộng tác.
Component disgram: Sơ đồ thành phần.
Deployment diagram: Sơ đồ triển khai.
Activity diagram: Sơ đồ hoạt động.
Giới thiệu UML
7. BM MMT&TT 7
Class diagram (sơ đồ lớp)
Mô tả cấu trúc của hệ thống theo hướng đối tượng.
Cấu trúc của một hệ thống được xây dựng từ các lớp và
mối quan hệ giữa chúng.
Ký hiệu (notation)
Lớp
Giao diện
Quan hệ
Kết hợp (Association), tập hợp (Aggregation) và tổng hợp
(Composition).
Hiện thực hóa (Realization).
Thừa kế/Tổng quát hóa (Generalization).
Sơ đồ lớp (Class Diagram)
9. BM MMT&TT 9
Giao diện và quan hệ Realization: là quan hệ giữa giao
diện và lớp cài đặt nó
Sơ đồ lớp (Class Diagram)
Quan hệ
Realization
10. BM MMT&TT 10
Quan hệ kết hợp (Association): Mô tả mối liên hệ ngữ
nghĩa giữa các lớp.
Sơ đồ lớp (Class Diagram)
Quan hệ
Association
Tên
Association
Lớp
Tên
role
11. BM MMT&TT 11
Quan hệ kết hợp (Association)
Quan hệ kết hợp nhiều chiều (n-ary)
Lớp kết hợp (association class): Được xem là thuộc
tính của một quan hệ kết hợp.
Sơ đồ lớp (Class Diagram)
Lớp kết
hợp
12. BM MMT&TT 12
Quan hệ tập hợp (Aggregation): Là một dạng đặc biệt của
quan hệ kết hợp, mô tả mối quan hệ toàn thể-bộ phận giữa một
thực thể và các bộ phận của một thực thể.
Sơ đồ lớp (Class Diagram)
Toàn thể Bộ phận
13. BM MMT&TT 13
Quan hệ tổng hợp (Composition): Là một dạng đặc biệt
của quan hệ tập hợp, có tính sở hữu cao. Trong đó, các bộ phận
của một thực thể không thể sống lâu hơn thực thể.
Cái tổng thể sẽ được cấu thành hoặc hủy bỏ từ những
thành phần của nó.
Sơ đồ lớp (Class Diagram)
Chú ý: Nếu không có sinh viên => không có schedule. Hoặc, nếu
không tồn tại quyển sách (book) thì không có các chương sách
(chapter)
14. BM MMT&TT 14
Quan hệ thừa kế (Inheritance):
Phụ lục UML
Lớp cha
Lớp con
15. BM MMT&TT 15
1. Hãy cho biết trong trò
chơi trên, bao gồm
những đối tượng/sự
vật nào?
2. Mỗi đối tượng có thể
thực hiện các thao
tác/hành động nào?
3. Liệt kê thuộc tính của
từng đối tượng.
Phụ lục UML