You are on page 1of 46

Giảng viên:

Đặng Hoài Phương


LẬP TRÌNH Bộ môn:
Công nghệ phần mềm
HƯỚNG ĐỐI Khoa:
Công nghệ Thông tin
TƯỢNG (C++) Trường Đại học Bách Khoa
Đại học Đà Nẵng

LOGO
LOGO GIỚI THIỆU
• Đặng Hoài Phương.
• E-mail: danghoaiphuongdn@gmail.com
• Tel: 0935578555
• Khoa Công nghệ thông tin, trường Đại học
Bách khoa, Đại học Đà Nẵng.
LOGO

OBJECT RELATIONSHIP
LOGO OBJECT RELATIONSHIPS
• Relation types:
o Inheritance
o Composition
o Aggregation
o Association
o Dependency
o Container classes
LOGO COMPOSITION
• Composition:
o Point2D.h
LOGO COMPOSITION
• Composition:
o Point2D.cpp
LOGO COMPOSITION
• Composition:
o Creature.h
LOGO COMPOSITION
• Composition:
o Creature.cpp
LOGO COMPOSITION
• Composition:
o Source.cpp
LOGO AGGREGATION
• Aggregation:
o Teacher.h
LOGO AGGREGATION
• Aggregation:
o Teacher.cpp
LOGO AGGREGATION
• Aggregation:
o Department.h
LOGO AGGREGATION
• Aggregation:
o Department.cpp
LOGO AGGREGATION
• Aggregation:
o Source.cpp
LOGO AGGREGATION – VECTOR
• Aggregation: Department can handle multiple
Teachers ??? → #include <vector> for class
Department.
• Vector là mảng động có các phần tử sắp xếp tuần tự
tuyến tính, ta có thế truy cập đến từng phần tử của
vector thông qua chỉ số của phần tử đó.
LOGO AGGREGATION – VECTOR
• Aggregation: Department can handle multiple
Teachers ??? → #include <vector> for class
Department.
• Vector là mảng động có các phần tử sắp xếp tuần tự
tuyến tính, ta có thế truy cập đến từng phần tử của
vector thông qua chỉ số của phần tử đó.
• Vector có thể thêm 1 vùng nhớ mở rộng gọi là
capacity, đế vector có thể thêm 1 số phần tử mà
không phải cấp phát lại bộ nhớ.
LOGO AGGREGATION – VECTOR
• Aggregation: Department can handle multiple Teachers ???
→ #include <vector> for class Department.
o Vector là mảng động có các phần tử sắp xếp tuần tự tuyến tính, ta
có thế truy cập đến từng phần tử của vector thông qua chỉ số của
phần tử đó.
o Vector có thể thêm 1 vùng nhớ mở rộng gọi là capacity → thêm 1
số phần tử mà không phải cấp phát lại bộ nhớ.
o Các phần tử của vector được sắp xếp tuần tự tuyến tính → truy cập
đến các phần tử của vector thông qua chỉ số của phần tử đó.
o Cho phép truy cập trực tiếp vào phần tử nào của vector, có thể
thêm, sửa, xóa các phần tử.
o Vector sử dụng một đối tượng để cấp phát bộ nhớ tự động cho quá
trình lưu trữ → kích thước của vector sẽ tự động thay đổi khi ta
thêm hoặc bớt phần tử.
LOGO AGGREGATION – VECTOR
• Hàm về Iterator
LOGO AGGREGATION – VECTOR
• Hàm về capacity
LOGO AGGREGATION – VECTOR
• Hàm về truy cập các phần tử
LOGO AGGREGATION – VECTOR
• Hàm modify data
LOGO AGGREGATION – VECTOR
• Aggregation:
o Department.h
LOGO AGGREGATION – VECTOR
• Aggregation:
o Department.cpp
LOGO AGGREGATION – VECTOR
• Aggregation:
o Source.cpp
LOGO ASSOCIATION
• Association:
o Patient.h
LOGO ASSOCIATION
• Association:
o Patient.cpp
LOGO ASSOCIATION
• Association:
o Doctor.h
LOGO ASSOCIATION
• Association:
o Doctor.cpp
LOGO ASSOCIATION
• Association:
o Doctor.cpp
LOGO ASSOCIATION
• Association:
o Source.cpp
LOGO INDIRECT ASSOCIATION
• Association:
o Car.h
LOGO INDIRECT ASSOCIATION
• Association:
o Car.cpp
LOGO INDIRECT ASSOCIATION
• Association:
o ListCar.h
LOGO INDIRECT ASSOCIATION
• Association:
o ListCar.cpp
LOGO INDIRECT ASSOCIATION
• Association:
o Driver.h
LOGO INDIRECT ASSOCIATION
• Association:
o Driver.cpp
LOGO INDIRECT ASSOCIATION
• Association:
o Source.cpp
LOGO CONTAINER CLASSES
• 2 type:
o Value containers are compositions;
o Reference containers are aggregations.
LOGO CONTAINER CLASSES
• List.h
LOGO CONTAINER CLASSES
• List.cpp
LOGO CONTAINER CLASSES
• List.cpp
LOGO CONTAINER CLASSES
• List.cpp
LOGO CONTAINER CLASSES
• List.cpp
LOGO CONTAINER CLASSES
• List.cpp
LOGO CONTAINER CLASSES
• Source.cpp
LOGO

You might also like