์ฝ”๋“œ ๋ƒ„์ƒˆ๊ฐ€ ์‹œ์Šคํ…œ์˜ ๋” ์‹ฌ๊ฐํ•œ ๋ฌธ์ œ๋ฅผ ์•Œ๋ฆฌ๋Š” ๋ฐฉ์‹

์ฝ”๋“œ ๋ƒ„์ƒˆ๋ฅผ ํŒŒํ—ค์น˜๋‹ค: ๊ธฐ์ˆ  ๋ถ€์ฑ„๊ฐ€ ์ปค์ง€๊ธฐ ์ „์— ๊ฐ์ง€ํ•˜๊ณ  ํ•ด์†Œํ•˜๋Š” ๋ฐฉ๋ฒ•

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

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

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

์ฝ”๋“œ ๋ƒ„์ƒˆ ์ •๋ฆฌ

SMART TS XL ๋ณต์žกํ•œ ์‹œ์Šคํ…œ ์ „๋ฐ˜์—์„œ ์ด๋ฅผ ๋งคํ•‘ํ•˜๊ณ  ์ˆ˜์ •ํ•˜๋Š” ๋ฐ ๋„์›€์ด ๋ฉ๋‹ˆ๋‹ค.

๋” ๋งŽ์€ ์ •๋ณด

์ฐจ๋ก€

์ด ๊ธฐ์‚ฌ์—์„œ๋Š” ์ฝ”๋“œ ๋ƒ„์ƒˆ๊ฐ€ ์‹ค์ œ๋กœ ๋ฌด์—‡์ธ์ง€, ๋ฆฌํŒฉํ† ๋ง ์ž‘์—…์— ์–ด๋–ค ์˜ํ–ฅ์„ ๋ฏธ์น˜๋Š”์ง€ ์‚ดํŽด๋ด…๋‹ˆ๋‹ค. ์ •์  ๋ถ„์„ ๋„๊ตฌ๋Š” ๋ฌด์—‡์ž…๋‹ˆ๊นŒ? ์žก์„ ์ˆ˜ ์žˆ๊ณ , ์–ด๋–ป๊ฒŒ SMART TS XL ์กฐ์ง์ด ํ‘œ๋ฉด์ ์ธ ๋ƒ„์ƒˆ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ์‹œ์Šคํ…œ ์ „๋ฐ˜์˜ ๊ตฌ์กฐ์  ์•ฝ์ ๋„ ๊ฐ์ง€ํ•  ์ˆ˜ ์žˆ๋„๋ก ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.

์ฝ”๋“œ ์Šค๋ฉœ์ด๋ž€ ๋ฌด์—‡์ธ๊ฐ€? (๊ทธ๋ฆฌ๊ณ  ์ฝ”๋“œ ์Šค๋ฉœ์ด ์•„๋‹Œ ๊ฒƒ์€ ๋ฌด์—‡์ธ๊ฐ€?)

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

์ •์˜: ๋ฒ„๊ทธ๊ฐ€ ์•„๋‹Œ ๋” ์‹ฌ๊ฐํ•œ ๋ฌธ์ œ์˜ ์ฆ์ƒ

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

  • ๋ฐฉ๋ฒ•์ด ๋„ˆ๋ฌด ๊ธธ์–ด์š”
  • ์ˆ˜์—…์ด ๋„ˆ๋ฌด ๋งŽ์•„์š”
  • ํ•จ์ˆ˜๋Š” ํŠน์ • ๋ฐ์ดํ„ฐ ์„ธํŠธ๋‚˜ ๋ชจ๋“ˆ๊ณผ ๋ฐ€์ ‘ํ•˜๊ฒŒ ๊ฒฐํ•ฉ๋ฉ๋‹ˆ๋‹ค.
  • ์˜ค๋ฅ˜ ์ฒ˜๋ฆฌ๊ฐ€ ์ผ๊ด€๋˜์ง€ ์•Š๊ณ  ๋ถ„์‚ฐ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.

