전체 다이어그램으로 돌아가기

클래스 다이어그램

클래스, 속성, 관계로 객체지향 시스템을 모델링합니다. 소프트웨어 아키텍처 설계에 필수적입니다.

클래스 다이어그램이란?

클래스 다이어그램은 객체지향 시스템의 정적 구조를 모델링하는 UML 구조 다이어그램입니다. 클래스, 속성, 메서드 및 그들 간의 관계(상속, 연관, 합성, 집합)를 보여줍니다. 클래스 다이어그램은 소프트웨어 아키텍처의 청사진 역할을 하여 개발자가 코드를 작성하기 전에 시스템 설계를 시각화하는 데 도움이 됩니다.

편집 및 미리보기

Mermaid 문법으로 클래스 다이어그램을(를) 작성하고 변경 사항을 즉시 확인하세요.

에디터
100%

일반적인 사용 사례

소프트웨어 아키텍처 계획

구현 전에 애플리케이션의 구조를 설계합니다. 클래스, 책임, 상호작용 방식을 정의하여 유지보수 가능하고 확장 가능한 시스템을 구축합니다.

객체지향 설계

상속 계층, 인터페이스, 추상 클래스를 모델링합니다. 다형성, 캡슐화 및 Factory, Singleton, Observer와 같은 디자인 패턴을 시각화합니다.

코드 문서화

기존 코드 구조의 시각적 문서를 생성합니다. 새 팀원이 복잡한 클래스 계층 구조와 종속성을 빠르게 이해하도록 돕습니다.

데이터베이스 스키마 계획

객체 모델을 데이터베이스 테이블에 매핑합니다. ORM 모델이나 데이터베이스 스키마를 구현하기 전에 엔티티, 관계, 카디널리티를 식별합니다.

주요 기능

클래스 구조 정의

클래스 이름, 가시성 수정자(public, private, protected)가 있는 속성, 반환 유형과 매개변수가 있는 메서드를 정의합니다.

관계 유형

적절한 UML 표기법으로 상속(일반화), 연관, 집합, 합성, 종속성 관계를 모델링합니다.

인터페이스 및 추상 클래스

표준 UML 규칙과 스테레오타입을 사용하여 구체적인 클래스, 추상 클래스, 인터페이스를 구분합니다.

다중성 및 제약

관계 카디널리티(1..1, 1..*, 0..*)를 지정하고 비즈니스 규칙과 설계 결정을 명확히 하는 제약 조건이나 노트를 추가합니다.

모범 사례

핵심 클래스부터 시작

가장 중요한 도메인 엔티티로 시작하여 점차 지원 클래스를 추가합니다. 모든 것을 한 번에 모델링하려고 하지 마세요.

적절한 가시성 사용

속성과 메서드에 적절한 가시성을 표시합니다: + for public, - for private, # for protected. 이것은 캡슐화 결정을 문서화합니다.

관련 관계만 표시

의미 있는 관계만 포함합니다. 모든 클래스 상호작용을 표시할 필요는 없습니다—아키텍처적 중요성에 초점을 맞추세요.

다이어그램 집중 유지

하나의 거대한 다이어그램보다 다른 하위 시스템에 대해 여러 개의 작은 다이어그램을 만드세요. 각각은 명확한 스토리를 전달해야 합니다.