자주 보는 개발 설계 패턴 19가지 1탄

개발자라면 꼭 알아야 할 소프트웨어 개발 설계 패턴 19가지에 관해 알아보자! 사이트에 언급된 것 중 제가 평소 자주 접해왔던 사용하는 설계 패턴부터 먼저 소개하고 2탄에서 나머지 소개할게요! 1️⃣ Factory Method 팩토리 메소드는 객체 생성과 관련된 디자인 패턴이다. 팩토리 패턴에서 인스턴스 생성 로직을 클라이언트에 노출하지 않고 인스턴스 생성 전용 클래스에서 인스턴스를 생성한다. 2️⃣ Observer Pattern 오브저버 패턴은 개체 간의 다수 종속성을 정의하여 하나의 개체가 상태를 변경하면 모든 종속성이 자동으로 다른 객체들에게 통지되고 업데이트된다. 3️⃣ Singleton Design Pattern 싱글턴 설계 패턴은 클래스의 인스턴스화를 하나의 객체로 제한하는 설계 패턴이다. 4️⃣ Decorator Pattern 데코레이터 패턴은 객체에 추가 책임을 동적으로 부여한다. Subclass보다 데코레이터의 장점은 기능 확장하기 위해 좀 더 (기존 코드 변경 없이 등등) 유연한 대안을 제공한다는 것이다. 5️⃣ Facade Design Pattern 자바에서 인터페이스 JDBC는 퍼사드라고 불릴 수 있는데, 이는 사용자나 클라이언트로서 "java.sql.Connection"을 사용하여 만들고, 이 연결을 구현하는 것에 대해 사용자는 관심두지 않는다. 또 다른 좋은 예로 컴퓨터 시작을 살펴보자. 컴퓨터가 시작되면 CPU, 메모리, 하드 드라이브 등의 실행 작업이 수반된다. 사용자가 쉽게 사용할 수 있도록 시작에 필요한 작업 구현의 복잡성을 감추는 퍼사드를 추가해서 간단한 인터페이스만 제공할 수 있다. 시스템의 복잡성을 숨기고 클라이언트가 시스템에 액세스할 수 있는 인터페이스를 제공한다. 6️⃣ Builder Design Pattern 빌더는 복잡한 객체들을 단계별로 생성할 수 있도록 하는 생성 디자인 패턴이다. 빌더 패턴은 복잡한 객체를 단계별로 구성하는 데 사용되며 마지막 생성 단계에 객체를 리턴한다. 7️⃣ Proxy Pattern 프록시는 '대신'을 의미하며, 이것은 프록시 설계 패턴을 직접적으로 설명한다. 프록시는 surrogate, handle 및 wrapper라고도 한다. 실제 예로는 수표나 신용카드가 우리 은행 계좌에 있는 돈을 사용하게 하는 대리인이 될 수 있다. 현금 대신 사용할 수 있으며, 필요할 때 해당 현금에 액세스할 수 있는 수단을 제공한다. 프록시 패턴의 역할은 보호 중인 개체에 대한 액세스를 제어하고 관리한다. 8️⃣ Composite Design Pattern 컴포지트 패턴은 클라이언트가 객체 그룹(group of object)를 동일 인스턴스로 취급하는 것을 목적으로 한다. 📌 자세한 코드 예시와 패턴별 설명은 아래 원문을 읽어보세요. 🪴 함께 읽으면 좋은 글: 백엔드 개발 취업에 중요한 모놀리식과 마이크로서비스 아키텍처 https://careerly.co.kr/comments/77930 자주 언급되는 로드 밸런싱 알고리즘 6가지 https://careerly.co.kr/comments/77905 데이터베이스 속을 들여다보자! 관련 자료 구조는? https://careerly.co.kr/comments/76441

Software Design Patterns - GeeksforGeeks

GeeksforGeeks

Software Design Patterns - GeeksforGeeks

다음 내용이 궁금하다면?

또는

이미 회원이신가요?

2023년 2월 23일 오후 3:45

 • 

저장 595조회 12,930

댓글 0