
์๋ก ์ผ์ ์ ํ ๋ธ๋ก๊ทธ ๊ธ์ ์ฐธ๊ณ ํ์ฌ ํฉํฐ๋ฆฌ ๋ฉ์๋ ํจํด ๊ธ์ ์ฌ๋ ธ์๋๋ฐ.. ์ฌ์ค ๋น์์ ๋ด๊ฐ ์ดํดํ๊ธฐ์๋ ๊ธ์ด ์ด๋ ค์์ ํด๋น ํจํด์ ๋ํ ํ๋ฆ์ ์ดํดํ๊ธฐ ์ด๋ ค์ ๋ค. https://developyanggaeng.tistory.com/129 3. [์๋ฐ/Java] ํฉํ ๋ฆฌ ๋ฉ์๋ ํจํด(Factory Method Pattern) : '๊ฐ์ฒด'์ '๊ฐ์ฒด ์์ฑ ํด๋์ค' ๋ถ๋ฆฌํ๋ ๋์ ํด๋น ๋ด์ฉ์ ์๋ ๋ธ๋ก๊ทธ ํฌ์คํ ์ ์ฐธ์กฐํ์์ต๋๋ค. https://memostack.tistory.com/61 Design Pattern - Factory Method Pattern (ํฉํ ๋ฆฌ ๋ฉ์๋ ํจํด) Factory Method Pattern ํฉํ ๋ฆฌ ๋ฉ์๋ ํจํด์ '๊ฐ์ฒด'์ '๊ฐ์ฒด ์์ฑ ํด developyanggaeng.tistory..
๋น๋ ํจํด(Builder pattern) ํด๋ผ์ด์ธํธ๋ ํ์ํ ๊ฐ์ฒด๋ฅผ ์ง์ ๋ง๋๋ ๋์ , ํ์ ๋งค๊ฐ๋ณ์๋ง์ผ๋ก ์์ฑ์(ํน์ ์ ์ ํฉํ ๋ฆฌ)๋ฅผ ํธ์ถํด ๋น๋ ๊ฐ์ฒด๋ฅผ ์ป๋๋ค. ๋น๋ ๊ฐ์ฒด๊ฐ ์ ๊ณตํ๋ ์ผ์ข ์ setter ๋ฉ์๋๋ค๋ก ์ํ๋ ๋งค๊ฐ๋ณ์๋ฅผ ์ค์ ํ๋ค. ๋งค๊ฐ๋ณ์๊ฐ ์๋ build ๋ฉ์๋๋ฅผ ํธ์ถํด ์ฐ๋ฆฌ์๊ฒ ํ์ํ ๊ฐ์ฒด๋ฅผ ์ป๋๋ค. ๐ก ๋น๋๋ ์์ฑํ ํด๋์ค ์์ ์ ์ ๋ฉค๋ฒ ํด๋์ค๋ก ๋ง๋ค์ด๋๋ค. ๐ก ์ ์ธต์ ์์ฑ์ ํจํด๋ณด๋ค ์ฝ๋๊ฐ ์ฅํฉํ๊ธฐ ๋๋ฌธ์ ๋งค๊ฐ๋ณ์๊ฐ 4๊ฐ ์ด์์ ๋์ด์ผ ์ธ๋งํจ. package ๋น๋ํจํด; public class NutritionFacts { // ํ์ ์ ๋ ฅ private final int servingSize; // 1ํ ์ ๊ณต๋ private final int servings; // ์ด nํ ์ ๊ณต๋ ..
ํด๋น ๋ด์ฉ์ ์๋ ๋ธ๋ก๊ทธ ํฌ์คํ ์ ์ฐธ์กฐํ์์ต๋๋ค. https://memostack.tistory.com/61 Design Pattern - Factory Method Pattern (ํฉํ ๋ฆฌ ๋ฉ์๋ ํจํด) Factory Method Pattern ํฉํ ๋ฆฌ ๋ฉ์๋ ํจํด์ '๊ฐ์ฒด'์ '๊ฐ์ฒด ์์ฑ ํด๋์ค'๋ฅผ ๋ฐ๋ก ๋ถ๋ฆฌํ๋ ๋์์ธ ํจํด์ด๋ค. ๊ฐ์ฒด ์์ฑ ํด๋์ค๊ฐ ๋ฐ๋ก ๋ถ๋ฆฌ๋์ด ์์ด์, ๊ฐ์ฒด ์์ฑ ๋ณํ์ ์ ์ฐํ๊ฒ ๋๋นํ ์ ์๋ค. memostack.tistory.com ํฉํ ๋ฆฌ ๋ฉ์๋ ํจํด? '๊ฐ์ฒด'์ '๊ฐ์ฒด ์์ฑ ํด๋์ค'๋ฅผ ๋ฐ๋ก ๋ถ๋ฆฌํ๋ ๋์์ธ ํจํด ๊ฐ์ฒด๋ฅผ ์์ฑ์๋ฅผ ์ฌ์ฉํ์ฌ new๋ก ํธ์ถํ์ง ์๊ณ , ๊ฐ์ ์ ์ผ๋ก ๊ฐ์ฒด ์์ฑ ํ ๋ฐํํด์ฃผ๋ ๋ฐฉ์์ด๋ค. ์์ ์๊ตฌ์ฌํญ - ๊ฒ์ ์์ดํ ์ ๋ง๋๋ ์์ดํ ์์ฑ์๋ฅผ ๋ง๋ ๋ค. ์์ดํ ์ ..
ํด๋น ๋ด์ฉ์ ์๋ ๋ธ๋ก๊ทธ ํฌ์คํ ์ ์ฐธ์กฐํ์์ต๋๋ค. https://memostack.tistory.com/60 Design Pattern - Template Method Pattern (ํ ํ๋ฆฟ ๋ฉ์๋ ํจํด) Template Method Pattern ํ ํ๋ฆฟ ๋ฉ์๋ ํจํด์ ์ผ์ ํ ๊ตฌ์กฐ์ ํ๋ก์ธ์ค๋ฅผ ๊ฐ์ง ๊ฒฝ์ฐ, ์ฌ์ฉํ๊ธฐ ์ข์ ๋์์ธ ํจํด ์ฝ๋์ ์ค๋ณต์ ์ค์ผ ์ ์๊ณ ์ ์ง๋ณด์ํ๊ธฐ์๋ ํธ๋ฆฌํจ. ์ผ์ ํ ๊ตฌ์กฐ์ ํ๋ก์ธ์ค? ํน์ memostack.tistory.com ํ ํ๋ฆฟ ๋ฉ์๋ ํจํด? ์ผ์ ํ ๊ตฌ์กฐ์ ํ๋ก์ธ์ค๋ฅผ ๊ฐ์ง ๊ฒฝ์ฐ, ์ฌ์ฉํ๊ธฐ ์ข์ ๋์์ธ ํจํด ์ฝ๋์ ์ค๋ณต์ ์ค์ผ ์ ์๊ณ , ์ ์ง๋ณด์ํ๊ธฐ ํธ๋ฆฌํจ. ์ผ์ ํ ๊ตฌ์กฐ? ํน์ ์๊ณ ๋ฆฌ์ฆ์ด ํญ์ A -> B -> C ์์ผ๋ก ์ํํ๋ค๋ฉด, ๊ฐ ์์ ์ ๋ชจ์ ํ๋์ ๋ฉ์๋๋ก ๊ตฌํ ์..
ํด๋น ๋ด์ฉ์ ์๋ ๋ธ๋ก๊ทธ ํฌ์คํ ์ ์ฐธ์กฐํ์์ต๋๋ค. https://memostack.tistory.com/58 Design Pattern - Strategy Pattern (์คํธ๋ํฐ์ง ํจํด) ์คํธ๋ํฐ์ง ํจํด ์ ๋ต์ ์ฝ๊ฒ ๋ฐ๊ฟ ์ ์๋๋ก ํด์ฃผ๋ ๋์์ธ ํจํด ํ์(Behavior)๋ค์ ์บก์ํํ์ฌ ๋์ ์ผ๋ก ์์ ๋กญ๊ฒ ๋ฐ๊ฟ ์ ์๋ ํจํด ์์ ์๊ตฌ์ฌํญ ๊ฒ์ ์ผ๋ฆญํฐ์ ๋ฌด๊ธฐ๋ฅผ ์์ฑํ์ฌ, ์ผ๋ฆญํฐ๊ฐ memostack.tistory.com ์คํธ๋ํฐ์ง ํจํด? ์ ๋ต์ ์ฝ๊ฒ ๋ฐ๊ฟ ์ ์๋๋ก ํด์ฃผ๋ ๋์์ธ ํจํด ๋ฉ์๋๋ฅผ ์บก์ํํ์ฌ ๋์ ๋ฐ์ธ๋ฉ์ด ๊ฐ๋ฅํ๋๋ก ํด์ฃผ๋ ํจํด ์์ ์๊ตฌ์ฌํญ - ๊ฒ์ ์บ๋ฆญํฐ์ ๋ฌด๊ธฐ๋ฅผ ์์ฑํ์ฌ, ์บ๋ฆญํฐ๊ฐ ๋ฌด๊ธฐ๋ฅผ ์ฅ์ฐฉํ ์ ์์. - ์บ๋ฆญํฐ๊ฐ ๋ค๊ณ ์๋ ๋ฌด๊ธฐ๋ ๋ณ๊ฒฝ์ด ์์ ๋ก์์ผ ํจ. ๋ฌด๊ธฐ ์ข ๋ฅ ์ด (Gun) ์นผ ..