디자인 패턴 - Overview

Table of Contents

출처 : https://www.tutorialspoint.com/design_pattern/design_pattern_overview.htm

디자인 패턴 - 개요

디자인 패턴은 경험 많은 객체 지향 소프트웨어 개발자가 사용하는 모범 사례를 나타냅니다. 디자인 패턴은 소프트웨어 개발자가 소프트웨어 개발 중에 직면한 일반적인 문제에 대한 솔루션입니다. 이러한 솔루션은 상당한 기간 동안 수많은 소프트웨어 개발자가 시행착오를 거쳐 얻은 것입니다.

갱 오브 포(GOF)란?

1994년 4명의 저자 Erich Gamma, Richard Helm, Ralph Johnson 및 John Vlissides는 디자인 패턴 - 재사용 가능한 객체 지향 소프트웨어의 요소 라는 책을 출판하여 소프트웨어 개발에서 디자인 패턴의 개념을 시작했습니다.

이 저자들은 집합적으로 GOF(Gang of Four) 로 알려져 있습니다 . 이 저자에 따르면 디자인 패턴은 주로 다음과 같은 객체 지향 디자인 원칙을 기반으로 합니다.

  • 구현이 아닌 인터페이스로 프로그래밍
  • 상속보다 객체 구성 선호

디자인 패턴의 활용

디자인 패턴은 소프트웨어 개발에서 두 가지 주요 용도가 있습니다.

개발자를 위한 공통 플랫폼

디자인 패턴은 표준 용어를 제공하며 특정 시나리오에 따라 다릅니다. 예를 들어, 싱글톤 디자인 패턴은 단일 개체의 사용을 의미하므로 단일 디자인 패턴에 익숙한 모든 개발자는 단일 개체를 사용하고 프로그램이 싱글톤 패턴을 따르고 있음을 서로 알릴 수 있습니다.

모범 사례

디자인 패턴은 오랜 기간에 걸쳐 발전되어 왔으며 소프트웨어 개발 중에 직면한 특정 문제에 대한 최상의 솔루션을 제공합니다. 이러한 패턴을 학습하면 경험이 없는 개발자가 쉽고 빠르게 소프트웨어 설계를 배울 수 있습니다.

디자인 패턴의 종류

디자인 패턴 참고서인 Design Patterns - Elements of Reusable Object-Oriented Software 에 따르면 23개의 디자인 패턴이 있습니다. 이 패턴은 생성, 구조 및 행동 패턴의 세 가지 범주로 분류할 수 있습니다. 우리는 또한 디자인 패턴의 또 다른 범주인 J2EE 디자인 패턴에 대해 논의할 것입니다.

SN패턴 및 설명
1생성 패턴
이러한 디자인 패턴은 new 연산자를 사용하여 직접 개체를 인스턴스화하는 대신 생성 논리를 숨기면서 개체를 생성하는 방법을 제공합니다. 이것은 프로그램이 주어진 사용 사례에 대해 생성해야 하는 객체를 결정할 때 더 많은 유연성을 제공합니다.
2구조 패턴
이러한 디자인 패턴은 클래스 및 개체 구성과 관련이 있습니다. 상속의 개념은 인터페이스를 구성하고 새로운 기능을 얻기 위해 객체를 구성하는 방법을 정의하는 데 사용됩니다.
3행동 패턴
이러한 디자인 패턴은 특히 개체 간의 통신과 관련이 있습니다.
4J2EE 패턴
이러한 디자인 패턴은 특히 프레젠테이션 계층과 관련이 있습니다. 이러한 패턴은 Sun Java Center에서 식별됩니다.

이 시리즈의 게시물