๋ค๋ฅธ ์ธ์ด๋ก ์ฝ๊ธฐ : zh, fr, tr, ar, es, pt, id, ru, de, ja, vi, bn, np, it, da
๋์์ธ ํจํด์ ๊ฐ๋ฐ์๊ฐ ์์ฉ ํ๋ก๊ทธ๋จ์ด๋ ์์คํ ์ ๋์์ธํ ๋ ์ผ๋ฐ์ ์ธ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ ๋ฐ ์ฌ์ฉํ ์ ์๋ ๊ฐ์ฅ ์ ์์ ์ธ ๋ฐฉ๋ฒ์ ๋๋ค.
๋์์ธ ํจํด์ ํ ์คํธ๋๊ณ ์ ์ฆ๋ ๊ฐ๋ฐ ํจ๋ฌ๋ค์์ ์ ๊ณตํ์ฌ ๊ฐ๋ฐ ํ๋ก์ธ์ค ์๋๋ฅผ ๋์ผ ์ ์์ต๋๋ค.
๋์์ธ ํจํด์ ์ฌ์ฉํ๋ฉด ์ฃผ์ ๋ฌธ์ ๋ฅผ ์ ๋ฐํ๋ ๋ฏธ๋ฌํ ์ด์๋ค์ ๋ฐฉ์งํ๋ ๋ฐ ๋์์ด ๋๋ฉฐ ๋ํ ํจํด์ ์ต์ํ ๊ฐ๋ฐ์์ ์ํคํ ํธ์ ์ฝ๋ ๊ฐ๋ ์ฑ์ ํฅ์์ํต๋๋ค.
์ด ์ฌ์ดํธ๋ Java ๋์์ธ ํจํด์ ์ค๋ช ํฉ๋๋ค. ์ด ์๋ฃจ์ ์ ์คํ ์์ค ์ปค๋ฎค๋ํฐ์ ๊ฒฝํ์ด ๋ง์ ๊ฐ๋ฐ์์ ์ค๊ณ์๊ฐ ๊ฐ๋ฐํ์ต๋๋ค. ํจํด์ด ๋์ ์์ค์ ์ค๋ช ์ด๋ ์์ค ์ฝ๋๋ฅผ ํตํด ์ฐพ์๋ณผ ์ ์์ต๋๋ค. ์์ค ์ฝ๋ ์์ ๋ ์ ์ค๋ช ๋์ด ์์ผ๋ฉฐ ํน์ ํจํด์ ๊ตฌํํ๋ ๋ฐฉ๋ฒ์ ์๋ ค์ฃผ๋ ํ๋ก๊ทธ๋๋ฐ ํํ ๋ฆฌ์ผ๋ก ์ฌ์ฉํ ์ ์์ต๋๋ค. ์ฐ๋ฆฌ๋ ๊ฐ์ฅ ๋๋ฆฌ ์๋ ค์ง๊ณ ์ค๋ฌด์์ ์ ์ฆ๋ ์คํ ์์ค Java ๊ธฐ์ ์ ์ฌ์ฉํฉ๋๋ค.
์๋ฃ๋ฅผ ์ดํด๋ณด๊ธฐ ์ ์ ๋ค์ํ ์ํํธ์จ์ด ์ค๊ณ ์์น์ ์์งํด์ผ ํฉ๋๋ค.
๋ชจ๋ ๋์์ธ ํจํด์ ๊ฐ๋ฅํ ํ ์ฌํํด์ผ ํฉ๋๋ค. ์ํํธ์จ์ด ๊ฐ๋ฐ์ KISS, YAGNI ์์น์ ์ง์ผ์ผ ํ๋ฉฐ, ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ ์ ์๋ ๊ฐ์ฅ ์ฌํํ ์ผ์ ํด์ผ ํฉ๋๋ค. ๋ณต์กํ ๋์์ธ ํจํด์ ์ค์ฉ์ ์ด๊ณ ํ์ฅ์ฑ์ ์ํด ํ์ํ ๋๋ง ๋์ ๋์ด์ผ ํฉ๋๋ค.
์ด๋ฌํ ๊ฐ๋ ์ ์ต์ํด์ง๋ฉด ์๋์ ๊ฐ์ ๋ฐฉ๋ฒ์ผ๋ก ์ฌ์ฉ ๊ฐ๋ฅํ ๋์์ธ ํจํด ์ค ํ๋๋ฅผ ์ ํํ์ฌ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ ์ ์์ต๋๋ค.
- ์ด๋ฆ์ผ๋ก ํน์ ํจํด์ ๊ฒ์ํฉ๋๋ค. ์ฐพ๋ ํจํด์ด ์๋ค๋ฉด ์ฌ๊ธฐ์์ ์ ํจํด์ ์์ฒญํ์ธ์.
Performance
,Gang of Four
๋๋Data access
๋ฑ์ ํ๊ทธ๋ก ๊ฒ์ํ์ธ์.Creational
,Behavioral
๋ฑ์ ํจํด ์นดํ ๊ณ ๋ฆฌ๋ก ๊ฒ์ํ์ธ์.
์ด ์ฌ์ดํธ์์ ์ ๊ณตํ๋ ๊ฐ์ฒด ์งํฅ ์๋ฃจ์ ์ด ์ฌ๋ฌ๋ถ์ ์ํคํ ์ฒ์ ์ ์ฉํ๊ณ ์ฌ์ฉ๋๊ณ ์ฐ๋ฆฌ๊ฐ ๊ฐ๋ฐ ํ ๊ฒ๋งํผ ์ฌ๋ฏธ์๊ฒ ๋ฐฐ์ฐ๊ธฐ๋ฅผ ๋ฐ๋๋๋ค.
ํ๋ก์ ํธ์ ๊ธฐ์ฌํ ์ํฅ์ด ์๋ค๋ฉด developer wiki์์ ๊ด๋ จ ์ ๋ณด๋ฅผ ์ฐพ์ ์ ์์ต๋๋ค. Gitter chatroom์์ ๊ทํ๋ฅผ ๋๊ณ ์ง๋ฌธ์ ๋ต๋ณํด ๋๋ฆฌ๊ฒ ์ต๋๋ค.
์ด ํ๋ก์ ํธ๋ MIT ๋ผ์ด์ผ์ค ์กฐ๊ฑด์ ๋ฐ๋ผ ๋ผ์ด์ผ์ค๊ฐ ์ ์ฉ๋ฉ๋๋ค.