Chuong2 extra c_
Transcript of Chuong2 extra c_
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
BM MMT&TT 2
Chương 2 ExtraLậ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
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
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
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
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
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)
BM MMT&TT 8
Lớp
Sơ đồ lớp (Class Diagram)
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
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
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
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
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)
BM MMT&TT 14
Quan hệ thừa kế (Inheritance):
Phụ lục UML
Lớp cha
Lớp con
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