Design Pattern

Prototype Pattern

January 24 2022

ํ”„๋กœํ† ํƒ€์ž… ๋””์ž์ธ ํŒจํ„ด ์—ฌ๋Ÿฌ ๋ชฌ์Šคํ„ฐ ํƒ€์ž…๊ณผ ๊ฐ ๋ชฌ์Šคํ„ฐ๋ฅผ ์†Œํ™˜ํ•˜๋Š” Spwaner๋ฅผ ๋””์ž์ธํ•ด๋ณด์ž

Observer Pattern

January 21 2022

๊ด€์ฐฐ์ž ํŒจํ„ด์˜ ์‚ฌ๋ก€ MVC ํŒจํ„ด C#์˜ event java์˜ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ

Flyweight Pattern

January 19 2022

์ฒซ๋ฒˆ์งธ ์˜ˆ์ œ ๊ณต์œ ํ•  ์ˆ˜ ์žˆ๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ํ•˜๋‚˜์˜ ๊ฐ์ฒด, ์ฆ‰ ๊ณต์œ  ๊ฐ์ฒด๋กœ ํ†ตํ•ฉํ•ด์„œ ๊ด€๋ฆฌ ๊ฐ ์ธ์Šคํ„ด์Šค๋Š” ๊ณต์œ  ๊ฐ์ฒด๋ฅผ ์ฐธ์กฐํ•˜๊ธฐ๋งŒ ํ•˜๊ณ  ์ƒํƒœ ๊ฐ’์€ ์ธ์Šคํ„ด์Šค์— ์ €์žฅ

Command Pattern

January 15 2022

์ •์˜ ํ”ํžˆ ์‹ค์ฒดํ™” ๋˜๋Š” ์ผ๊ธ‰์ด๋ผ๊ณ  ํ•˜๋ฉด ์–ด๋–ค ๊ฐœ๋…์„ ๋ณ€์ˆ˜์— ์ €์žฅํ•˜๊ฑฐ๋‚˜ ํ•จ์ˆ˜์— ์ „๋‹ฌํ•  ์ˆ˜ ์žˆ๋„๋ก ๊ฐ์ฒด๋กœ ๋ฐ”๊ฟ€ ์ˆ˜ ์žˆ๋‹ค๋Š” ์˜๋ฏธ์ด๋‹ค ์ด ๊ฐœ๋…์€ ๊ฐ’์ผ ์ˆ˜๋„, ํ•จ์ˆ˜์™€ ๊ฐ™์€ ๋กœ์ง์ผ ์ˆ˜๋„ ์žˆ๋‹ค ์ฆ‰ ๋ฉ”์„œ๋“œ ํ˜ธ์ถœ์„ ์‹ค์ฒดํ™”ํ•œ ๊ฒƒ์ด๋ฉฐ, ํ•จ์ˆ˜ ํ˜ธ์ถœ์„ ๊ฐ์ฒด๋กœ ๊ฐ์ŒŒ๋‹ค๋Š” ์˜๋ฏธ์ด๋‹ค ์ฝœ๋ฐฑ, ์ผ๊ธ‰ ํ•จ์ˆ˜, ํ•จ์ˆ˜ ํฌ์ธํ„ฐ, ํด...

Singleton ํŒจํ„ด

November 12 2021

Singleton ์˜ค์ง ํ•œ ๊ฐœ์˜ instance๋งŒ์„ ๊ฐ–๋„๋ก ๋ณด์žฅ ์ „์—ญ ์ƒํƒœ๋ฅผ ๊ด€๋ฆฌํ•˜๋Š” ํด๋ž˜์Šค์—๊ฒŒ ํ•„์š”

Adapter ํŒจํ„ด

October 28 2021

Adaper ํŒจํ„ด ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ์ œ๊ณตํ•จ์œผ๋กœ์จ ํ˜ธํ™˜๋˜์ง€ ์•Š๋Š” ์›๋ณธ ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ์ด์šฉํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•จ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์˜ ์—…๋ฐ์ดํŠธ ๋ฐ ๊ต์ฒด์— ์œ ์—ฐํ•˜๊ฒŒ ๋Œ€์ฒ˜ํ•  ์ˆ˜ ์žˆ์Œ

ํŒฉํ† ๋ฆฌ ํŒจํ„ด(Factory Pattern)

January 13 2020

ํƒฌํ”Œ๋ฆฟ ๋ฉ”์†Œ๋“œ ํŒจํ„ด(template method pattern) ์†Œํ”„ํŠธ์›จ์–ด ๊ณตํ•™์—์„œ ๋™์ž‘ ์ƒ์˜ ์•Œ๊ณ ๋ฆฌ์ฆ˜์˜ ํ”„๋กœ๊ทธ๋žจ ๋ผˆ๋Œ€๋ฅผ ์ •์˜ํ•˜๋Š” ํ–‰์œ„ ๋””์ž์ธ ํŒจํ„ด ์•Œ๊ณ ๋ฆฌ์ฆ˜์˜ ๊ตฌ์กฐ๋ฅผ ๋ณ€๊ฒฝํ•˜์ง€ ์•Š๊ณ  ์•Œ๊ณ ๋ฆฌ์ฆ˜์˜ ํŠน์ • ๋‹จ๊ณ„๋“ค์„ ๋‹ค์‹œ ์ •์˜ํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์ค€๋‹ค base class๊ฐ€ ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๊ตฌ์กฐ์˜ ์ฃผ์š” ๊ณจ์กฐ๋ฅผ ํ™•๋ฆฝ subclass๊ฐ€ ๋‚˜๋จธ์ง€...

๋นŒ๋” ํŒจํ„ด(Builder Pattern)

January 13 2020

๋นŒ๋” ํŒจํ„ด(Builder Pattern) ๋นŒ๋” ํŒจํ„ด์€ ๊ฐ์ฒด ์ƒ์„ฑ์„ ๋ณด๋‹ค ์œ ์—ฐํ•˜๊ฒŒ ํ•˜๊ธฐ ์œ„ํ•œ ๋ฐฉ๋ฒ• ์ค‘ ํ•˜๋‚˜ ๋ณต์žกํ•œ ๊ธฐ์กด ์ƒ์„ฑ์ž๋ฅผ ๋ณ„๋„๋กœ ์‹คํ–‰ํ•œ ๋’ค ์กฐํ•ฉ Builder ํด๋ž˜์Šค๋ฅผ ์ด์šฉํ•ด ๊ฐ ํŒŒ์ธ ๋ฅผ ์ƒ์„ฑ ํ›„ ์กฐํ•ฉ ํด๋ž˜์Šค๋Š” Builder์— ๊ฐ์ฒด์— object ์ƒ์„ฑ์„ ๋งก๊ธฐ๊ณ , ์ง์ ‘ ์ˆ˜ํ–‰ํ•˜์ง€ ์•Š์Œ ํ•œ๋ฒˆ์— ๋ชจ...