# 자바로 구현된 디자인 패턴 ![Java CI with Maven](https://github.com/iluwatar/java-design-patterns/workflows/Java%20CI%20with%20Maven/badge.svg)[](https://raw.githubusercontent.com/iluwatar/java-design-patterns/master/LICENSE.md)![License MIT](https://img.shields.io/badge/license-MIT-blue.svg)[](https://sonarcloud.io/dashboard?id=iluwatar_java-design-patterns)![Join the chat at https://gitter.im/iluwatar/java-design-patterns](https://badges.gitter.im/Join%20Chat.svg) [](#contributors-)![All Contributors](https://img.shields.io/badge/all_contributors-133-orange.svg?style=flat-square) # 소개 디자인 패턴은 프로그래머가 응용 프로그램이나 시스템을 디자인 할 때 일반적인 문제를 해결하는 데 사용할 수있는 가장 공식화 된 방법입니다. 디자인 패턴은 테스트되고 입증 된 개발 패러다임을 제공하여 개발 프로세스 속도를 높일 수 있습니다. 디자인 패턴을 재사용하면 주요 문제를 유발하는 미묘한 이슈들을 방지하는데 도움이 되며 또한 패턴에 익숙한 코더와 아키텍트의 코드 가독성도 향상됩니다. # 시작하기 이 사이트는 Java 디자인 패턴을 보여줍니다. 이 솔루션은 오픈 소스 커뮤니티의 경험이 많은 프로그래머와 설계자가 개발했습니다. 패턴은 높은 수준의 설명이나 소스 코드를 통해 찾아 볼 수 있습니다. 소스 코드 예제는 잘 설명되어 있으며 특정 패턴을 구현하는 방법을 알려주는 프로그래밍 튜토리얼로 생각할 수 있습니다. 우리는 가장 널리 알려지고 실무에서 입증된 오픈 소스 Java 기술을 사용합니다. 자료를 살펴보기 전에 다양한 [소프트웨어 설계 원칙](https://java-design-patterns.com/principles/)을 숙지해야합니다. 모든 디자인은 가능한 한 단순해야합니다. 당신은 KISS, YAGNI로 시작해야하며, 원칙을 작동 할 수 있는 가장 단순한 일을 해야합니다. 복잡성과 패턴은 실용적인 확장성을 위해 필요할 때만 도입되어야합니다. 이러한 개념에 익숙해지면 다음 접근 방식 중 하나를 이용하여 [사용 가능한 디자인 패턴](https://java-design-patterns.com/patterns/)으로 드릴다운 할 수 있습니다. - 이름으로 특정 패턴을 검색합니다. 찾을 수 없습니까? [여기](https://github.com/iluwatar/java-design-patterns/issues)에서 새 패턴을 보고하십시오. - `Performance`, `Gang of Four` 또는 `Data access` 태그 사용. - 패턴 카테고리, `Creational`, `Behavioral` 및 기타 사용 이 사이트에 제시된 객체 지향 솔루션이 여러분의 아키텍처에서 유용하고 우리가 개발 한 것만큼 재미있게 배우기를 바랍니다. # 기여하는 방법 프로젝트에 기여할 의향이 있다면 [developer wiki](https://github.com/iluwatar/java-design-patterns/wiki)에서 관련 정보를 찾을 수 있습니다. [Gitter chatroom](https://gitter.im/iluwatar/java-design-patterns)에서 귀하를 돕고 질문에 답변 해 드리겠습니다. # 특허 이 프로젝트는 MIT 라이센스 조건에 따라 라이센스가 부여됩니다. # 기여자

Ilkka Seppälä

amit1307

Narendra Pathai

Jeroen Meulemeester

Joseph McCarthy

Thomas

Anurag Agarwal

Markus Moser

Sabiq Ihab

Amit Dixit

Piyush Kailash Chaudhari

joshzambales

Kamil Pietruszka

Zafar Khaydarov

Paul Campbell

Argyro Sioziou

TylerMcConville

saksham93

nikhilbarar

Colin But

Ruslan

Juho Kang

Dheeraj Mummareddy

Bernardo Sulzbach

Aleksandar Dudukovic

Yusuf Aytaş

Mihály Kuprivecz

Stanislav Kapinus

GVSharma

Srđan Paunović

Petros G. Sideris

Pramod Gupta

Amarnath Chandana

Anurag870

Wes Gilleland

Harshraj Thakor

Martin Vandenbussche

Alexandru Somai

Artur Mogozov

anthony

Christian Cygnus

Dima Gubin

Joshua Jimenez

Kai Winter

lbroman

Przemek

Prafful Agarwal

Sanket Panhale

staillebois

Krisztián Nagy

Alexander Ivanov

Yosfik Alqadri

Agustí Becerra Milà

Juan Manuel Suárez

Luigi Cortese

Katarzyna Rzepecka

adamski.pro

Shengli Bai

Boris

Dmitry Avershin

靳阳

hoangnam2261

Arpit Jain

Jón Ingi Sveinbjörnsson

Kirill Vlasov

Mitchell Irvin

Ranjeet

PhoenixYip

M Saif Asif

kanwarpreet25

Leon Mak

Per Wramdemark

Evan Sia Wai Suan

AnaghaSasikumar

Christoffer Hamberg

Dominik Gruntz

Hannes

Leo Gutiérrez Ramírez

Zhang WH

Christopher O'Connell

George Mavroeidis

Hemant Bothra

Kevin Peters

George Aristy

Mahendran Mookkiah

Azureyjt

gans

Matt

Gopinath Langote

Hoswey

Amit Pandey

gwildor28

田浩

Stamatis Pitsios

qza

Rodolfo Forte

Ankur Kaushal

Ovidijus Okinskas

Robert Kasperczyk

Tapio Rautonen

Yuri Orlov

Varun Upadhyay

Aditya Pal

grzesiekkedzior

Sivasubramani M

Sami Airaksinen

Janne Sinivirta

Boris-Chengbiao Zhou

Jacob Hein

Richard Jones

Rachel M. Carmena

Zaerald Denze Lungos

Lars Kappert

Mike Liu

Matt Dolan

Manan

Nishant Arora

Peeyush

Rakesh

Wei Seng

Ashish Trivedi

洪月阳

xdvrx1

Subhrodip Mohanta

Bethan Palmer

Toxic Dreamz

Edy Cu Tjong

Michał Krzywański

Stefan Birkner

Fedor Skvorcov

samilAyoub

Vladislav Golubinov

Swaraj