๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
๐Ÿ–ฅDEV/์ฑ… ์ •๋ฆฌ

2. ๋‹จ์œ„ํ…Œ์ŠคํŠธ

by bdd 2022. 3. 27.

๋‹จ์œ„ ํ…Œ์ŠคํŠธ๋ฅผ ์ฝ๊ณ  ํ•™์Šตํ•œ ๋‚ด์šฉ์„ ์ •๋ฆฌํ•œ ๊ธ€์ž…๋‹ˆ๋‹ค. ํ•™์Šต ๊ณผ์ •์—์„œ ์ž‘์„ฑ๋˜์—ˆ๊ธฐ ๋•Œ๋ฌธ์— ์ž˜๋ชป๋œ ๋‚ด์šฉ์ด ์žˆ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. 

 

 

 

 

1. ๋‹จ์œ„ ํ…Œ์ŠคํŠธ


๋‹จ์ผ ๋™์ž‘ ๋‹จ์œ„๋ฅผ ๊ฒ€์ฆํ•˜๊ณ  ๋น ๋ฅด๊ฒŒ ์ˆ˜ํ–‰๋˜๋ฉฐ, ๋‹ค๋ฅธ ํ…Œ์ŠคํŠธ์™€ ๋ณ„๋„๋กœ ์ฒ˜๋ฆฌํ•˜๋Š” ํ…Œ์ŠคํŠธ๋ฅผ ๋งํ•ฉ๋‹ˆ๋‹ค. ํ•˜๋‚˜์˜ ํด๋ž˜์Šค๊ฐ€ ๋‹ค๋ฅธ ํด๋ž˜์Šค ๋˜๋Š” ์—ฌ๋Ÿฌ ํด๋ž˜์Šค์— ์˜์กดํ•˜๋ฉด ์ด ๋ชจ๋“  ์˜์กด์„ฑ์„ ํ…Œ์ŠคํŠธ ๋Œ€์—ญ(test double)๋กœ ๋Œ€์ฒดํ•˜๋ฉฐ, ๋™์ž‘์„ ์™ธ๋ถ€ ์˜ํ–ฅ๊ณผ ๋ถ„๋ฆฌํ•ด์„œ ํ…Œ์ŠคํŠธ ๋Œ€์ƒ ํด๋ž˜์Šค์—๋งŒ ์ง‘์ค‘ํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ฉ๋‹ˆ๋‹ค. ๋‹จ, ๋‹จ์œ„๊ฐ€ ๋ฐ˜๋“œ์‹œ ํด๋ž˜์Šค๋กœ ๊ตญํ•œ๋  ํ•„์š”๋Š” ์—†๋Š”๋ฐ, ๊ณต์œ  ์˜์กด์„ฑ์ด ์—†๋Š” ํ•œ ์—ฌ๋Ÿฌ ํด๋ž˜์Šค๋ฅผ ๋ฌถ์–ด์„œ ๋‹จ์œ„ํ…Œ์ŠคํŠธ๋ฅผ ํ•  ์ˆ˜๋„ ์žˆ๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค. **์ž‘์€ ์ฝ”๋“œ ์กฐ๊ฐ์ด๋ž€ ํ•œ ํ–‰์œ„(๋ฉ”์„œ๋“œ)์— ๋Œ€ํ•œ ๊ฒ€์ฆ์ผ ์ˆ˜๋„ ์žˆ๊ณ , ํด๋ž˜์Šค์— ๋Œ€ํ•œ ํ…Œ์ŠคํŠธ์ผ ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.

 

    - ์ž‘์€ ์ฝ”๋“œ ์กฐ๊ฐ(๋‹จ์œ„) ๊ฒ€์ฆ

    - ๋น ๋ฅธ ์ˆ˜ํ–‰

    - ๊ฒฉ๋ฆฌ๋œ ๋ฐฉ์‹์œผ๋กœ ์ฒ˜๋ฆฌํ•˜๋Š” ์ž๋™ํ™”๋œ ํ…Œ์ŠคํŠธ

 

 

 

 

 

์ด๋ฅผ ํ†ตํ•ด ํฌ๊ฒŒ ๋‘ ๊ฐ€์ง€ ์ด์ ์„ ์–ป์„ ์ˆ˜ ์žˆ๋Š”๋ฐ, ์ฒซ ๋ฒˆ์งธ๋กœ ํ…Œ์ŠคํŠธ๊ฐ€ ์‹คํŒจํ•˜๋ฉด ์ฝ”๋“œ๋ฒ ์ด์Šค์˜ ์–ด๋Š ๋ถ€๋ถ„์ด ๊ณ ์žฅ ๋‚ฌ๋Š”์ง€ ํ™•์‹คํžˆ ์•Œ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ•˜๋‚˜์˜ ํ…Œ์ŠคํŠธ ๋Œ€์ƒ์„ ํ…Œ์ŠคํŠธ ๋Œ€์—ญ์œผ๋กœ ๊ตฌ๋ถ„ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๋ช…ํ™•ํ•œ ์‹คํŒจ ์›์ธ์„ ์•Œ ์ˆ˜ ๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ด๋ฅผํ†ตํ•ด ๋‹จ์œ„ ํ…Œ์ŠคํŠธ์™€ ์‹ค์ œ ์ฝ”๋“œ๋ฅผ 1:1๋กœ ๋Œ€์‘์‹œ์ผœ ํ…Œ์ŠคํŠธ๋ฅผ ๋”์šฑ ์„ธ๋ฐ€ํ•˜๊ฒŒ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. 

 

 

 

 

 

 

๋‘ ๋ฒˆ์งธ ์žฅ์ ์€ ๊ฐ์ฒด ๊ทธ๋ž˜ํ”„๋ฅผ ๋ถ„ํ• ํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋ชจ๋“  ํด๋ž˜์Šค๊ฐ€ ๊ฐ๊ฐ ์ง์ ‘์  ์˜์กด์„ฑ์„ ๊ฐ€์ง€๊ณ  ์žˆ์œผ๋ฉด, ๋˜ํ•œ ๊ทธ ์˜์กด์„ฑ์ด ๋‹ค๋ฅธ ์˜์กด์„ฑ์„ ๊ฐ€์ง€๊ณ  ์žˆ์œผ๋ฉด ๊ทธ๋ž˜ํ”„๊ฐ€ ๋ณต์žกํ•ด์ง‘๋‹ˆ๋‹ค. ์ด๋Š” ์ˆœํ™˜ ์˜์กด์„ฑ์ผ ์ˆ˜๋„ ์žˆ์œผ๋ฉฐ, ๊ฒฐ๊ตญ์‹œ์ž‘๋œ ์œ„์น˜๋กœ ๋Œ์•„์˜ฌ ์ˆ˜๋„ ์žˆ์–ด ํ…Œ์ŠคํŠธ๋ฅผ ์ •ํ™•ํ•˜๊ฒŒ ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด๋•Œ ํ…Œ์ŠคํŠธ ๋Œ€์—ญ์„ ์‚ฌ์šฉํ•˜๋ฉด ํด๋ž˜์Šค์˜ ์ง์ ‘์  ์˜์กด์„ฑ์„ ๋Œ€์ฒดํ•  ์ˆ˜ ์žˆ๊ณ  ์‹ฌ์ง€์–ด ์˜์กด์„ฑ์˜ ์˜์กด์„ฑ์„ ๋‹ค๋ฃฐ ํ•„์š”๋„ ์—†์Šต๋‹ˆ๋‹ค. 

 

 

 

 

 

 

 

