В чем разница между Class Diagram и ER Diagram

«В чем разница между Class Diagram и ER Diagram» — вопрос из категории Нотации и диаграммы, который задают на 27% собеседований Системный Аналитик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Class Diagram (диаграмма классов) используется в ООП для представления структуры системы: классов, их атрибутов, методов и связей (наследование, ассоциации и т.д.). Пример в UML:

classDiagram
    class Person {
        -name: String
        +getName(): String
    }
    class Student {
        -studentId: int
    }
    Person <|-- Student

ER Diagram (диаграмма сущность-связь) применяется в проектировании БД для отображения сущностей, их атрибутов и отношений (1:1, 1:M, M:N). Пример:

erDiagram
    CUSTOMER ||--o{ ORDER : places
    ORDER ||--|{ ORDER_ITEM : contains

Ключевые отличия:

  1. Цель: Class — ООП-модель, ER — реляционная модель данных.
  2. Элементы: Class включает методы, ER — только данные.
  3. Связи: Class — наследование, агрегация; ER — внешние ключи, кардинальность.