์ฝ”๋“œ ๋ƒ„์ƒˆ๊ฐ€ ์ œ์•ˆํ•ฉ๋‹ˆ๋‹ค ์ทจ์•ฝ์„ฑ ๋ณ€ํ™”์— ๋Œ€ํ•œ ์ €ํ•ญ๋‹น์žฅ์˜ ์‹คํŒจ๊ฐ€ ๋ˆˆ์— ๋„์ง€ ์•Š๋”๋ผ๋„, ์ด๋Š” ๋ˆ„์ ๋œ ๊ธฐ์ˆ  ๋ถ€์ฑ„์˜ ์ฒซ ๋ฒˆ์งธ ๊ฐ€์‹œ์ ์ธ ์ง•ํ›„์ธ ๊ฒฝ์šฐ๊ฐ€ ๋งŽ์Šต๋‹ˆ๋‹ค.

์ด ์šฉ์–ด๋ฅผ ๋Œ€์ค‘ํ™”ํ•œ ๋งˆํ‹ด ํŒŒ์šธ๋Ÿฌ๋Š” ์ฝ”๋“œ ๋ƒ„์ƒˆ๋ฅผ "์–ด๋”˜๊ฐ€์— ๋ญ”๊ฐ€ ์ž˜๋ชป๋˜์—ˆ์„ ๊ฐ€๋Šฅ์„ฑ์ด ๋†’๋‹ค"๋Š” ์ง€ํ‘œ๋กœ ์„ค๋ช…ํ–ˆ์ง€๋งŒ, ๊ทธ ์ž์ฒด๋กœ ์ฆ๊ฑฐ๋Š” ๋  ์ˆ˜ ์—†๋‹ค๊ณ  ํ–ˆ์Šต๋‹ˆ๋‹ค.

์ฝ”๋“œ ๋ƒ„์ƒˆ๊ฐ€ ๊ตฌ๋ฌธ ์˜ค๋ฅ˜๋‚˜ ๊ธฐ๋Šฅ์  ๊ฒฐํ•จ๊ณผ ์–ด๋–ป๊ฒŒ ๋‹ค๋ฅธ๊ฐ€

๊ตฌ๋ฌธ ์˜ค๋ฅ˜๋Š” ๋ช…ํ™•ํ•œ ๋ฌธ์ œ์ž…๋‹ˆ๋‹ค. ์ปดํŒŒ์ผ๋Ÿฌ๊ฐ€ ์ฝ”๋“œ ๋นŒ๋“œ๋ฅผ ๊ฑฐ๋ถ€ํ•˜๋Š” ๊ฒฝ์šฐ์ž…๋‹ˆ๋‹ค. ๊ธฐ๋Šฅ์  ๊ฒฐํ•จ ๋˜ํ•œ ๋˜ ๋‹ค๋ฅธ ๋ช…ํ™•ํ•œ ์‹ ํ˜ธ์ž…๋‹ˆ๋‹ค. ์ฝ”๋“œ๋Š” ์‹คํ–‰๋˜์ง€๋งŒ ์ž˜๋ชป๋œ ๊ฒฐ๊ณผ๋ฅผ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.

์ฝ”๋“œ ๋ƒ„์ƒˆ๋Š” ๋” ๋ฏธ๋ฌ˜ํ•ฉ๋‹ˆ๋‹ค.

  • ์‹œ์Šคํ…œ์„ ์ถฉ๋Œ์‹œํ‚ค์ง€ ์•Š์Šต๋‹ˆ๋‹ค
  • ๋ฐ˜๋“œ์‹œ ์ž˜๋ชป๋œ ์ถœ๋ ฅ์ด ์ƒ์„ฑ๋˜๋Š” ๊ฒƒ์€ ์•„๋‹™๋‹ˆ๋‹ค.
  • ๋ชจ๋‹ˆํ„ฐ๋ง ๋„๊ตฌ์—์„œ ์•Œ๋žŒ์„ ํŠธ๋ฆฌ๊ฑฐํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

๋Œ€์‹ , ํŒ€์ด ๋‹ค์Œ์„ ์‹œ๋„ํ•  ๋•Œ ๋ฌธ์ œ๊ฐ€ ๋‚˜ํƒ€๋‚ฉ๋‹ˆ๋‹ค.

  • ๊ธฐ๋Šฅ ํ™•์žฅ
  • ์˜ˆ์ƒ์น˜ ๋ชปํ•œ ์˜ˆ์™ธ ์ƒํ™ฉ ๋””๋ฒ„๊น…
  • ์‹œ์Šคํ…œ์„ ์ƒˆ๋กœ์šด ํ™˜๊ฒฝ์œผ๋กœ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜
  • ๋…ผ๋ฆฌ๋ฅผ ์ดํ•ดํ•˜๋Š” ๋ฐ ์–ด๋ ค์›€์„ ๊ฒช๋Š” ์ƒˆ๋กœ์šด ๊ฐœ๋ฐœ์ž๋ฅผ ํƒ‘์Šน์‹œํ‚ค์„ธ์š”.

