Hướng dẫn sơ đồ lớp UML: Lớp trừu tượng với các ví dụ

Lớp trong sơ đồ UML là gì?

A Lớp trong UML sơ đồ là một bản thiết kế được sử dụng để tạo ra một đối tượng hoặc một tập hợp các đối tượng. Lớp xác định những gì một đối tượng có thể làm. Đó là một mẫu để tạo các đối tượng khác nhau và thực hiện hành vi của chúng trong hệ thống. Một Lớp trong UML được biểu thị bằng một hình chữ nhật bao gồm các hàng có tên lớp, thuộc tính và thao tác.

Sơ đồ lớp là gì?

A Sơ đồ lớp trong Công nghệ phần mềm là một cấu trúc tĩnh cung cấp cái nhìn tổng quan về hệ thống phần mềm bằng cách hiển thị các lớp, thuộc tính, hoạt động và mối quan hệ của chúng với nhau. Sơ đồ này bao gồm tên lớp, thuộc tính và thao tác trong các ngăn được chỉ định riêng biệt. Sơ đồ lớp giúp xây dựng mã để phát triển ứng dụng phần mềm.

Sơ đồ lớp xác định các loại đối tượng trong hệ thống và các loại mối quan hệ khác nhau tồn tại giữa chúng. Nó cung cấp một cái nhìn cấp cao về một ứng dụng. Phương pháp lập mô hình này có thể chạy với hầu hết tất cả các Phương thức hướng đối tượng. Một lớp có thể tham chiếu đến một lớp khác. Một lớp có thể có các đối tượng của nó hoặc có thể kế thừa từ các lớp khác.

Lợi ích của sơ đồ lớp

  • Biểu đồ lớp minh họa các mô hình dữ liệu cho cả các hệ thống thông tin rất phức tạp
  • Nó cung cấp cái nhìn tổng quan về cách ứng dụng được cấu trúc trước khi nghiên cứu mã thực tế. Điều này có thể dễ dàng giảm thời gian bảo trì
  • Nó giúp hiểu rõ hơn về sơ đồ chung của một ứng dụng.
  • Cho phép vẽ biểu đồ chi tiết làm nổi bật mã cần lập trình
  • Hữu ích cho các nhà phát triển và các bên liên quan khác.

Các thành phần thiết yếu của sơ đồ lớp UML

Các thành phần thiết yếu của sơ đồ lớp UML là:

  1. Tên lớp
  2. Thuộc tính
  3. Operations

Tên lớp

Tên lớp trong UML

Tên của lớp chỉ cần thiết trong biểu diễn đồ họa của lớp. Nó xuất hiện ở ngăn trên cùng. Lớp là bản thiết kế của một đối tượng có thể chia sẻ cùng các mối quan hệ, thuộc tính, hoạt động và ngữ nghĩa. Lớp được hiển thị dưới dạng hình chữ nhật, bao gồm tên, thuộc tính và thao tác của nó trong các ngăn riêng biệt.

Khi biểu diễn một lớp, cần phải tuân thủ các quy tắc sau:

  1. Tên lớp phải luôn bắt đầu bằng chữ in hoa.
  2. Tên lớp phải luôn ở giữa ngăn đầu tiên.
  3. Tên lớp phải luôn được viết bằng đậm định dạng.
  4. Tên lớp trừu tượng UML phải được viết ở dạng in nghiêng.

Thuộc tính

Một thuộc tính được đặt tên là thuộc tính của một lớp mô tả đối tượng đang được mô hình hóa. Trong sơ đồ lớp, thành phần này được đặt ngay bên dưới ngăn tên.

Thuộc tính trong UML

Thuộc tính dẫn xuất được tính toán từ các thuộc tính khác. Ví dụ, tuổi của học sinh có thể dễ dàng được tính từ ngày sinh của học sinh đó.

Thuộc tính trong UML

Thuộc tính đặc điểm

  • Các thuộc tính thường được viết cùng với hệ số hiển thị.
  • Công cộng, riêng tư, được bảo vệ và gói là bốn khả năng hiển thị được biểu thị bằng các dấu +, -, # hoặc ~ tương ứng.
  • Khả năng hiển thị mô tả khả năng truy cập của một thuộc tính của một lớp.
  • Các thuộc tính phải có tên có ý nghĩa mô tả cách sử dụng nó trong một lớp.

Mối quan hệ

Chủ yếu có ba loại mối quan hệ trong UML:

  1. Sự phụ thuộc
  2. Khái quát hóa
  3. Hiệp hội

Phụ thuộc

Sự phụ thuộc có nghĩa là mối quan hệ giữa hai hoặc nhiều lớp trong đó sự thay đổi của một lớp có thể dẫn đến những thay đổi ở lớp kia. Tuy nhiên, nó sẽ luôn tạo ra mối quan hệ yếu hơn. Sự phụ thuộc chỉ ra rằng một lớp phụ thuộc vào một lớp khác.

