ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 정처기 실기 요약 : 디자인패턴, 구조적다이어그램, 행위다이어그램 개념과 종
    Educate 2023. 3. 17. 16:46

    출처: 한빛출판네트워크

    디자인 패턴이란?

    디자인 패턴은 프로그래밍에서 자주 발생하는 문제를 해결하기 위해 개발된 일종의 템플릿이라고 볼 수 있습니다.

    이는 이미 검증된 해결 방법을 공유하고, 개발자들이 이를 활용하여 보다 쉽게 문제를 해결할 수 있도록 합니다.

    디자인 패턴은 크게 세 가지 유형으로 분류할 수 있습니다.

     

    첫째, 생성 패턴은 객체의 생성을 중심으로 한 패턴으로, 객체를 생성하고 구성하는 방법을 다룹니다.

    이 유형의 패턴에는 Singleton, Factory Method, Abstract Factory, Builder, Prototype 등이 포함됩니다.

    둘째, 구조 패턴은 클래스와 객체를 구성하는 방법에 중점을 둔 패턴으로, 클래스나 객체의 구조를 개선하는 방법을 다룹니다.

    이 유형의 패턴에는 Adapter, Bridge, Composite, Decorator, Facade, Flyweight, Proxy 등이 포함됩니다.

    셋째, 행동 패턴은 객체 간의 상호 작용을 중심으로 한 패턴으로, 객체 간의 행동을 조율하고 일치시키는 방법을 다룹니다.

    이 유형의 패턴에는 Chain of Responsibility, Command, Interpreter, Iterator, Mediator, Memento, Observer, State, Strategy, Template Method, Visitor 등이 포함됩니다.

     

    디자인 패턴은 개발자들이 프로그램을 개발하는 동안 흔히 발생하는 문제에 대해 공통된 해결 방법을 제공함으로써 코드의 재사용성과 가독성을 향상시키며, 유지 보수 비용을 줄일 수 있습니다. 따라서 디자인 패턴은 프로그래밍을 처음 접하는 초보자부터 전문가까지 모든 개발자들에게 필수적인 개념입니다.

    출처 : 마이크로소프트 UML 다이어그램

    구조적 다이어그램이란?

    구조적 다이어그램은 시스템의 구조와 구성 요소들 사이의 관계를 시각적으로 표현하는 데 사용되는 다이어그램입니다. 시스템을 구성하는 요소들과 그들 사이의 관계를 이해하고 설명하기 쉽도록 표시하며, 객체 지향 소프트웨어 개발에서 매우 유용하게 활용됩니다.

    구조적 다이어그램에는 다음과 같은 종류가 있습니다.

     

    1. 클래스 다이어그램(Class Diagram): 클래스, 인터페이스, 객체와 그들 사이의 관계를 나타내는 다이어그램입니다. 클래스의 속성, 메서드, 상속 등을 표시하며, 객체지향 소프트웨어 개발에서 가장 널리 사용됩니다.
    2. 객체 다이어그램(Object Diagram): 클래스 다이어그램에서 정의된 객체들의 상호 작용을 나타내는 다이어그램입니다. 실제 객체들 간의 관계와 속성을 표시하여 시스템의 구조를 이해하는 데 도움을 줍니다.
    3. 패키지 다이어그램(Package Diagram): 클래스와 인터페이스를 그룹화하여 시스템의 모듈화를 나타내는 다이어그램입니다. 패키지의 종속성과 사용 관계를 표시하여 시스템의 구조를 분석하는 데 사용됩니다.

    행위 다이어그램이란?

    행위 다이어그램은 시스템이 수행하는 작업과 상호 작용하는 개체 간의 동적인 행위를 시각적으로 표현하는 데 사용되는 다이어그램입니다. 시스템의 동작과 흐름을 이해하고 설명하기 쉽도록 구성됩니다.

    행위 다이어그램은 시스템의 기능적인 측면을 중심으로 다양한 형태로 구성될 수 있습니다. 일반적으로 행위 다이어그램은 다음과 같은 요소를 포함합니다.

    1. 객체(Object): 시스템을 구성하는 요소를 나타냅니다. 객체는 사각형으로 표현되며, 객체의 이름이 포함됩니다.
    2. 메시지(Message): 객체들 간의 상호 작용을 나타냅니다. 메시지는 객체 간의 연결선으로 표현되며, 메시지의 이름과 매개 변수가 포함될 수 있습니다.
    3. 조건(Condition): 조건부로 실행되는 작업을 나타냅니다. 조건은 다이아몬드 모양으로 표현되며, 조건이 참인 경우에만 실행됩니다.
    4. 반복(Loop): 반복적으로 실행되는 작업을 나타냅니다. 반복은 원형 모양으로 표현되며, 조건을 지정하여 반복의 횟수를 제한할 수 있습니다.
    5. 분기(Branch): 작업의 여러 가지 실행 경로 중 하나를 선택하는 작업을 나타냅니다. 분기는 다이아몬드 모양으로 표현되며, 분기의 조건에 따라 각기 다른 경로를 따르게 됩니다.

    댓글

Designed by Tistory.