์ฆ‰, ๊ฐ์ฒด๋ฅผ ํšจ๊ณผ์ ์œผ๋กœ ๋ถ„ํ•ดํ•ด์„œ ๋‹จ์œ„ ํ…Œ์ŠคํŠธ ์ค€๋น„ ๋น„์šฉ์„ ๋‚ฎ์ถœ ์ˆ˜ ์žˆ๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋Œ€์—ญ์„ ์“ฐ๋ฉด ํด๋ž˜์Šค์˜ ์ง์ ‘์ ์ธ ์˜์กด์„ฑ์„ ๋Œ€์ฒดํ•ด ๊ทธ๋ž˜ํ”„๋ฅผ ๋‚˜๋ˆŒ ์ˆ˜ ์žˆ์œผ๋ฉฐ, ์ด๋Š” ๋‹จ์œ„ํ…Œ์ŠคํŠธ์—์„œ ์ค€๋น„ํ•ด์•ผ ํ•  ์ž‘์—…๋Ÿ‰์„ ํฌ๊ฒŒ ์ค„์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ฌผ๋ก  ์ƒํ˜ธ ์—ฐ๊ฒฐ๋œ ํด๋ž˜์Šค์˜ ํฌ๊ณ  ๋ณต์žกํ•œ ๊ทธ๋ž˜ํ”„๋ฅผ ํ…Œ์ŠคํŠธํ•  ๋ฐฉ๋ฒ•์„ ์ฐพ๋Š” ๋Œ€์‹  ๋จผ์ € ์ด๋Ÿฌํ•œ ํด๋ž˜์Šค ๊ทธ๋ž˜ํ”„๋ฅผ ๊ฐ–์ง€ ์•Š๋Š”๋ฐ ์ง‘์ค‘ํ•ด์•ผ ํ•˜๋Š”๋ฐ, ๋Œ€๊ฐœ ํด๋ž˜์Šค ๊ทธ๋ž˜ํ”„๊ฐ€ ์ปค์ง„ ๊ฒƒ์€ ๊ณง ์„ค๊ณ„ ๋ฌธ์ œ์ด๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค. ํ…Œ์ŠคํŠธ ๋Œ€์—ญ์„ ๋‚˜๋ˆ„๊ธฐ ์œ„ํ•ด์„œ๋Š” SUT๋ฅผ ์‚ฌ์šฉํ•ด์•ผ ํ•˜๋ฉฐ, SUT์—๋Š” ์•„๋ž˜์™€ ๊ฐ™์€ ์—ฐ๊ด€ ๊ฐœ๋…/์šฉ์–ด๋“ค์ด ์กด์žฌํ•ฉ๋‹ˆ๋‹ค. * MUT์™€ SUT๋Š” ๋™์˜์–ด๋กœ ์‚ฌ์šฉ๋˜์ง€๋งŒ ์ผ๋ฐ˜์ ์œผ๋กœ MUT๋Š” ๋ฉ”์„œ๋“œ๋ฅผ ๊ฐ€๋ฆฌํ‚ค๋Š” ๋ฐ ๋ฐ˜ํ•ด SUT๋Š” ํด๋ž˜์Šค ์ „์ฒด๋ฅผ ๊ฐ€๋ฆฌํ‚ต๋‹ˆ๋‹ค.

 

SUT      ํ…Œ์ŠคํŠธ ๋Œ€์ƒ ์‹œ์Šคํ…œ(SUT, System Under Test)
MUT      ํ…Œ์ŠคํŠธ์—์„œ ํ˜ธ์ถœํ•œ SUT์˜ ๋ฉ”์„œ๋“œ. 
ํ…Œ์ŠคํŠธ ๋Œ€์—ญ      ์‹คํ–‰๊ณผ ๊ด€๋ จ ์—†์ด ๋ชจ๋“  ์ข…๋ฅ˜์˜ ๊ฐ€์งœ ์˜์กด์„ฑ์„ ์„ค๋ช…ํ•˜๋Š” ํฌ๊ด„์  ์šฉ์–ด
๋ชฉ      ํ…Œ์ŠคํŠธ ๋Œ€์ƒ ์‹œ์Šคํ…œ๊ณผ ํ˜‘๋ ฅ์ž ๊ฐ„์˜ ์ƒํ˜ธ ์ž‘์šฉ์„ ๊ฒ€์‚ฌํ•  ์ˆ˜ ์žˆ๋Š” ํŠน๋ณ„ํ•œ ํ…Œ์ŠคํŠธ ๋Œ€์—ญ
     **ํ…Œ์ŠคํŠธ ๋Œ€์—ญ์˜ ํ•œ ์ข…๋ฅ˜

 

 

 

 

 

 

2. ์˜์กด์„ฑ์— ๊ด€ํ•œ ๊ฐœ๋…/์šฉ์–ด


