๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

๋””์ž์ธ ํŒจํ„ด2

[๋””์ž์ธ ํŒจํ„ด] ํผ์‚ฌ๋“œ ํŒจํ„ด ํผ์‚ฌ๋“œ ํŒจํ„ด (Facade Pattern) ํผ์‚ฌ๋“œ ํŒจํ„ด์€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์— ๋Œ€ํ•œ, ํ”„๋ ˆ์ž„์›Œํฌ์— ๋Œ€ํ•œ ๋˜๋Š” ๋‹ค๋ฅธ ํด๋ž˜์Šค๋“ค์˜ ๋ณต์žกํ•œ ์ง‘ํ•ฉ์— ๋Œ€ํ•œ ๋‹จ์ˆœํ™”๋œ ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ์ œ๊ณตํ•˜๋Š” ๊ตฌ์กฐ์  ๋””์ž์ธ ํŒจํ„ด์ž…๋‹ˆ๋‹ค. Facade๋Š” "๊ฑด๋ฌผ์˜ ์ •๋ฉด"์„ ์˜๋ฏธํ•˜๋Š” ๋‹จ์–ด๋กœ ์–ด๋–ค ์†Œํ”„ํŠธ์›จ์–ด์˜ ๋‹ค๋ฅธ ์ปค๋‹ค๋ž€ ์ฝ”๋“œ ๋ถ€๋ถ„์— ๋Œ€ํ•˜์—ฌ ๊ฐ„๋žตํ™”๋œ ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ์ œ๊ณตํ•ด์ฃผ๋Š” ๋””์ž์ธ ํŒจํ„ด์„ ํ•œ๋‹ค. ํผ์‚ฌ๋“œ ๊ฐ์ฒด๋Š” ๋ณต์žกํ•œ ์†Œํ”„ํŠธ์›จ์–ด ๋ฐ”๊นฅ์ชฝ์˜ ์ฝ”๋“œ๊ฐ€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์˜ ์•ˆ์ชฝ ์ฝ”๋“œ์— ์˜์กดํ•˜๋Š” ์ผ์„ ๊ฐ์†Œ์‹œ์ผœ ์ฃผ๊ณ , ๋ณต์žกํ•œ ์†Œํ”„ํŠธ์›จ์–ด๋ฅผ ์‚ฌ์šฉ ํ•  ์ˆ˜ ์žˆ๊ฒŒ ๊ฐ„๋‹จํ•œ ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ์ œ๊ณตํ•ด์ค€๋‹ค. ์žฅ์  : ๋ณต์žกํ•œ ํ•˜์œ„ ์‹œ์Šคํ…œ์—์„œ ์ฝ”๋“œ๋ฅผ ๋ณ„๋„๋กœ ๋ถ„๋ฆฌํ•˜์—ฌ ํŠน์ • ๊ธฐ๋Šฅ์„ ํŽธ๋ฆฌํ•˜๊ฒŒ ์‚ฌ์šฉ๊ฐ€๋Šฅํ•˜๋‹ค. : ํ•˜๋‚˜์˜ ํผ์‚ฌ๋“œ๋ฅผ ๊ด€๋ จ ์—†๋Š” ๊ธฐ๋Šฅ๋“ค๋กœ ์˜ค์—ผ๋˜๋Š” ๊ฒƒ์„ ๋ฐฉ์ง€ํ•  ์ˆ˜ ์žˆ์–ด ํ•ด๋‹น ์‹œ์Šคํ…œ์— ๋Œ€ํ•œ ์‘์ง‘๋„๊ฐ€ ๋†’๋‹ค.. 2023. 2. 18.
[๋””์ž์ธ ํŒจํ„ด] ์‹ฑ๊ธ€ํ„ด ๋””์ž์ธ ํŒจํ„ด์ด๋ž€? ์†Œํ”„ํŠธ์›จ์–ด๋ฅผ ์„ค๊ณ„ํ•  ๋•Œ ํŠน์ • ๋งฅ๋ฝ์—์„œ ์ž์ฃผ ๋ฐœ์ƒํ•˜๋Š” ๊ณ ์งˆ์ ์ธ ๋ฌธ์ œ๋“ค์ด ๋˜ ๋ฐœ์ƒํ–ˆ์„๋•Œ ์žฌ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ํ›Œ๋ฅญํ•œ ํ•ด๊ฒฐ์ฑ… ๋””์ž์ธ ํŒจํ„ด์˜ ์ข…๋ฅ˜ ์ƒ์„ฑ ํŒจํ„ด : ๊ฐ์ฒด ์ƒ์„ฑ์— ๊ด€๋ จ๋œ ํŒจํ„ด. ๊ฐ์ฒด๋ฅผ ๊ฐญ์Аํ™”ํ•ด ๋ณ€ํ™”์— ์œ ์—ฐ์„ฑ์„ ์ œ๊ณตํ•œ๋‹ค. ๊ตฌ์กฐ ํŒจํ„ด : ํด๋ž˜์Šค๋‚˜ ๊ฐ์ฒด๋ฅผ ์กฐํ•ฉํ•ด ๋” ํฐ ๊ตฌ์กฐ๋ฅผ ๋งŒ๋“œ๋Š” ํŒจํ„ด ํ–‰์œ„ ํŒจํ„ด : ๊ฐ์ฒด๋‚˜ ํด๋ž˜์Šค ์‚ฌ์ด์˜ ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด๋‚˜ ์ฑ…์ž„ ๋ถ„๋ฐฐ์— ๊ด€๋ จ๋œ ํŒจํ„ด. ์ž‘์—…์„ ์—ฌ๋Ÿฌ ๊ฐœ์˜ ๊ฐ์ฒด๋กœ ์–ด๋–ป๊ฒŒ ๋ถ„๋ฐฐํ• ์ง€, ๊ทธ๋ ‡๊ฒŒ ํ•˜๋ฉด์„œ๋„ ๊ฐ์ฒด ์‚ฌ์ด์˜ ๊ฒฐํ•ฉ๋„๋ฅผ ์ตœ์†Œํ™”ํ•˜๋Š” ๊ฒƒ์— ์ค‘์ ์„ ๋‘”๋‹ค. ์ƒ์„ฑ ํŒจํ„ด ์ค‘ ํ•˜๋‚˜์— ์†ํ•˜๋Š”, ์‹ฑ๊ธ€ํ„ด(Singleton) ์‹ฑ๊ธ€ํ„ด์€ ํด๋ž˜์Šค์— ์ธ์Šคํ„ด์Šค๊ฐ€ ํ•˜๋‚˜๋งŒ ์žˆ๋„๋ก ํ•˜๋ฉด์„œ ์ด ์ธ์Šคํ„ด์Šค์— ๋Œ€ํ•œ ์ „์—ญ ์ ‘๊ทผ(์•ก์„ธ์Šค) ์ง€์ ์„ ์ œ๊ณตํ•˜๋Š” ์ƒ์„ฑ ๋””์ž์ธ ํŒจํ„ด์ž…๋‹ˆ๋‹ค. ์ธ์Šคํ„ด์Šค๊ฐ€ ์—ฌ๋Ÿฌ๊ฐœ ์ผ ๋•Œ ๋ฌธ์ œ๊ฐ€ ์ƒ.. 2022. 10. 31.