[Java] 디자인 패턴 정리

2023. 3. 27. 19:01·Java/Design Pattern
728x90
728x90

디자인 패턴

  - 공통적으로 발생하는 문제에 대해 자주 쓰이는 설계 방법을 정리한 패턴

 

  - 장점

      · 개발자 간에 원활한 소통 가능

      · 소프트웨어 구조 파악 용이

      · 재사용성 UP → 개발 시간 단축

      · 설계 변경 요청에 대한 유연한 처리

 

  - 단점

      · 객체 지향 설계/구현에 대한 지식이 필요함

      · 초기 투자 비용에 대한 부담

 

 


생성 패턴

  - 객체를 생성하는 것과 관련된 패턴

 

#  싱글톤 패턴 (Singleton)

  - https://young0105.tistory.com/186

 

#  빌더 패턴 (Builder)

  - https://young0105.tistory.com/159

 

#  프로토타입 패턴 (Prototype)

  - 원본 객체를 새로운 객체에 복사하고, 필요에 따라 수정해서 사용하는 패턴

 

#  그 외 : Factory Method, Abstract Factory

 

 


구조 패턴

  - 프로그램 내의 자료 구조 or 인터페이스 구조 등을 설계하는 데 활용될 수 있는 패턴

  - 복잡한 구조를 개발하기 쉽게 함

  - 유지 보수성 UP

 

#  어댑터 패턴 (Adapter)

  - https://young0105.tistory.com/166

 

#  데코레이터 패턴 (Decorator)

  - 기존에 구현되어 있는 클래스에 필요한 기능을 추가하는 방식

  - 기능을 수평적으로 확장함

    (비교 : 상속은 수직적으로 기능을 확장함)

 

#  그 외 : Facade, Proxy, Bridge, Flyweight, Composite

 

 


행위 패턴

  - 반복적으로 사용되는 객체들의 상호 작용을 패턴화함

  - 클래스들 간에 책임을 분산하는 방법을 제공함

 

#  템플릿 메서드 패턴 (Template Method)

  - https://young0105.tistory.com/49

 

#  전략 패턴 (Strategy)

  - https://young0105.tistory.com/190

 

#  옵저버 패턴 (Observer)

  - https://young0105.tistory.com/193

 

#  그 외 : Iterator, Interpreter, Chain of Responsibility,

               Command, Mediator, Memento, State, Visitor

320x100
반응형
저작자표시 비영리 변경금지 (새창열림)

'Java > Design Pattern' 카테고리의 다른 글

[Java] 전략 패턴 (Strategy pattern)  (0) 2023.04.11
[Java] 싱글톤 패턴 (Singleton pattern)  (0) 2023.04.10
[Java] 어댑터 패턴 (Adapter pattern)  (0) 2023.03.27
[Java] 빌더 패턴 (Builder pattern)  (0) 2023.03.23
[Java] 템플릿 메서드 패턴 (Template Method pattern)  (0) 2023.02.11
'Java/Design Pattern' 카테고리의 다른 글
  • [Java] 싱글톤 패턴 (Singleton pattern)
  • [Java] 어댑터 패턴 (Adapter pattern)
  • [Java] 빌더 패턴 (Builder pattern)
  • [Java] 템플릿 메서드 패턴 (Template Method pattern)
스응
스응
    반응형
    250x250
  • 스응
    이서영의 개발 블로그
    스응
  • 전체
    오늘
    어제
  • 글쓰기 관리
    • 분류 전체보기 (383)
      • Java (134)
        • Base (54)
        • Spring Boot (37)
        • JSP (16)
        • Swing (GUI) (20)
        • Design Pattern (7)
      • C# (13)
      • PHP (18)
      • SQL (27)
      • Vue.js (9)
      • Tailwind CSS (4)
      • TypeScript (7)
      • HTML & CSS (27)
      • JavaScript (26)
      • jQuery (10)
      • Android (3)
      • - - - - - - - - - - - - - - (0)
      • Hotkeys (5)
      • CS (30)
      • etc. (13)
      • Error Note (15)
      • Team Project (24)
        • Airlines Web Project (12)
        • University Web Project (6)
        • Strikers 1945 GUI Project (6)
      • My Project (18)
        • Library Web Project (8)
        • Pet Shopping Mall GUI Project (10)
  • 블로그 메뉴

    • Home
    • Write
  • 링크

    • 깃허브
  • 공지사항

  • 인기 글

  • 태그

    jQuery
    SpringBoot
    http
    HTML
    vuejs
    java
    CSS
    typeScript
    Hotkeys
    SQL
    티스토리챌린지
    jsp
    개발일지
    Android
    SEO
    Wordpress
    오블완
    js
    면접
    Codeigniter
    cs
    zapier
    php
    git
    C#
    Swing
    tailwindcss
    errorNote
  • 최근 댓글

  • hELLO· Designed By정상우.v4.10.0
스응
[Java] 디자인 패턴 정리
상단으로

티스토리툴바