๊ณต์œ  ์˜์กด์„ฑ์€ ํ…Œ์ŠคํŠธ ๋Œ€์ƒ ํด๋ž˜์Šค ๊ฐ„์ด ์•„๋‹ˆ๋ผ ํ…Œ์ŠคํŠธ ๊ฐ„์—๋„ ๊ณต์œ  ๋ฉ๋‹ˆ๋‹ค. ํŠนํžˆ ์‹ฑ๊ธ€ํ†ค์—์„œ ๋งŽ์ด ๋‚˜ํƒ€๋‚˜๋Š”๋ฐ, ๊ทธ๋Ÿฌ๋‚˜ ์„ค์‚ฌ ์‹ฑ๊ธ€ํ†ค์œผ๋กœ ๋งŒ๋“ค๋”๋ผ๋„  ์ด๋ฅผ ๋งค๋ฒˆ ์ƒˆ๋กœ ์ƒ์„ฑํ•ด์„œ ๋น„๊ณต๊ฐœ ์˜์กด์„ฑ์„ ์œ ์ง€ํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด ์„ค์ • ํด๋ž˜์Šค๋Š” ์ผ๋ฐ˜์ ์œผ๋กœ ํ•œ ๊ฐœ ๋ฟ์ด์ง€๋งŒ ๋ชจ๋“  ์˜์กด์„ฑ์ด SUT์— ์ฃผ์ž…๋˜๋ฉด ๊ฐ ํ…Œ์ŠคํŠธ์—์„œ ์ƒˆ ์ธ์Šคํ„ด์Šค๋ฅผ ๋งŒ๋“ค ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ ํ…Œ์ŠคํŠธ ์ „์ฒด์—์„œ ๋‹จ์ผ ์ธ์Šคํ„ด์Šค๋ฅผ ์œ ์ง€ํ•  ํ•„์š”๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. *๋ฐ˜๋ฉด ํŒŒ์ผ ์‹œ์Šคํ…œ์ด๋‚˜ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋Š” ๋งŒ๋“ค ์ˆ˜ ์—†๊ธฐ ๋•Œ๋ฌธ์— ํ…Œ์ŠคํŠธ ๊ฐ„ ๊ณต์œ ๋˜๊ฑฐ๋‚˜ ํ…Œ์ŠคํŠธ ๋Œ€์—ญ์œผ๋กœ ๋Œ€์ฒด ๋ผ์•ผ ํ•ฉ๋‹ˆ๋‹ค. 

 

      ๊ณต์œ  ์˜์กด์„ฑ     ํ…Œ์ŠคํŠธ ๊ฐ„์— ๊ณต์œ ๋˜๊ณ  ๊ฒฐ๊ณผ์— ์˜ํ–ฅ์„ ๋ฏธ์น  ์ˆ˜ ์žˆ๋Š” ์ˆ˜๋‹จ์„ ์ œ๊ณตํ•˜๋Š” ์˜์กด์„ฑ
    ex) ์ •์  ๊ฐ€๋ณ€ ํ•„๋“œ, ๋ฐ์ดํ„ฐ ๋ฒ ์ด์Šค
      ๋น„๊ณต๊ฐœ ์˜์กด์„ฑ      ๊ณต์œ ํ•˜์ง€ ์•Š๋Š” ์˜์กด์„ฑ
      ํ”„๋กœ์„ธ์Šค ์™ธ๋ถ€ ์˜์กด์„ฑ      ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์‹คํ–‰ ํ”„๋กœ์„ธ์Šค ์™ธ๋ถ€์—์„œ ์‹คํ–‰๋˜๋Š” ์˜์กด์„ฑ. ์ด๋Š” ๋Œ€๋ถ€๋ถ„ ๊ณต์œ  
     ์˜์กด์„ฑ์ด์ง€๋งŒ ๋ชจ๋‘ ๊ทธ๋ ‡์ง€๋Š” ์•Š๋‹ค. 

* ๋‹จ์œ„ ํ…Œ์ŠคํŠธ๋ฅผ ๊ฒฉ๋ฆฌํ•˜๋Š” ๊ฒƒ์€ ํ…Œ์ŠคํŠธ ๋Œ€์ƒ ํด๋ž˜์Šค์—์„œ ๊ณต์œ  ์˜์กด์„ฑ๋งŒ ๊ฒฉ๋ฆฌํ•˜๋Š” ๊ฒƒ์„ ์˜๋ฏธํ•œ๋‹ค. ๋น„๊ณต๊ฐœ ์˜์กด์„ฑ์€ ๊ทธ๋Œ€๋กœ ๋‘”๋‹ค.

 

 

 

 

 

 

ํ”„๋กœ์„ธ์Šค ์™ธ๋ถ€ ์˜์กด์„ฑ์ด๋ž€ ์•„์ง ๋ฉ”๋ชจ๋ฆฌ์— ์—†๋Š” ๋ฐ์ดํ„ฐ, ์ฆ‰ ํ”„๋ก์‹œ(proxy)์— ๋Œ€ํ•œ ์˜์กด์„ฑ์„ ์ด์•ผ๊ธฐํ•˜๋Š”๋ฐ, ์ด๋Š” ๋Œ€๋ถ€๋ถ„ ๊ณต์œ  ์˜์กด์„ฑ์ด์ง€๋งŒ ๋ชจ๋‘ ๊ทธ๋ ‡์ง€๋Š” ์•Š์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋Š” ํ”„๋กœ์„ธ์Šค ์™ธ๋ถ€์ด๋ฉด์„œ ๊ณต์œ  ์˜์กด์„ฑ์ž…๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๊ฐ ํ…Œ์ŠคํŠธ ์‹คํ–‰ ์ „ ๋„์ปค ์ปจํ…Œ์ด๋„ˆ๋กœ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ์‹œ์ž‘ํ•˜๋ฉด ํ…Œ์ŠคํŠธ๊ฐ€ ๋” ์ด์ƒ ๋™์ผํ•œ ์ธ์Šคํ„ด์Šค๋กœ ์ž‘๋™ํ•˜์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์— ํ”„๋กœ์„ธ์Šค ์™ธ๋ถ€์ด๋ฉด์„œ ๊ณต์œ ํ•˜์ง€ ์•Š๋Š” ์˜์กด์„ฑ์ด ๋ฉ๋‹ˆ๋‹ค. ์ด๋Š” ํ…Œ์ŠคํŠธ๊ฐ€ ๋ฐ์ดํ„ฐ๋ฅผ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์—†์œผ๋ฏ€๋กœ, ์ฆ‰ ๋ชจ๋“  ํ…Œ์ŠคํŠธ๋งˆ๋‹ค ๋ณ„๊ฐœ๋กœ ๋™์ž‘ํ•˜๊ฒŒ ๋˜๋ฏ€๋กœ ๊ฐ ํ…Œ์ŠคํŠธ์˜ ๊ฒฐ๊ณผ๊ฐ€ ๋‹ค๋ฅธ ํ…Œ์ŠคํŠธ์— ์˜ํ–ฅ์„ ๋ฏธ์น  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. 

 

 

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

 

 

