๊ธ€ ์ž‘์„ฑ์ž: ๊ฐœ๋ฐœํ•˜๋Š” ํ›ˆ์ด

ํ•™์Šต ์Šคํ”„๋ฆฐํŠธ ๋Œ์•„๋ณด๊ธฐ

๋‘ ๋‹ฌ๊ฐ„์˜ ํ•™์Šต ์Šคํ”„๋ฆฐํŠธ๊ฐ€ ๋๋‚ฌ๋‹ค. ๋ง ๊ทธ๋Œ€๋กœ ์Šคํ”„๋ฆฐํŠธ์˜€๋‹ค. ๋ฏธ์นœ ๋“ฏ์ด ๊ฐœ๋ฐœํ•˜๊ณ , ๋“ค์–ด์˜ค๋Š” ์ง€์‹๋“ค์„ ๋จธ๋ฆฟ์†์— ๊พธ์—ญ๊พธ์—ญ ์ง‘์–ด๋„ฃ์—ˆ๋‹ค. ๊ทธ๋ฃน ํ”„๋กœ์ ํŠธ๊ฐ€ ๋ณธ๊ฒฉ์ ์œผ๋กœ ์‹œ์ž‘๋˜๊ธฐ ์ „์—, ๊ทธ๋ฆฌ๊ณ  ๊ธฐ์–ต์ด ์‚ฌ๋ผ์ง€๊ธฐ(ํ˜น์€ ๋ฏธํ™”๋˜๊ธฐ..) ์ „์— ํ•™์Šต ์Šคํ”„๋ฆฐํŠธ๋ฅผ ๋Œ์•„๋ณด์ž.

 

๋‚œ ์ •๋ง iOS๋ฅผ ๊ณต๋ถ€ํ•œ ์ ์ด ์—†๋‹ค๊ตฌ์š”..

๋ฉค๋ฒ„์‹ญ์€ ๋จธ๋ฆฟ์†์— ์žˆ๋Š” ๊ฒƒ์„ ์ฝ”๋“œ๋กœ ํ‘œํ˜„ํ•˜๋ฉด ๋˜์—ˆ๋˜ ์ฑŒ๋ฆฐ์ง€์™€๋Š” ์ง„์งœ ๋งŽ์ด ๋‹ฌ๋ž๋‹ค. ์™œ๋ƒํ•˜๋ฉด ๋จธ๋ฆฟ์†์— ์žˆ๋Š” ๊ฒŒ ์—†์œผ๋‹ˆ๊นŒ...! ๋‚œ ์ง„์งœ iOS๋ฅผ ํ•œ ๋ฒˆ๋„ ํ•ด๋ณธ ์ ์ด ์—†๋Š”๋ฐ, ์•ฑ์„ ์ด์ œ๋ถ€ํ„ฐ ๋งŒ๋“ค์–ด์•ผ ํ•œ๋‹ค๊ณ  ์ƒ๊ฐํ•˜๋‹ˆ๊นŒ ๋ˆˆ์•ž์ด ๊นœ๊นœํ•ด์กŒ๋‹ค. ์ง€๊ธˆ ์ƒ๊ฐํ•ด๋ณด๋ฉด ์ฒซ ์ฃผ์ฐจ ๋ฏธ์…˜์€ ์ง„์งœ ์‰ฌ์› ๋Š”๋ฐ, ๊ทธ๋•Œ๋Š” ์–ด๋””์„œ๋ถ€ํ„ฐ ์–ด๋–ป๊ฒŒ ํ•ด์•ผ ํ• ์ง€ ๊ฐ€๋Š ์ด ์•ˆ๋ผ์„œ ๊ทธ๊ฒŒ ๋„ˆ๋ฌด ํž˜๋“ค์—ˆ๋‹ค.

 

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

 

๋˜, JK๋‹˜์€ 2์‹œ๊ฐ„ ๊ฐ™์€ 3์‹œ๊ฐ„ ๊ฐ•์˜๋ฅผ ์ •๋ง ์ข‹์€ ํ€„๋ฆฌํ‹ฐ๋กœ ํ•ญ์ƒ ์ง„ํ–‰ํ•ด์ฃผ์…จ๊ณ , ๋‚ด ๋จธ๋ฆฌ๋Š” ๋ชจ๋“  ๊ฒƒ์„ ํก์ˆ˜ํ•˜์ง€๋Š” ๋ชปํ–ˆ์ง€๋งŒ ๊ณต๋ถ€์™€ ๊ตฌํ˜„์˜ ๋ฐธ๋Ÿฐ์Šค๊ฐ€ ์ฑŒ๋ฆฐ์ง€ ๊ธฐ๊ฐ„์— ๋น„ํ•˜๋ฉด ์ •๋ง๋กœ ์ž˜ ๋งž์ถฐ์กŒ๋˜ ๊ฒƒ ๊ฐ™๋‹ค. ๋ฌด์—‡์„ ๊ณต๋ถ€ํ•ด์•ผ ๋˜๋Š”์ง€ ๋ฆฌ์ŠคํŠธ ์—… ํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ๊ฒƒ์€ ์—„์ฒญ๋‚˜๊ฒŒ ํฐ ์ถ•๋ณต์ด๋‹ค! ๋ถ€์บ ์ด ์—†์—ˆ๋‹ค๋ฉด iOS๋Š” ์—„๋‘๋„ ๋ชป ๋ƒˆ์„ ๊ฑฐ์•ผ ์ง„์งœ๋กœ..

 