์ด๋Ÿฐ ์ˆœ๊ฐ„์— ๋ƒ„์ƒˆ๋Š” ๊ฐ€๋ฒผ์šด ์„ฑ๊ฐ€์‹ฌ์—์„œ ์‹ฌ๊ฐํ•œ ๋ฐฉํ•ด ์š”์†Œ๋กœ ๋ณ€ํ•ฉ๋‹ˆ๋‹ค.

ํ™•์žฅ์„ฑ, ์œ ์ง€ ๊ด€๋ฆฌ ๋ฐ ํ˜„๋Œ€ํ™”๋ฅผ ์œ„ํ•ด ์ฝ”๋“œ ๋ƒ„์ƒˆ๊ฐ€ ์ค‘์š”ํ•œ ์ด์œ 

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

  • ๋ฏธ๋ž˜์˜ ๋ชจ๋“  ๋ณ€ํ™”๋ฅผ ๋Šฆ์ถ”์„ธ์š”
  • ์—…๋ฐ์ดํŠธ ํ…Œ์ŠคํŠธ ๋ฐ ๊ฒ€์ฆ ๋น„์šฉ ์ฆ๊ฐ€
  • ์—…๊ทธ๋ ˆ์ด๋“œ ์ค‘ ํšŒ๊ท€ ๋ฐœ์ƒ ์œ„ํ—˜ ์ฆ๊ฐ€
  • ํ˜„๋Œ€ํ™” ๋…ธ๋ ฅ์„ ๋ฐฉํ•ดํ•˜๋Š” ์ˆจ๊ฒจ์ง„ ์•„ํ‚คํ…์ฒ˜ ์ข…์†์„ฑ ์ƒ์„ฑ

๊ฐœ๋ฐœ์ด ์ง„ํ–‰ ์ค‘์ผ ๋•Œ ์ฝ”๋“œ ๋ƒ„์ƒˆ๋ฅผ ๋ฌด์‹œํ•˜๋Š” ๊ฒƒ์€ ๊ตํ†ต์ด ๊ณ„์†๋˜๊ณ  ์žˆ๋Š”๋ฐ ๋‹ค๋ฆฌ์˜ ๊ท ์—ด์„ ๋ฌด์‹œํ•˜๋Š” ๊ฒƒ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.
์–ด๋А ์‹œ์ ์—์„œ๋Š” ๋ถ€ํ•˜์™€ ์ŠคํŠธ๋ ˆ์Šค๊ฐ€ ๊ณ ํ†ต์Šค๋Ÿฌ์šด ๋ฐฉ์‹์œผ๋กœ ์•ฝ์ ์„ ๋“œ๋Ÿฌ๋ƒ…๋‹ˆ๋‹ค.

์ฝ”๋“œ ๋ƒ„์ƒˆ๋ฅผ ์‚ฌ์ „์— ์ฐพ์•„ ํ•ด๊ฒฐํ•˜๋ฉด ์‹œ์Šคํ…œ์˜ ํ™•์žฅ, ์ง„ํ™” ๋ฐ ์ง€์†์ ์ธ ๋น„์ฆˆ๋‹ˆ์Šค ํ˜์‹  ์ง€์› ๋Šฅ๋ ฅ์ด ๊ฐ•ํ™”๋ฉ๋‹ˆ๋‹ค.

๋ชจ๋“  ํŒ€์ด ์ธ์‹ํ•ด์•ผ ํ•˜๋Š” ์ผ๋ฐ˜์ ์ธ ์ฝ”๋“œ ๋ƒ„์ƒˆ ์œ ํ˜•

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

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

์ค‘๋ณต๋œ ์ฝ”๋“œ์™€ ๋…ผ๋ฆฌ ํ™•์‚ฐ

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

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

์˜ˆ๋ฅผ ๋“ค์–ด, ๊ฐ„๋‹จํ•œ ์‹œ๋‚˜๋ฆฌ์˜ค์—์„œ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

์ž๋ฐ”๋ณต์‚ฌํŽธ์ง‘// In ServiceA
double calculateDiscount(double amount) {
    if (amount > 1000) {
        return amount * 0.1;
    }
    return 0;
}
// Later in ServiceB
double computeDiscount(double value) {
    if (value > 1000) {
        return value * 0.1;
    }
    return 0;
}

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