ํœ˜๋ฐœ์„ฑ ์˜์กด์„ฑ์€ ๋Ÿฐํƒ€์ž„ ํ™˜๊ฒฝ์˜ ์„ค์ • ๋ฐ ๊ตฌ์„ฑ์„ ์š”๊ตฌํ•˜๊ฑฐ๋‚˜ ๋น„๊ฒฐ์ •์  ๋™์ž‘์„ ํฌํ•จํ•ฉ๋‹ˆ๋‹ค. ์ฆ‰, ์ถ”๊ฐ€ ์„ค์ •์ด ํ•„์š”ํ•˜๊ฑฐ๋‚˜ ๊ฐ ํ˜ธ์ถœ์— ๋Œ€ํ•ด ๋‹ค๋ฅธ ๊ฒฐ๊ณผ๋ฅผ ์ œ๊ณตํ•˜๋Š” ๊ฒƒ์„ ํฌํ•จํ•ฉ๋‹ˆ๋‹ค. ๊ณต์œ  ์˜์กด์„ฑ๊ณผ ํœ˜๋ฐœ์„ฑ ์˜์กด์„ฑ์€ ๊ฒน์น˜๋Š” ๋ถ€๋ถ„์ด ์กด์žฌํ•˜๊ธฐ๋„ ํ•˜๋Š”๋ฐ, ์˜ˆ๋ฅผ๋“ค์–ด ์•„๋ž˜ ๊ทธ๋ฆผ์—์„œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋Š” ๊ณต์œ  ์˜์กด์„ฑ์ด์ž ํœ˜๋ฐœ์„ฑ ์˜์กด์„ฑ์ž…๋‹ˆ๋‹ค. ๋ฐ˜๋ฉด ํŒŒ์ผ ์‹œ์Šคํ…œ์€ ๋‹จ์œ„ ํ…Œ์ŠคํŠธ๊ฐ€ ์‹คํ–‰ ์ปจํ…์ŠคํŠธ๋ฅผ ๋ฐฉํ•ดํ•  ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ๊ณต์œ  ์˜์กด์„ฑ์ด์ง€๋งŒ ํœ˜๋ฐœ์„ฑ ์˜์กด์„ฑ์€ ์•„๋‹™๋‹ˆ๋‹ค. ์ฆ‰, ๋‹จ์œ„ํ…Œ์ŠคํŠธ๊ฐ€ ํŒŒ์ผ ์‹œ์Šคํ…œ์˜ ๋‚ด์šฉ์„ ๋ฐ”๊พธ์–ด ๋‹ค์Œ ํ…Œ์ŠคํŠธ์˜ ๊ฒฐ๊ณผ๋ฅผ ๋ฐฉํ•ดํ•  ์ˆ˜๋„ ์žˆ๋Š” ๊ฒƒ์„ ๋งํ•ฉ๋‹ˆ๋‹ค. **๋‚œ์ˆ˜ ์ƒ์„ฑ๊ธฐ๋Š” ํœ˜๋ฐœ์„ฑ ์˜์กด์„ฑ์ด์ง€๋งŒ ๋ณ„๋„์˜ ์ธ์Šคํ„ด์Šค๋ฅผ ์ œ๊ณตํ•  ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ๊ณต์œ  ์˜์กด์„ฑ์€ ์•„๋‹™๋‹ˆ๋‹ค.

 

 

 

 

 

ํœ˜๋ฐœ์„ฑ ์˜์กด์„ฑ์ด๋ž€?

ํœ˜๋ฐœ์„ฑ ์˜์กด์„ฑ์ด๋ž€ ๊ฐœ๋ฐœ์ž ๋จธ์‹ ์— ๊ธฐ๋ณธ ์„ค์น˜๋œ ํ™˜๊ฒฝ ์™ธ์— ๋Ÿฐํƒ€์ž„ ํ™˜๊ฒฝ์˜ ์„ค์ • ๋ฐ ๊ตฌ์„ฑ์„ ์š”๊ตฌํ•˜๊ฑฐ๋‚˜ ๋น„๊ฒฐ์ •์  ๋™์ž‘(nondeterministic behavior) ์ค‘ ํ•˜๋‚˜๊ฐ€ ํฌํ•จ๋œ ๊ฒƒ์„ ๋งํ•ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ๋“ค์–ด ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์™€ API ์„œ๋น„์Šค๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ๋น„๊ฒฐ์ •์  ๋™์ž‘(nondeterministic behavior)์ด๋ž€ ๋‚œ์ˆ˜ ์ƒ์„ฑ๊ธฐ์™€ ๊ฐ™์ด ๊ฐ ํ˜ธ์ถœ์— ๋Œ€ํ•ด ๋‹ค๋ฅธ ๊ฒฐ๊ณผ๋ฅผ ์ œ๊ณตํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๋น„๊ฒฐ์ •์ ์ด๋ผ๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ๋‹จ, ์ด ๋˜ํ•œ ๋ชฉ์œผ๋กœ ๋Œ€์ฒด๋ฅผ ํ•ด์„œ ๊ฒฐ์ •์  ๋™์ž‘์œผ๋กœ ๋งŒ๋“ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. 

 

 

 

 

 

 

3. ๋Ÿฐ๋˜ ํŒŒ / ๊ณ ์ „ ํŒŒ


๋Ÿฐ๋˜ ์Šคํƒ€์ผ์€ ํ…Œ์ŠคํŠธ ๋Œ€์—ญ(๋ชฉ)์œผ๋กœ ํ…Œ์ŠคํŠธ ๋Œ€์ƒ ์ฝ”๋“œ ์กฐ๊ฐ์„ ๋ถ„๋ฆฌํ•ด์„œ ๊ฒฉ๋ฆฌ ์š”๊ตฌ ์‚ฌํ•ญ์— ๋‹ค๊ฐ€๊ฐ‘๋‹ˆ๋‹ค. ์ด๋•Œ ๊ฐ๊ฐ์˜ ๋ชจ๋“  ํด๋ž˜์Šค๋ฅผ ๊ฒฉ๋ฆฌํ•ด์•ผ ํ•œ๋‹ค๋ฉด ํ…Œ์ŠคํŠธ ๋Œ€์ƒ ์ฝ”๋“œ ์กฐ๊ฐ์€ ๋‹จ์ผ ํด๋ž˜์Šค๊ฑฐ๋‚˜ ํ•ด๋‹น ํด๋ž˜์Šค ๋‚ด์˜ ๋ฉ”์„œ๋“œ์ž…๋‹ˆ๋‹ค. ๋ฐ˜๋ฉด ๊ณ ์ „ํŒŒ๋Š” ๋‹จ์œ„ ํ…Œ์ŠคํŠธ๋Š” ์„œ๋กœ ๊ฒฉ๋ฆฌ๋ผ์„œ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค. ์–ด๋–ค ์ˆœ์„œ๋กœ๋“  ๊ฐ€์žฅ ์ ํ•ฉํ•œ ๋ฐฉ์‹์œผ๋กœ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ ์„œ๋กœ์˜ ๊ฒฐ๊ณผ์— ์˜ํ–ฅ์„ ๋ฏธ์น˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

 

 