์ด์ œ iOS ์ฒ˜์Œ์ด๋ผ๊ณ  ํ•˜๋ฉด ์•ˆ ๋ผ..

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

 

์•„๋ฌด๊ฒƒ๋„ ๋ชจ๋ฅด๋Š” ๋‚ด๊ฐ€ ์•„ํ‚คํ…์ฒ˜ ์„ค๊ณ„๋ฅผ ํ•œ๋‹ค๊ณ ?

iOS ๊ฐœ๋ฐœ์— ์กฐ๊ธˆ์”ฉ ์ต์ˆ™ํ•ด์งˆ ๋ฌด๋ ต์—๋Š” ์ข‹์€ ๊ตฌ์กฐ๋ฅผ ๋งŒ๋“ค๊ธฐ ์œ„ํ•ด ๋งค์ผ๋งค์ผ์„ ๋จธ๋ฆฌ๋ฅผ ์ฅ์–ด์งฐ๋‹ค. ์ฒซ ๋ช‡ ์ฃผ๋Š” ์–ด์„คํ”„๊ฒŒ MVC๋ฅผ ํ‰๋‚ด๋‚ด๋ณด๊ณ , ๊ทธ๋‹ค์Œ ๋ช‡ ์ฃผ๋Š” MVVM, ๊ทธ๋ฆฌ๊ณ  ๋งˆ์ง€๋ง‰ ๋ฏธ์…˜์—์„œ๋Š” MVVM + Clean Architecture๋กœ ์ •์ ์„ ์ฐ์—ˆ๋‹ค. <- ์‚ฌ์‹ค ์•„์ง๋„ ์ œ๋Œ€๋กœ ํ•œ ๊ฑด์ง€ ํ™•์‹ ์€ ์—†๋‹ค. 

 

์˜์‹์ ์œผ๋กœ ๊ตฌ์กฐ๋ฅผ ๋ถ„๋ฆฌํ•˜๊ณ  ์—ญํ• ์„ ๋‚˜๋ˆˆ๋‹ค๋Š” ๊ฒƒ์ด ์‰ฌ์šด ์ผ์€ ์•„๋‹ˆ์—ˆ๋‹ค. ํ•˜๋‹ค ๋ณด๋ฉด ๋ญ”๊ฐ€ ์ด์ƒํ•œ ๊ฒƒ ๊ฐ™์•„์„œ ๊ณ ์น˜๊ณ , ๊ทธ๋ ‡๊ฒŒ ๊ณ ์น˜๋‹ค ๋ณด๋ฉด ์ปค๋ฐ‹์˜ ๋ง๋จธ๋ฆฌ์—๋Š” [refactor]๋ฅผ ๋‹ฌ์•˜์ง€๋งŒ ์‚ฌ์‹ค ๋ฆฌํŒฉํ† ๋ง์ด ์•„๋‹Œ '์ฝ”๋“œ ์ดˆ๊ธฐํ™”ํ•˜๊ณ  ๋‹ค์‹œ ์งœ๊ธฐ'๊ฐ€ ๋˜์—ˆ๋˜ ์ˆœ๊ฐ„์ด ๋งŽ์•˜๋‹ค. ํ•˜์ง€๋งŒ ๊ฒฝํ—˜๊ณผ ์•ˆ์ „ํ•œ ์‹คํŒจ๋ฅผ ๋ฐ˜๋ณตํ•˜๋ฉด์„œ ์–ด๋Š ์ •๋„ ์ƒ๊ฐ์ด ๋งŽ์ด ์ •๋ฆฌ๋˜์—ˆ๋˜ ๊ฒƒ ๊ฐ™๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๊ณ ๋ฏผ ๋์— ๋งŒ๋“ค์–ด์ง„ ์„ค๊ณ„๊ฐ€ ์ž˜ ๋“ค์–ด๋งž๋Š” ๊ฒฝํ—˜์„ ๋งž์ดํ–ˆ์„ ๋•Œ, ์ง„์งœ๋กœ ํ–‰๋ณตํ–ˆ๋‹ค.

 

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

 

์—”์ง€๋‹ˆ์–ด๋ผ๋ฉด ๋กœ์šฐ ๋ ˆ๋ฒจ์„ ์•Œ์•„์•ผ ํ•ด!

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

 

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

 

ํ˜„์—…์„ ํ›”์ณ๋ณด๊ธฐ

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

 

์ž˜ํ•œ ๊ฒƒ, ๋ชปํ•œ ๊ฒƒ

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

 

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

 

๋งˆ๋ฌด๋ฆฌ, ๋ชจ๋‘ ๊ณ ๋งˆ์›Œ์š”!

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

 

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

 

ํŠนํžˆ, ๋งˆ์ง€๋ง‰ 2์ฃผ๋ฅผ ํ•จ๊ป˜ํ•œ ๊น๋ถ€์™€ ์นœ๊ตฌ ์—†๋Š” ๋‚˜์—๊ฒŒ ๊ทธ๋ฃน ํ”„๋กœ์ ํŠธ๋ฅผ ๊ฐ™์ด ํ•˜์ž๊ณ  ์ œ์•ˆํ•ด์ค€ ์‚ฌ๋žŒ๋“ค์—๊ฒŒ ์ง„์งœ ์ง„์งœ ๊ณ ๋ง™๋‹ค!