Sự khác biệt giữa tập hợp và thành phần

Sự khác biệt chính - Tổng hợp so với thành phần
 

Lập trình hướng đối tượng (OOP) là một mô hình phổ biến trong phát triển phần mềm. Đối tượng là một thể hiện của một lớp. Không thể tạo các đối tượng cùng một lúc. Cần có một kế hoạch chi tiết hoặc mô tả để tạo ra một đối tượng. Bản thiết kế đó được gọi là một lớp. Một lớp chứa các thuộc tính và phương thức. Các đối tượng được tạo bằng các lớp. Lớp và đối tượng tương tự như một kế hoạch và ngôi nhà trong thế giới thực. Không thể xây dựng một ngôi nhà mà không có một kế hoạch thích hợp. Tương tự như vậy, một lớp được sử dụng để tạo một đối tượng. Một đối tượng hợp tác với các đối tượng khác. Một liên kết với đại diện cho mối quan hệ của hai hoặc nhiều đối tượng được gọi là một hiệp hội trên mạng. Tập hợp và thành phần là các loại hiệp hội. Họ mô tả mối quan hệ giữa các lớp. Bài viết này thảo luận về sự khác biệt giữa tổng hợp và thành phần. Các sự khác biệt chính giữa tập hợp và thành phần là tập hợp là sự kết hợp giữa hai đối tượng mô tả mối quan hệ của người Viking và thành phần là một kiểu kết hợp cụ thể hơn bao hàm quyền sở hữu.

NỘI DUNG

1. Tổng quan và sự khác biệt chính
2. Tập hợp là gì
3. Thành phần là gì
4. Điểm tương đồng giữa cốt liệu và thành phần
5. So sánh cạnh nhau - Tổng hợp so với thành phần ở dạng bảng
6. Tóm tắt

Tập hợp là gì?

Mối quan hệ giữa hai đối tượng được hiển thị bằng cách vẽ một dòng trong Ngôn ngữ mô hình hóa thống nhất (UML). Liên kết là một hiệp hội. UML giúp có được một đại diện trực quan của hệ thống. Nó khác với các ngôn ngữ lập trình thông thường. Hiệp hội cũng xác định tính đa dạng của các đối tượng. Họ là một đối một, một-nhiều và nhiều-nhiều. Khi một đối tượng duy nhất của lớp A được liên kết với đối tượng duy nhất của lớp B, đó là mối quan hệ một đối một. Một ví dụ là một tác giả viết một cuốn sách. Trong ví dụ đó, một tác giả đang viết một cuốn sách.

Khi một đối tượng của lớp A được liên kết với nhiều đối tượng của lớp B, đó là mối quan hệ một-nhiều. Một ví dụ là, một bộ phận có thể có nhiều nhân viên. Khi đối tượng của lớp A được liên kết với nhiều đối tượng của lớp B và một đối tượng của lớp B được liên kết với nhiều đối tượng của lớp A, đó là một liên kết nhiều-nhiều. Một ví dụ là, một nhân viên có thể làm việc trên nhiều dự án và một dự án có thể có nhiều nhân viên.

Tập hợp là loại liên kết mô tả thêm mối quan hệ giữa các đối tượng. Tập hợp mô tả các mối quan hệ có một mối quan hệ. Một số ví dụ mô tả mối quan hệ này là, một học sinh có một id học sinh, một chiếc xe có một động cơ. Cũng có thể mở rộng một số lượng lớn với mối quan hệ. Một số ví dụ là, một ngân hàng có nhiều tài khoản ngân hàng, một lớp có nhiều sinh viên. Nó có thể được giải thích bằng cách sử dụng ví dụ dưới đây.

Hình 01: Tập hợp

Theo ví dụ trên, lớp học bao gồm một học sinh hoặc nhiều học sinh. Đa bội cũng được sử dụng để chỉ số lượng đối tượng. Nó mô tả rằng một lớp học có nhiều sinh viên. Biểu tượng của viên kim cương đại diện cho tập hợp trong UML. Đối tượng học sinh không dựa vào đối tượng lớp. Nếu đối tượng lớp bị phá hủy, nó sẽ không ảnh hưởng đến các đối tượng học sinh. Những vật thể đó vẫn sẽ tồn tại.

Thành phần là gì?

Các thành phần là một hình thức tổng hợp cụ thể hơn. Nó mô tả quyền sở hữu. Nó có thể được giải thích bằng cách sử dụng ví dụ dưới đây.

Hình 02: Thành phần

Theo như trên, đối tượng cuốn sách bao gồm các đối tượng trang hoặc các trang. Đa bội cũng được sử dụng để chỉ số lượng đối tượng. Nó mô tả rằng một lớp học có nhiều sinh viên. Biểu tượng kim cương được tô sáng đại diện cho thành phần trong UML. Vì cuốn sách có một trang hoặc nhiều trang, nó là một tập hợp, nhưng nó được chỉ định nhiều hơn. Nếu đối tượng sách bị hủy, thì các đối tượng trang cũng bị hủy. Đối tượng trang không thể tồn tại mà không có đối tượng sách. Do đó, chế phẩm là một hình thức tổng hợp cụ thể hơn bao hàm quyền sở hữu.

Điểm giống nhau giữa sự kết hợp và thành phần?

  • Cả hai đều được sử dụng trong lập trình hướng đối tượng.
  • Cả hai đều được sử dụng trong Ngôn ngữ mô hình hóa thống nhất (UML) để hiểu về hệ thống.

Sự khác biệt giữa tập hợp và thành phần là gì?

Tổng hợp so với thành phần

Tập hợp là sự kết hợp giữa hai đối tượng mô tả mối quan hệ của người Viking. Thành phần là loại tổng hợp cụ thể nhất ngụ ý quyền sở hữu.
 Biểu tượng UML
Tập hợp được ký hiệu là một viên kim cương. Thành phần được biểu thị bằng một viên kim cương nổi bật.
Chức năng
Tóm lại, nếu đối tượng sở hữu bị phá hủy, nó sẽ không ảnh hưởng đến đối tượng chứa. Trong thành phần, nếu đối tượng sở hữu bị phá hủy, nó sẽ ảnh hưởng đến đối tượng chứa.

Tóm lược - Tổng hợp so với thành phần 

Lập trình hướng đối tượng là một mô hình chính trong phát triển phần mềm. Trong OOP, hệ thống được mô hình hóa bằng các đối tượng. Những đối tượng này không tồn tại trong sự cô lập. Các đối tượng hợp tác với các đối tượng khác. Mối quan hệ giữa các đối tượng được gọi là hiệp hội. Tập hợp và thành phần là các loại hiệp hội. Sự khác biệt giữa tập hợp và thành phần là tập hợp là sự kết hợp giữa hai đối tượng mô tả về mối quan hệ có một mối quan hệ và thành phần là kiểu kết hợp cụ thể hơn bao hàm quyền sở hữu. Tập hợp và thành phần đều giúp hiểu hành vi của hệ thống.

Tải xuống Phiên bản PDF của Tập hợp so với Thành phần

Bạn có thể tải xuống phiên bản PDF của bài viết này và sử dụng nó cho mục đích ngoại tuyến theo ghi chú trích dẫn. Vui lòng tải xuống phiên bản PDF tại đây Sự khác biệt giữa Tập hợp và Thành phần

Tài liệu tham khảo:

1. Sử dụng tổng hợp và thành phần, Sự nghiệp con người, ngày 22 tháng 5 năm 2015. Có sẵn tại đây