์ด ๋‘˜์€ ๊ฒฉ๋ฆฌ ํŠน์„ฑ์— ์˜ํ•ด ๋‚˜๋ˆ ์ง€๊ฒŒ ๋˜์—ˆ๋Š”๋ฐ, ๋Ÿฐ๋˜ํŒŒ๋Š” ํ…Œ์ŠคํŠธ ๋Œ€์ƒ ์‹œ์Šคํ…œ์—์„œ ํ˜‘๋ ฅ์ž๋ฅผ ๊ฒฉ๋ฆฌํ•˜๋Š” ๊ฒƒ์œผ๋กœ ๋ณด๋Š” ๋ฐ˜๋ฉด ๊ณ ์ „ํŒŒ๋Š” ๋‹จ์œ„ ํ…Œ์ŠคํŠธ๋ผ๋ฆฌ ๊ฒฉ๋ฆฌํ•˜๋Š” ๊ฒƒ์œผ๋กœ ๋ด…๋‹ˆ๋‹ค. ์ด๋Š” ๊ฒฐ๊ตญ ํ…Œ์ŠคํŠธํ•ด์•ผ ํ•  ๋‹จ์œ„์˜ ์ฒ˜๋ฆฌ์™€ ์˜์กด์„ฑ ์ทจ๊ธ‰์— ๋Œ€ํ•œ ๋ฐฉ๋ฒ•์œผ๋กœ ๋„˜์–ด๊ฐ€๋Š”๋ฐ, ์ฆ‰  ์„ธ ๊ฐ€์ง€ ์ฃผ์š” ์ฃผ์ œ์— ๋Œ€ํ•ด ์˜๊ฒฌ ์ฐจ์ด๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. 

 

     - ๊ฒฉ๋ฆฌ ์š”๊ตฌ ์‚ฌํ•ญ

     - ํ…Œ์ŠคํŠธ ๋Œ€์ƒ ์ฝ”๋“œ ์กฐ๊ฐ(๋‹จ์œ„)์˜ ๊ตฌ์„ฑ ์š”์†Œ

     - ์˜์กด์„ฑ ์ฒ˜๋ฆฌ

 

  ๊ฒฉ๋ฆฌ ์ฃผ์ฒด ๋‹จ์œ„ ํฌ๊ธฐ ํ…Œ์ŠคํŠธ ๋Œ€์—ญ ์‚ฌ์šฉ ๋Œ€์ƒ
๋Ÿฐ๋˜ํŒŒ    ๋‹จ์œ„    ๋‹จ์ผ ํด๋ž˜์Šค    ๋ถˆ๋ณ€ ์˜์กด์„ฑ ์™ธ ๋ชจ๋“  ์˜์กด์„ฑ
๊ณ ์ „ํŒŒ    ๋‹จ์œ„ ํ…Œ์ŠคํŠธ    ๋‹จ์ผ ํด๋ž˜์Šค ๋˜๋Š” ํด๋ž˜์Šค ์„ธํŠธ    ๊ณต์œ  ์˜์กด์„ฑ

 **๊ฐ๊ฐ์˜ ํ…Œ์ŠคํŠธ๋ฅผ ๊ฒฉ๋ฆฌํ•˜๋Š” ๊ฒƒ์€ ์—ฌ๋Ÿฌ ํด๋ž˜์Šค๊ฐ€ ๋ชจ๋‘ ๋ฉ”๋ชจ๋ฆฌ์— ์ƒ์ฃผํ•˜๊ณ  ๊ณต์œ  ์ƒํƒœ์— ๋„๋‹ฌํ•˜์ง€ ์•Š๋Š” ํ•œ ์—ฌ๋Ÿฌ ํด๋ž˜์Šค๋ฅผ ํ•œ ๋ฒˆ์— ํ…Œ์ŠคํŠธํ•ด๋„ ๊ดœ์ฐฎ๋‹ค๋Š” ๋œป์ž…๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ํ…Œ์ŠคํŠธ๊ฐ€ ์„œ๋กœ ์†Œํ†ตํ•˜๊ณ  ์‹คํ–‰ ์ปจํ…์ŠคํŠธ์— ์˜ํ–ฅ์„ ์ค„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. 

 

 

 

 

 

 

์ด ๋‘˜์€ ์˜์กด์„ฑ์„ ๋‹ค๋ฃจ๋Š” ๋ฐฉ๋ฒ•์—๋„ ์ฐจ์ด๊ฐ€ ์žˆ์—ˆ๋Š”๋ฐ ๋Ÿฐ๋˜ํŒŒ๋Š” ํ…Œ์ŠคํŠธ์—์„œ ์ผ๋ถ€ ์˜์กด์„ฑ์„ ๊ทธ๋Œ€๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•˜๊ณ  ์žˆ๋‹ค. ์ฆ‰, ๋ณ€ํ•˜์ง€ ์•Š๋Š” ๊ฐ์ฒด , ์ฆ‰ ๋ถˆ๋ณ€ ๊ฐ์ฒด๋ผ๋ฉด ์ด๋ฅผ ๊ตณ์ด ๊ต์ฒดํ•˜์ง€ ์•Š์•„๋„ ๋œ๋‹ค. ์ด๋Ÿฐ ๋ถˆ๋ณ€ ๊ฐ์ฒด๋ฅผ ๊ฐ’ ๊ฐ์ฒด(value object) ๋˜๋Š” ๊ฐ’(value)๋ผ๊ณ  ํ•œ๋‹ค. ์ค‘ ํŠน์ง•์€ ๊ฐ๊ฐ€์˜ ์ •์ฒด์„ฑ์ด ์—†๋‹ค๋Š” ๊ฒƒ์ด๋‹ค. ์ฆ‰, ๋‚ด์šฉ์— ์˜ํ•ด์„œ๋งŒ ์‹๋ณ„๋œ๋‹ค. ๊ทธ ๊ฒฐ๊ณผ ๋‘ ๊ฐ์ฒด๊ฐ€ ๋™์ผํ•œ ๋‚ด์šฉ์„ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค๋ฉด ์–ด๋–ค ๊ฐ์ฒด๋ฅผ์‚ฌ์šฉํ•ด๋„ ๋œ๋‹ค. ์ด๋Ÿฌํ•œ ์ธ์Šคํ„ด์Šค๋Š” ์„œ๋กœ ๋ฐ”๊ฟ” ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค. 

 