Trong các ví dụ sơ đồ lớp UML sau đây, Student có sự phụ thuộc vào College

Các mối quan hệ trong UML

Sự khái quát:

Các mối quan hệ trong UML

Việc khái quát hóa giúp kết nối một lớp con với siêu lớp của nó. Một lớp con được kế thừa từ lớp cha của nó. Mối quan hệ khái quát hóa không thể được sử dụng để mô hình hóa việc triển khai giao diện. Sơ đồ lớp cho phép kế thừa từ nhiều siêu lớp.

Trong ví dụ này, lớp Sinh viên được khái quát hóa từ Lớp Người.

Hiệp hội:

Loại mối quan hệ này thể hiện mối quan hệ tĩnh giữa lớp A và B. Ví dụ; một nhân viên làm việc cho một tổ chức.

Dưới đây là một số quy tắc dành cho Hiệp hội:

  • Hiệp hội chủ yếu là động từ hoặc cụm động từ hoặc danh từ hoặc cụm danh từ.
  • Nó phải được đặt tên để chỉ ra vai trò của lớp được gắn ở cuối đường dẫn liên kết.
  • Bắt buộc đối với các liên tưởng phản thân

Trong ví dụ này, mối quan hệ giữa sinh viên và trường đại học được thể hiện đó là nghiên cứu.

Các mối quan hệ trong UML

số nhiều

Các mối quan hệ trong UML

Số bội số là một yếu tố gắn liền với một thuộc tính. Nó chỉ định số lượng thuộc tính được tạo khi một lớp được khởi tạo. Nếu bội số không được chỉ định thì theo mặc định, bội số đó được coi là bội số mặc định.

Giả sử có 100 sinh viên trong một trường đại học. Trường đại học có thể có nhiều sinh viên.

aggregation

Tập hợp là một loại liên kết đặc biệt mô hình hóa mối quan hệ toàn bộ giữa tập hợp và các bộ phận của nó.

Các mối quan hệ trong UML

Ví dụ, lớp đại học bao gồm một hoặc nhiều sinh viên. Tổng hợp lại, các lớp được chứa không bao giờ hoàn toàn phụ thuộc vào vòng đời của vùng chứa. Ở đây, lớp đại học sẽ vẫn tiếp tục ngay cả khi học sinh vắng mặt.

Thành phần:

Các mối quan hệ trong UML

Thành phần là một kiểu tổng hợp đặc biệt biểu thị quyền sở hữu mạnh mẽ giữa hai lớp khi một lớp là một phần của lớp khác.

Ví dụ, nếu trường đại học bao gồm các lớp sinh viên. Trường có thể có nhiều sinh viên, trong khi mỗi sinh viên chỉ thuộc một trường. Vì vậy, nếu trường đại học không hoạt động thì tất cả sinh viên cũng bị loại bỏ.

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

aggregation Sáng tác
Tập hợp chỉ ra mối quan hệ trong đó lớp con có thể tồn tại tách biệt với lớp cha của chúng. Ví dụ: Ô tô (Cha mẹ) và Ô tô (Con). Vì vậy, nếu xóa Ô tô thì Ô tô con vẫn tồn tại. Mối quan hệ hiển thị thành phần trong đó thành phần con sẽ không bao giờ tồn tại độc lập với thành phần cha mẹ. Ví dụ: Nhà (cha mẹ) và Phòng (con). Các phòng sẽ không bao giờ tách thành một Nhà.

Các lớp trừu tượng

Nó là một lớp có nguyên mẫu hoạt động nhưng không có phần triển khai. Cũng có thể có một lớp trừu tượng không có thao tác nào được khai báo bên trong nó. Một bản tóm tắt rất hữu ích cho việc xác định các chức năng của các lớp. Chúng ta hãy xem xét một ví dụ về một lớp trừu tượng. Giả sử chúng ta có một lớp trừu tượng được gọi là một chuyển động với một phương thức hoặc một thao tác được khai báo bên trong nó. Phương thức được khai báo bên trong lớp trừu tượng được gọi là di chuyển ().

Phương thức lớp trừu tượng này có thể được sử dụng bởi bất kỳ đối tượng nào như ô tô, động vật, robot, v.v. để thay đổi vị trí hiện tại. Sẽ hiệu quả hơn khi sử dụng phương thức lớp trừu tượng này với một đối tượng vì hàm đã cho không cung cấp phần triển khai nào. Chúng ta có thể sử dụng nó theo bất kỳ cách nào cho nhiều đối tượng.

Trong UML, lớp trừu tượng có cùng ký hiệu với lớp. Sự khác biệt duy nhất giữa một lớp và một lớp trừu tượng là tên lớp được viết hoàn toàn bằng phông chữ in nghiêng.

Một lớp trừu tượng không thể được khởi tạo hoặc khởi tạo.

Ký hiệu lớp trừu tượng
Ký hiệu lớp trừu tượng