๊ธด ๋ฉ”์„œ๋“œ์™€ ์‹  ํด๋ž˜์Šค

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

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

๋‹ค์Œ์˜ ๊ฐ„๋‹จํ•œ ์˜ˆ๋ฅผ ์‚ดํŽด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

ํŒŒ์ด์ฌ๋ณต์‚ฌํŽธ์ง‘class OrderProcessor:
    def process_order(self, order):
        # Validate order
        # Calculate discounts
        # Update inventory
        # Send notification emails
        # Generate invoice
        pass

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

๊ธฐ๋Šฅ ๋ถ€๋Ÿฌ์›€๊ณผ ๋ฐ์ดํ„ฐ ๋ฉ์–ด๋ฆฌ

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

ํ•œํŽธ, ๋ฐ์ดํ„ฐ ๋ฉ์–ด๋ฆฌ๋Š” ๋™์ผํ•œ ๋ฐ์ดํ„ฐ ๊ทธ๋ฃน์ด ์˜๋ฏธ ์žˆ๋Š” ๊ตฌ์กฐ๋กœ ์บก์Аํ™”๋˜์ง€ ์•Š์€ ์ฑ„ ๋ฐ˜๋ณต์ ์œผ๋กœ ์ „๋‹ฌ๋  ๋•Œ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, firstName, lastName, streetAddress, city๊ธ€๋ Œ๋ฐ์ผ zipCode ์—ฌ๋Ÿฌ ๋ฉ”์„œ๋“œ์— ๊ฑธ์ณ ํ•จ๊ป˜ ์ •์˜ํ•˜๋Š” ๋Œ€์‹  Address ๋ชฉ์ .

์„ค๋ช…์ ์ธ ์˜ˆ:

์ž๋ฐ”๋ณต์‚ฌํŽธ์ง‘// Instead of this
public void createCustomer(String firstName, String lastName, String street, String city, String zip) { ... }
// Prefer this
public void createCustomer(Address address) { ... }

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

์‚ฐํƒ„์ด ์ˆ˜์ˆ ๊ณผ ๋ฐœ์‚ฐ์  ๋ณ€ํ™”

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

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

์˜ˆ :

sql๋ณต์‚ฌํŽธ์ง‘-- Tax logic duplicated in different places
SELECT amount * 0.05 FROM invoices;
SELECT amount * 0.05 FROM payments;

์ด์ œ ์„ธ์œจ์„ ๋ณ€๊ฒฝํ•˜๋ ค๋ฉด ์ˆ˜์‹ญ ๊ฐœ์˜ ์Šคํฌ๋ฆฝํŠธ๋ฅผ ์‚ดํŽด๋ด์•ผ ํ•˜๋ฉฐ, ์ด๋Š” ๋ถˆ์ผ์น˜์˜ ์œ„ํ—˜์ด ์žˆ์Šต๋‹ˆ๋‹ค.
๋ฐœ์‚ฐ์  ๋ณ€๊ฒฝ์€ ๋น„์Šทํ•˜๊ฒŒ "๋ณ€์žฅํ•œ ์‹ ์  ๊ฐ์ฒด"์ธ ํด๋ž˜์Šค๋ฅผ ์•”์‹œํ•˜๋Š”๋ฐ, ์ด๋Š” ๋„ˆ๋ฌด ๋งŽ์€ ๊ด€๋ จ ์—†๋Š” ๋ฌธ์ œ๋ฅผ ์ฒ˜๋ฆฌํ•œ๋‹ค๋Š” ์˜๋ฏธ์ž…๋‹ˆ๋‹ค.

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

์›์‹œ์  ๊ฐ•๋ฐ•๊ด€๋…๊ณผ ์ถ”์ธก์  ์ผ๋ฐ˜์„ฑ