์ด ๋‘˜์€ ํ…Œ์ŠคํŠธ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•˜๋Š” ๋ฐฉ๋ฒ•์—๋„ ์ฐจ์ด๊ฐ€ ์žˆ๋Š”๋ฐ ๋Ÿฐ๋˜ ์Šคํƒ€์ผ์€ ํ•˜ํ–ฅ์‹ TDD๋ฅผ, ๊ณ ์ „ํŒŒ๋Š” ์ƒํ–ฅ์‹ TDD๋ฅผ ์ง€ํ–ฅํ•œ๋‹ค. ๋Ÿฐ๋˜ ์Šคํƒ€์ผ์€ ๋ชฉ ๊ฐ์ฒด๋ฅผ ํ†ตํ•ด ์ƒ์œ„ ๋ ˆ๋ฒจ์—์„œ๋ถ€ํ„ฐ ํ…Œ์ŠคํŠธ๋ฅผ ํ•ด๊ฐ€๋ฉฐ ํ•œ ๋ฒˆ์— ํ•œ ํด๋ž˜์Šค์— ์ง‘์ค‘ํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•œ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ๋ชจ๋“  ํ˜‘๋ ฅ์ž๋ฅผ ์ฐจ๋‹จํ•ด ํ•ด๋‹น ํ˜‘๋ ฅ์ž์˜ ๊ตฌํ˜„์„ ๋‚˜์ค‘์œผ๋กœ ๋ฏธ๋ฃฐ ์ˆ˜ ์žˆ๋‹ค.

 

๋ฐ˜๋ฉด ๊ณ ์ „ํŒŒ๋Š” ์‹ค์ œ ๊ฐ์ฒด๋ฅผ ๋‹ค๋ค„์•ผ ํ•˜๋ฏ€๋กœ ์ง€์นจ์„ ๋˜‘๊ฐ™์ด ๋‘์ง„ ์•Š๋Š”๋‹ค. ๋„๋ฉ”์ธ ๋ชจ๋ธ์„ ์‹œ์ž‘์œผ๋กœ ์ตœ์ข… ์‚ฌ์šฉ์ž๊ฐ€ ์†Œํ”„ํŠธ์›จ์–ด๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์„ ๋•Œ๊นŒ์ง€ ๊ณ„์ธต์„ ๊ทธ ์œ„์— ๋” ๋‘”๋‹ค. ๋Ÿฐ๋˜ ์Šคํƒ€์ผ์€ ๊ณ ์ „ ์Šคํƒ€์ผ๋ณด๋‹ค ํ…Œ์ŠคํŠธ๊ฐ€ ๊ตฌํ˜„์— ๋” ์ž์ฃผ ๊ฒฐํ•ฉํ•˜๋ฉฐ, ๋ชฉ ๊ฐ์ฒด๋ฅผ ์ „๋ฐ˜์ ์œผ๋กœ ๋„ˆ๋ฌด ๋‚จ์šฉํ•˜๋Š” ๊ฒƒ์— ๋Œ€ํ•œ ๋ฌธ์ œ๊ฐ€ ์ œ๊ธฐ๋œ๋‹ค.

 

 

 

 

 

 

 

 

ํ˜‘๋ ฅ์ž ๋Œ€ ์˜์กด์„ฑ

ํ˜‘๋ ฅ์ž๋Š” ๊ณต์œ ํ•˜๊ฑฐ๋‚˜ ๋ณ€๊ฒฝ ๊ฐ€๋Šฅํ•œ ์˜์กด์„ฑ์ž…๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋Š” ๊ณต์œ  ์˜์กด์„ฑ์ด๋ฏ€๋กœ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ ‘๊ทผ ๊ถŒํ•œ์„ ์ œ๊ณตํ•˜๋Š” ํด๋ž˜์Šค๋Š” ํ˜‘๋ ฅ์ž๊ฐ€ ๋˜๋ฉฐ,  ๋˜ํ•œ ์‹œ๊ฐ„์— ๋”ฐ๋ผ ์ƒํƒœ๊ฐ€ ๋ณ€ํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค. ์ผ๋ฐ˜์ ์ธ ํด๋ž˜์Šค๋Š” ๋‘ ๊ฐ€์ง€ ์œ ํ˜•์˜ ์˜์กด์„ฑ์œผ๋กœ ๋™์ž‘ํ•˜๋Š”๋ฐ ํ˜‘๋ ฅ์ž์™€ ๊ฐ’์ž…๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ๋“ค์–ด ์•„๋ž˜์˜ ๊ฒฝ์šฐ ์„ธ ๊ฐ€์ง€ ์˜์กด์„ฑ์ด ์กด์žฌํ•˜๋Š”๋ฐ, store๋Š” ํ˜‘๋ ฅ์ž์ด๋ฉฐ, ๋‚˜๋จธ์ง€ ๋‘˜(Product, 5)์€ ์•„๋‹™๋‹ˆ๋‹ค. 

 

customer.purchage(store, Product.Shampoo, 5);

 

 

 

 

 

๋ชจ๋“  ํ”„๋กœ์„ธ์Šค ์™ธ๋ถ€ ์˜์กด์„ฑ์ด ๊ณต์œ  ์˜์กด์„ฑ์˜ ๋ฒ”์ฃผ์— ์†ํ•˜์ง„ ์•Š์Šต๋‹ˆ๋‹ค. ํ”„๋กœ์„ธ์Šค ์™ธ๋ถ€ ์˜์กด์„ฑ์„ ๊ณต์œ ํ•˜๋ ค๋ฉด ๋‹จ์œ„ ํ…Œ์ŠคํŠธ๊ฐ€ ์„œ๋กœ ํ†ต์‹ ํ•  ์ˆ˜ ์žˆ๋Š” ์ˆ˜๋‹จ์ด ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ด๋Š” ์˜์กด์„ฑ ๋‚ด๋ถ€ ์ƒํƒœ๋ฅผ ์ˆ˜์ •ํ•˜๋ฉด ๋ฐœ์ƒํ•˜๋Š”๋ฐ, ํ”„๋กœ์„ธ์Šค ์™ธ๋ถ€์˜ ๋ถˆ๋ณ€ ์˜์กด์„ฑ์ด๋ผ๋ฉด ์ด๋ฅผ ๊ฑฑ์ •ํ•  ํ•„์š”๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ํ…Œ์ŠคํŠธ๋Š” ๋‚ด๋ถ€์˜ ์–ด๋–ค ๊ฒƒ๋„ ์ˆ˜์ •ํ•  ์ˆ˜ ์—†๊ธฐ ๋•Œ๋ฌธ์— ์„œ๋กœ ์‹คํ–‰ ์ปจํ…์ŠคํŠธ์— ์˜ํ–ฅ์„ ์ค„ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. 

 

 

 

 

 

 

 

 

 