Ở trên ký hiệu lớp trừu tượng, chỉ có một phương thức trừu tượng duy nhất có thể được sử dụng bởi nhiều đối tượng của các lớp.

Ví dụ về sơ đồ lớp UML

Tạo sơ đồ lớp là một quá trình đơn giản. Nó không liên quan đến nhiều kỹ thuật. Đây là một ví dụ:

Hệ thống ATM rất đơn giản vì khách hàng cần nhấn một số nút để nhận tiền mặt. Tuy nhiên, có nhiều lớp bảo mật mà bất kỳ hệ thống ATM nào cũng cần phải vượt qua. Điều này giúp ngăn ngừa gian lận và cung cấp tiền mặt hoặc thông tin chi tiết cần thiết cho khách hàng ngân hàng.

Dưới đây là ví dụ về Sơ đồ lớp UML:

Ví dụ về sơ đồ lớp UML

Ví dụ về sơ đồ lớp UML

Cũng kiểm tra:- Sơ đồ UML: Lịch sử, Loại, Đặc điểm, Phiên bản, Công cụ

Sơ đồ lớp trong vòng đời phát triển phần mềm

Sơ đồ lớp có thể được sử dụng trong các giai đoạn phát triển phần mềm khác nhau. Nó giúp mô hình hóa sơ đồ lớp theo ba khía cạnh khác nhau.

1. Quan điểm khái niệm: Sơ đồ khái niệm đang mô tả mọi thứ trong thế giới thực. Bạn nên vẽ một sơ đồ thể hiện các khái niệm trong lĩnh vực đang nghiên cứu. Những khái niệm này liên quan đến lớp và nó luôn độc lập với ngôn ngữ.

2. Quan điểm đặc điểm kỹ thuật: Phối cảnh đặc tả mô tả sự trừu tượng hóa phần mềm hoặc các thành phần với các đặc tả và giao diện. Tuy nhiên, nó không đưa ra bất kỳ cam kết nào về việc thực hiện cụ thể.

3. Quan điểm thực hiện: Loại sơ đồ lớp này được sử dụng để triển khai bằng một ngôn ngữ hoặc ứng dụng cụ thể. Quan điểm triển khai, sử dụng để triển khai phần mềm.

Thực hành tốt nhất về thiết kế sơ đồ lớp

Biểu đồ lớp là biểu đồ UML quan trọng nhất được sử dụng để phát triển ứng dụng phần mềm. Có nhiều thuộc tính cần được xem xét khi vẽ Biểu đồ lớp. Chúng biểu diễn các khía cạnh khác nhau của ứng dụng phần mềm.

Sau đây là một số điểm cần lưu ý khi vẽ sơ đồ lớp:

  • Tên đặt cho sơ đồ lớp phải có ý nghĩa. Hơn nữa, Nó nên mô tả khía cạnh thực sự của hệ thống.
  • Mối quan hệ giữa mỗi yếu tố cần phải được xác định trước.
  • Cần phải xác định rõ trách nhiệm của từng lớp.
  • Đối với mỗi lớp, số lượng thuộc tính tối thiểu phải được chỉ định. Vì vậy, những thuộc tính không mong muốn có thể dễ dàng làm cho sơ đồ trở nên phức tạp.
  • Ghi chú của người dùng nên được đưa vào bất cứ khi nào bạn cần xác định một khía cạnh nào đó của sơ đồ. Vào cuối bản vẽ, nhóm phát triển phần mềm phải hiểu được.
  • Cuối cùng, trước khi tạo phiên bản cuối cùng, sơ đồ cần được vẽ trên giấy thường. Hơn nữa, nó nên được làm lại cho đến khi sẵn sàng để nộp lần cuối.

Kết luận

  • UML là ngôn ngữ tiêu chuẩn để xác định, thiết kế và trực quan hóa các tạo phẩm của hệ thống phần mềm
  • Một lớp là một bản thiết kế chi tiết cho một đối tượng
  • Sơ đồ lớp mô tả các loại đối tượng trong hệ thống và các loại mối quan hệ khác nhau tồn tại giữa chúng
  • Nó cho phép phân tích và thiết kế chế độ xem tĩnh của ứng dụng phần mềm
  • Sơ đồ lớp là sơ đồ UML quan trọng nhất được sử dụng để phát triển ứng dụng phần mềm
  • Các thành phần cơ bản của sơ đồ lớp UML là 1) Lớp 2) Thuộc tính 3) Mối quan hệ
  • Sơ đồ lớp cung cấp cái nhìn tổng quan về cách cấu trúc ứng dụng trước khi nghiên cứu mã thực tế. Nó chắc chắn làm giảm thời gian bảo trì
  • Sơ đồ lớp rất hữu ích để ánh xạ các ngôn ngữ lập trình hướng đối tượng như Java, C++hồng ngọc, Python, Vv

Cũng kiểm tra:- Hướng dẫn sơ đồ UML cho người mới bắt đầu: Tìm hiểu UML trực tuyến MIỄN PHÍ