์›์‹œ์  ์ง‘์ฐฉ์€ ๋ฌธ์ž์—ด, ์ •์ˆ˜, ๋ถˆ๋ฆฌ์–ธ๊ณผ ๊ฐ™์€ ๊ธฐ๋ณธ ํƒ€์ž…์„ ๊ณผ๋„ํ•˜๊ฒŒ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค. ๋” ํ’๋ถ€ํ•œ ๋„๋ฉ”์ธ๋ณ„ ํƒ€์ž…์ด ๋” ์•ˆ์ „ํ•˜๊ณ  ํ‘œํ˜„๋ ฅ์ด ํ’๋ถ€ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๊ฐ•๋ ฅํ•œ ํƒ€์ž…์„ ๋งŒ๋“œ๋Š” ๋Œ€์‹  Email, CurrencyAmount๋ฐ OrderID๊ฐœ๋ฐœ์ž๋“ค์€ ์ œ๋„ค๋ฆญ ๊ธฐ๋ณธํ˜•์— ํฌ๊ฒŒ ์˜์กดํ•ฉ๋‹ˆ๋‹ค. ์ด๋กœ ์ธํ•ด ์˜๋„๊ฐ€ ๋ถˆ๋ถ„๋ช…ํ•ด์ง€๊ณ , ๊ฒ€์ฆ ๋กœ์ง์ด ์ค‘๋ณต๋˜๋ฉฐ, ์‹œ์Šคํ…œ ๊ฐ„ ๊ฒฐํ•ฉ๋„๊ฐ€ ๋‚ฎ์•„์ง€๋Š” ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.

์‚ฌ์†Œํ•œ ์˜ˆ:

csharp๋ณต์‚ฌํŽธ์ง‘public void processPayment(string accountNumber, double amount, string currency) { ... }

์ด ๊ฒฝ์šฐ ๊ณ„์ขŒ ๋ฒˆํ˜ธ, ๊ธˆ์•ก, ํ†ตํ™” ์ฝ”๋“œ๊ฐ€ ์ผ๋ฐ˜ ํ…์ŠคํŠธ์™€ ์ˆซ์ž๋กœ ์ฒ˜๋ฆฌ๋˜๋ฏ€๋กœ ์ž˜๋ชป๋˜์—ˆ๊ฑฐ๋‚˜ ํ˜•์‹์ด ์˜ฌ๋ฐ”๋ฅด์ง€ ์•Š์€ ๋ฐ์ดํ„ฐ๋ฅผ ์ „๋‹ฌํ•˜๊ธฐ ์‰ฝ์Šต๋‹ˆ๋‹ค.

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

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

์ผ๊ด€๋˜์ง€ ์•Š์€ ์˜ค๋ฅ˜ ์ฒ˜๋ฆฌ ๋ฐ ์นจ๋ฌต์˜ ์‹คํŒจ

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

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

Java ์˜ˆ์ œ๋ฅผ ์ƒ๊ฐํ•ด ๋ณด์„ธ์š”.

์ž๋ฐ”๋ณต์‚ฌํŽธ์ง‘try {
    processTransaction();
} catch (Exception e) {
    // Silent catch: no log, no notification
}

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

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

์ฝ”๋“œ ๋ƒ„์ƒˆ๊ฐ€ ๋ฆฌํŒฉํ† ๋ง๊ณผ ๊ธฐ์ˆ  ๋ถ€์ฑ„์— ๋ฏธ์น˜๋Š” ์˜ํ–ฅ

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

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

์™œ Smelly Code๋Š” ๋ฏธ๋ž˜์˜ ๋ชจ๋“  ๋ณ€ํ™”๋ฅผ ๋” ๋น„์‹ธ๊ฒŒ ๋งŒ๋“œ๋Š”๊ฐ€

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

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

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

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

๊ฐ€์‹œ์„ฑ ์—†์ด ๋ฆฌํŒฉํ† ๋ง์ด ์œ„ํ—˜ํ•ด์ง€๋Š” ๊ฒฝ์šฐ

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

๊ฐœ๋ฐœ์ž๊ฐ€ ๋ณผ ์ˆ˜ ์—†๋Š” ๊ฒฝ์šฐ:

  • ํด๋ž˜์Šค๊ฐ€ ํ•ด๋‹น ํ”„๋กœ์ ํŠธ ์™ธ๋ถ€์—์„œ ์‚ฌ์šฉ๋˜๋Š” ๊ฒฝ์šฐ
  • ์ค‘๋ณต๋œ ๋…ผ๋ฆฌ๊ฐ€ ์‚ฌ์ผ๋กœ ์ „์ฒด์—์„œ ์–ด๋–ป๊ฒŒ ๋‹ค๋ฅด๊ฒŒ ์ง„ํ™”ํ–ˆ๋Š”์ง€
  • ์–ด๋–ค ๋ชจ๋“ˆ์ด ์ทจ์•ฝํ•œ ์œ ํ‹ธ๋ฆฌํ‹ฐ ํ•จ์ˆ˜์— ๊ฐ„์ ‘์ ์œผ๋กœ ์˜์กดํ•ฉ๋‹ˆ๊นŒ?

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

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

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