์˜ˆ๋ฅผ ๋“ค์–ด ์™ธ๋ถ€ API๋Š” ๋ณ€๊ฒฝ ๊ธฐ๋Šฅ์„ ๋…ธ์ถœํ•˜์ง€ ์•Š๋Š” ํ•œ ๊ณต์œ  ์˜์กด์„ฑ์ด ์•„๋‹™๋‹ˆ๋‹ค. ์ด๋Š” ํœ˜๋ฐœ์„ฑ์ด๊ณ  ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ๊ฒฝ๊ณ„๋ฅผ ๋ฒ—์–ด๋‚˜์ง€๋งŒ ํ…Œ์ŠคํŠธ๊ฐ€ ๋ฐ˜ํ™˜ํ•˜๋Š” ๋ฐ์ดํ„ฐ์— ์˜ํ–ฅ์„ ๋ฏธ์น  ์ˆ˜์—†๊ธฐ ๋•Œ๋ฌธ์— ๊ณต์œ ๊ฐ€ ์•„๋‹™๋‹ˆ๋‹ค. ์ด๋Ÿฐ์˜์กด์„ฑ์€ ํ…Œ์ŠคํŠธ ๋ฒ”์ฃผ์— ํฌํ•จํ•˜์ง„ ์•Š์œผ๋ฉฐ, ํ…Œ์ŠคํŠธ ๋Œ€์—ญ์œผ๋กœ ๊ต์ฒดํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค. **์‹ฌ์ง€์–ด ํ”„๋กœ์„ธ์Šค ์™ธ๋ถ€ ์˜์กด์„ฑ์ด ์ถฉ๋ถ„ํžˆ ๋น ๋ฅด๊ณ  ์—ฐ๊ฒฐ์ด ์•ˆ์ •์ ์ด๋ฉด ํ…Œ์ŠคํŠธ์— ๊ทธ๋Œ€๋กœ ์‚ฌ์šฉํ•ด๋„ ๋ฉ๋‹ˆ๋‹ค. 

 

 

์‹ค์ œ ํ”„๋กœ์ ํŠธ์—์„œ ํ”„๋กœ์„ธ์Šค ์™ธ๋ถ€๊ฐ€ ์•„๋‹Œ ๊ณต์œ  ์˜์กด์„ฑ์€ ๊ฑฐ์˜ ์—†์Šต๋‹ˆ๋‹ค. ์˜์กด์„ฑ์ด ํ”„๋กœ์„ธ์Šค ๋‚ด๋ถ€์— ์žˆ์œผ๋ฉด ๊ฐ ํ…Œ์ŠคํŠธ์—์„œ ๋ณ„๋„์˜ ์ธ์Šคํ„ด์Šค๋ฅผ ์‰ฝ๊ฒŒ ๊ณต๊ธ‰ํ•  ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ํ…Œ์ŠคํŠธ ๊ฐ„ ๊ณต์œ ํ•  ํ•„์š”๊ฐ€ ์—†๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค. ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ ๊ณต์œ ๋˜์ง€ ์•Š๋Š” ํ”„๋กœ์„ธ์Šค ์™ธ๋ถ€ ์˜์กด์„ฑ์€ ์ผ๋ฐ˜์ ์œผ๋กœ ์ ‘ํ•  ์ผ์ด ์—†์œผ๋ฉฐ, ์ด๋Ÿฐ ์˜์กด์„ฑ์€ ๋Œ€๋ถ€๋ถ„ ๋ณ€๊ฒฝ ๊ฐ€๋Šฅํ•œ ํ…Œ์ŠคํŠธ๋กœ ์ˆ˜์ •๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. 

 

 

 

 

ํ†ตํ•ฉ ํ…Œ์ŠคํŠธ

๋‘ ๋ถ„ํŒŒ๋Š” ํ†ตํ•ฉ ํ…Œ์ŠคํŠธ์—์„œ๋„ ๊ฒฌํ•ด์˜ ์ฐจ์ด๊ฐ€ ์žˆ๋Š”๋ฐ ๋Ÿฐ๋˜ ํŒŒ๋Š” ๊ฒฉ๋ฆฌ๋œ ๋ฐฉ์‹์œผ๋กœ ์ด๋ฅผ ์ฒ˜๋ฆฌํ•˜๋ฉฐ ๊ณ ์ „ํŒŒ๋Š” ๋‹ค๋ฅธ ํ…Œ์ŠคํŠธ์™€ ๋ณ„๋„๋กœ ์ฒ˜๋ฆฌํ•œ๋‹ค. 

๋‹จ์œ„ ํ…Œ์ŠคํŠธ๋Š” ๋‹จ์ผ ๋™์ž‘ ๋‹จ์œ„๋ฅผ ๊ฒ€์ฆํ•˜๊ณ  ๋น ๋ฅด๊ฒŒ ์ˆ˜ํ–‰๋˜๋ฉฐ, ๋‹ค๋ฅธ ํ…Œ์ŠคํŠธ์™€ ๋ณ„๋„๋กœ ์ฒ˜๋ฆฌ๋œ๋‹ค. ํ†ตํ•ฉ ํ…Œ์ŠคํŠธ๋Š” ์ด๋Ÿฌํ•œ ๊ธฐ์ค€ ์ค‘ ํ•˜๋‚˜ ์ด์ƒ์„ ์ถฉ์กฑํ•˜์ง€ ์•Š๋Š” ํ…Œ์ŠคํŠธ๋‹ค.

 

1. ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ๊ฒฝ์šฐ ๋‹ค๋ฅธ ํ…Œ์ŠคํŠธ์™€ ๋ถ„๋ฆฌํ•ด ์‹คํ–‰ํ•  ์ˆ˜ ์—†๋‹ค. ์–ด๋–ค ๋ฐ์ดํ„ฐ ๋ฒ ์ด์Šค์˜ ์ƒํƒœ ๋ณ€๊ฒฝ์ด ์ƒ๊ธฐ๋ฉด ๋ณ‘๋ ฌ๋กœ ์‹คํ–‰ํ•  ๋•Œ ๋™์ผ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ์˜์กดํ•˜๋Š” ๋‹ค๋ฅธ ๋ชจ๋“  ํ…Œ์ŠคํŠธ์˜ ๊ฒฐ๊ณผ๊ฐ€ ๋ณ€๊ฒฝ๋œ๋‹ค. ์ด ๊ฐ„์„ญ์„ ํ”ผํ•˜๋ ค๋ฉด ใ…Š์ถ”๊ฐ€ ์กฐ์น˜๋ฅผ ์ทจ์• ํ•ด์•ผ ํ•œ๋‹ค. ํŠนํžˆ ์ด๋Ÿฐ ํ…Œ์ŠคํŠธ๋Š” ์ˆœ์ฐจ์ ์œผ๋กœ ์‹คํ–‰ํ•ด์„œ ๊ฐ ํ…Œ์ŠคํŠธ๊ฐ€ ๊ณต์œ  ์˜์กด์„ฑ๊ณผ ํ•จ๊ป˜ ์ž‘๋™ํ•˜๋ ค๊ณ  ๊ธฐ๋‹ค๋ฆด ์ˆ˜ ์žˆ๋‹ค. 

 

 

2. ์—ฌ๊ธฐ์„œ ์™ธ๋ถ€ ์˜์กด์„ฑ์— ์ ‘๊ทผํ•˜๋ฉด ํ…Œ์ŠคํŠธ๊ฐ€ ๋Š๋ ค์ง€๋Š”๋ฐ, ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ๋Œ€ํ•œ ํ˜ธ์ถœ์€ ์‹คํ–‰ ์‹œ๊ฐ„์— ์ˆ˜๋ฐฑ ๋ฐ€๋ฆฌ์ดˆ๋ฅผ ์ถ”๊ฐ€ํ•œ๋‹ค. ๋™์ผํ•œ ๋ฉ”๋ชจ๋ฆฌ ๊ณต๊ฐ„์— ์žˆ๋Š” ๊ฐ์ฒด ๊ฐ„ ํ†ต์‹ ์€ ๋ณ„๋„ ํ”„๋กœ์„ธ์Šค ๊ฐ„ ํ†ต์‹ ๋ณด๋‹ค ํ›จ์”ฌ ์ €๋ ดํ•˜๋‹ค. ํ…Œ์ŠคํŠธ๊ฐ€ ๋ฉ”๋ชจ๋ฆฌ ๋‚ด ๊ฐ์ฒด ์ˆ˜๋ฐฑ ๊ฐœ์™€ ํ•จ๊ป˜ ๋™์ž‘ํ•˜๋”๋ผ๋„ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ํ˜ธ์ถœ๋ณด๋‹ค ๋น ๋ฅด๊ฒŒ ์‹คํ–‰๋  ๊ฒƒ์ด๋‹ค. 

 

 

3. ๋‘˜ ์ด์ƒ์˜ ๋™์ž‘ ๋‹จ์œ„๋ฅผ ๊ฒ€์ฆํ•  ๋•Œ์˜ ํ…Œ์ŠคํŠธ๋Š” ํ†ตํ•ฉ ํ…Œ์ŠคํŠธ๋‹ค. ํ…Œ์ŠคํŠธ ์Šค์œ„ํŠธ์˜ ์‹คํ–‰ ์†๋„. ๋น„์Šทํ•œ ๋‹จ๊ณ„๋ฅผ ๊ฑฐ์น˜์ง€๋งŒ ๋‹ค๋ฅธ ๋™์ž‘ ๋‹จ์œ„๋ฅผ ๊ฒ€์ฆํ•˜๋Š” ๋Š๋ฆฐ ํ…Œ์ŠคํŠธ๊ฐ€ ๋‘ ๊ฐœ ์žˆ์„ ๋•Œ ํ•˜๋‚˜๋กœ ํ•ฉ์น˜๋ฉด ์กฐ๊ธˆ ๋” ๋น ๋ฅด๊ฒŒ ๊ฒ€์ฆํ•  ์ˆ˜ ์žˆ๋‹ค. ์ด๋Š” ์ด๋ฏธ ๋Š๋ ค์„œ ํ†ตํ•ฉ ํ…Œ์ŠคํŠธ์˜€๊ธฐ ๋•Œ๋ฌธ์— ๊ฒฐ์ •์ ์ธ ํ…Œ์ŠคํŠธ๋Š” ์•„๋‹ˆ๋‹ค. ๋˜ํ•œ ๋‹ค๋ฅธ ํŒ€์ด ๊ฐœ๋ฐœํ•œ ๋ชจ๋“ˆ์ด ๋‘˜ ์ด์ƒ ์žˆ์„ ๋•Œ ํ†ตํ•ฉ ํ…Œ์ŠคํŠธ๋กœ ์–ด๋–ป๊ฒŒ ์ž‘๋™ํ•˜๋Š”์ง€ ๊ฒ€์ฆํ•  ์ˆ˜ ์žˆ๋‹ค. 

 

 

 

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

 

์—”๋“œ ํˆฌ ์—”๋“œ๋ผ๋Š” ๋ช…์นญ์€ ๋ชจ๋“  ์™ธ๋ถ€ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ํฌํ•จํ•ด ์‹œ์Šคํ…œ์„ ์ตœ์ข… ์‚ฌ์šฉ์ž์˜ ๊ด€์ ์—์„œ ๊ฒ€์ฆํ•˜๋Š” ๊ฒƒ์„ ์˜๋ฏธํ•œ๋‹ค. ์ด๋Š” ์œ ์ง€ ๋ณด์ˆ˜ ์ธก๋ฉด์—์„œ ๊ฐ€์žฅ ๋น„์šฉ์ด ๋งŽ์ด ๋“ค๊ธฐ ๋•Œ๋ฌธ์— ๋ชจ๋“  ๋‹จ์œ„ ํ…Œ์ŠคํŠธ์™€ ํ†ตํ•ฉ ํ…Œ์ŠคํŠธ๋ฅผ ํ†ต๊ณผํ•œ ํ›„ ๋นŒ๋“œ ํ”„๋กœ์„ธ์Šค ํ›„๋ฐ˜์— ์‹คํ–‰ํ•˜๋Š” ๊ฒƒ์ด ์ข‹๋‹ค. ๋˜ํ•œ ์ด๋Š” ๋นŒ๋“œ ์„œ๋ฒ„์—์„œ๋งŒ ์‹คํ–‰ํ•  ์ˆ˜๋„ ์žˆ๋‹ค. 

 

 

 

 

 

 

๋Œ“๊ธ€