๋ ˆ๊ฑฐ์‹œ ํ˜„๋Œ€ํ™”๋ฅผ ์œ„ํ•œ ์กฐ๊ธฐ ๊ฒฝ๊ณ ๋กœ์„œ ์ฝ”๋“œ ๋ƒ„์ƒˆ

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

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

์˜ˆ :

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

ํ˜„๋Œ€ํ™”๋ฅผ ์‹œ์ž‘ํ•˜๊ธฐ ์ „์— ์ฝ”๋“œ ๋ƒ„์ƒˆ๋ฅผ ์‚ฌ์ „์— ์‹๋ณ„ํ•จ์œผ๋กœ์จ ์กฐ์ง์€ ๋‹ค์Œ์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

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

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

์ •์  ์ฝ”๋“œ ๋ถ„์„์ด (์ผ๋ถ€) ์ฝ”๋“œ ๋ƒ„์ƒˆ๋ฅผ ๊ฐ์ง€ํ•˜๋Š” ๋ฐฉ๋ฒ•

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

์ •์  ๋ถ„์„ ๋„๊ตฌ๊ฐ€ ์•ˆ์ •์ ์œผ๋กœ ์ฐพ์„ ์ˆ˜ ์žˆ๋Š” ๊ฒƒ

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

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

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

๊ฒฉ์ฐจ: ๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง, ํฌ๋กœ์Šค ๋ชจ๋“ˆ ๋ฐ ์•„ํ‚คํ…์ฒ˜ ๋ƒ„์ƒˆ

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

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

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

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

๋งฅ๋ฝ๊ณผ ์ „๋žต ์—†์ด ํƒ์ง€๋งŒ์œผ๋กœ๋Š” ์ถฉ๋ถ„ํ•˜์ง€ ์•Š์€ ์ด์œ 

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

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

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

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

SMART TS XL ๋ฐ ์‹ฌ์ธต์ ์ธ ์‹œ์Šคํ…œ ์ „์ฒด ์ฝ”๋“œ ๋ƒ„์ƒˆ ๋ฐœ๊ฒฌ

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

์‹œ์Šคํ…œ ์ „๋ฐ˜์—์„œ ์ค‘๋ณต๋œ ๋…ผ๋ฆฌ ์‹œ๊ฐํ™”

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

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

ํ˜ธ์ถœ ์ฒด์ธ ๋งคํ•‘, ๊ณผ๊ฒฐํ•ฉ ๋ฐ ์•„ํ‚คํ…์ฒ˜ ๋“œ๋ฆฌํ”„ํŠธ

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

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

์œ„ํ—˜ ์ง‘์ค‘๋„ ๋ฐ ๋ฆฌํŒฉํ† ๋ง ๋Œ€์ƒ ์‹๋ณ„์„ ์œ„ํ•œ ์‚ฌ์šฉ ๋งต

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

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

์ ์ง„์  ๋ฆฌํŒฉํ† ๋ง ๋ฐ ์•ˆ์ „ํ•œ ํ˜„๋Œ€ํ™” ์ง€์›

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

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

SMART TS XL ๊ธฐ์ˆ  ๋ถ€์ฑ„๋ฅผ ๋ง‰์—ฐํ•œ ๊ฑฑ์ •๊ฑฐ๋ฆฌ์—์„œ ๋งคํ•‘๋˜๊ณ  ์ธก์ • ๊ฐ€๋Šฅํ•˜๋ฉฐ ๊ด€๋ฆฌ ๊ฐ€๋Šฅํ•œ ์ž์‚ฐ์œผ๋กœ ์ „ํ™˜ํ•˜์—ฌ ์‹œ์Šคํ…œ์„ ๋งˆ๋น„์‹œํ‚ค๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ ๊ฐ€์†ํ™”ํ•ฉ๋‹ˆ๋‹ค.

๋ฌธ์ œ๋ฅผ ์ผ์ฐ ๊ฐ์ง€ํ•˜๊ณ  ์‹œ์Šคํ…œ์„ ๋”์šฑ ๊ฐ•ํ™”ํ•˜์„ธ์š”

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

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

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

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

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