Temps๋ฅผ ์ฟผ๋ฆฌ๋กœ ๋ฆฌํŒฉํ† ๋งํ•˜๋Š” ๋ฐฉ๋ฒ•

๋ณ€์ˆ˜๋ฅผ ์˜๋ฏธ๋กœ ๋ณ€ํ™˜: Temp๋ฅผ ์ฟผ๋ฆฌ๋กœ ๋ฆฌํŒฉํ† ๋งํ•˜๋Š” ๋ฐฉ๋ฒ•

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

์ฐจ๋ก€

Replace Temp with Query๋Š” ๋ฌด์—‡์ž…๋‹ˆ๊นŒ?

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

๊ฐ€์žฅ ๊ฐ„๋‹จํ•œ ํ˜•ํƒœ๋กœ ํ‘œํ˜„ํ•˜๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

ํŒŒ์ด์ฌ๋ณต์‚ฌํŽธ์ง‘base_price = quantity * item_price
if base_price > 1000:
    return base_price * 0.95

์ด๊ฒƒ์œผ๋กœ :

ํŒŒ์ด์ฌ๋ณต์‚ฌํŽธ์ง‘if quantity * item_price > 1000:
    return quantity * item_price * 0.95

์•„๋‹ˆ๋ฉด ๋” ๋‚˜์€ ๋ฐฉ๋ฒ•์œผ๋กœ, ๋กœ์ง์„ ์ „์šฉ ๋ฉ”์„œ๋“œ๋กœ ์ถ”์ถœํ•ฉ๋‹ˆ๋‹ค.

ํŒŒ์ด์ฌ๋ณต์‚ฌํŽธ์ง‘if base_price() > 1000:
    return base_price() * 0.95

def base_price():
    return quantity * item_price

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

๊ธฐ์ˆ ์˜ ์ถœ์ฒ˜

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

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

์ด ๋ฆฌํŒฉํ† ๋ง์ด ํ•„์š”ํ•œ ์‹œ๊ธฐ์™€ ์ด์œ 

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

์ด ๊ธฐ์ˆ ์€ ๊ฐœ๋ฐœ์ž์—๊ฒŒ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋„์›€์„ ์ค๋‹ˆ๋‹ค.

  • ๊ณ„์‚ฐ์„ ๋ช…ํ™•ํ•˜๊ฒŒ ๋งŒ๋“œ์„ธ์š”
  • ์ƒํƒœ ๋ฐ ์ค‘๊ฐ„ ๋‹จ๊ณ„ ์ถ•์†Œ
  • ์ œ์–ด ํ๋ฆ„์„ ๋‹จ์ˆœํ™”ํ•˜์—ฌ ํ–ฅํ›„ ๋ฆฌํŒฉํ† ๋ง์„ ํ™œ์„ฑํ™”ํ•ฉ๋‹ˆ๋‹ค.

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

์ž„์‹œ ๋ณ€์ˆ˜์˜ ๋ฌธ์ œ์ 

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

Temps๊ฐ€ ์ฝ”๋“œ ๋ช…ํ™•์„ฑ์„ ์ €ํ•˜์‹œํ‚ฌ ์ˆ˜ ์žˆ๋Š” ์ด์œ 

์–ธ๋œป ๋ณด๊ธฐ์— ์ค‘๊ฐ„ ๊ฒฐ๊ณผ๋ฅผ ์ €์žฅํ•˜๋Š” ๋ฐ ์ง€์—ญ ๋ณ€์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ์ข‹์€ ๋ฐฉ๋ฒ•์ฒ˜๋Ÿผ ๋ณด์ž…๋‹ˆ๋‹ค. ๋ฐ˜๋ณต๋˜๋Š” ๋…ผ๋ฆฌ๋ฅผ ํ”ผํ•˜๊ณ  ํ•˜์œ„ ํ‘œํ˜„์‹์˜ ์ด๋ฆ„์„ ์ง€์ •ํ•  ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ๋งŽ์€ ๊ฒฝ์šฐ ์ž„์‹œ ๋ณ€์ˆ˜๋Š” ์ฝ”๋“œ ์ฝ๊ธฐ์˜ ์ž์—ฐ์Šค๋Ÿฌ์šด ํ๋ฆ„์„ ๋ฐฉํ•ดํ•ฉ๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž๋Š” ์ฝ”๋“œ๋ฅผ ์ž ์‹œ ๋ฉˆ์ถ”๊ณ  ์œ„๋กœ ์Šคํฌ๋กคํ•˜์—ฌ ๊ฐ ๋ณ€์ˆ˜๊ฐ€ ๋ฌด์—‡์„ ๋‚˜ํƒ€๋‚ด๋Š”์ง€ ์ดํ•ดํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๋‹ค์Œ ์Šค๋‹ˆํŽซ์„ ๊ณ ๋ คํ•ด ๋ณด์„ธ์š”.

์ž๋ฐ”๋ณต์‚ฌํŽธ์ง‘double basePrice = quantity * itemPrice;
if (basePrice > 1000) {
    // ...
}

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

์ด๊ฒƒ์„ ๋‹ค์Œ๊ณผ ๋น„๊ตํ•ด ๋ณด์„ธ์š”:

์ž๋ฐ”๋ณต์‚ฌํŽธ์ง‘if (quantity * itemPrice > 1000) {
    // ...
}

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

์ง€์—ญ ๋ณ€์ˆ˜๊ฐ€ ๋ถ€์ฑ„๊ฐ€ ๋˜๋Š” ๊ฒฝ์šฐ

์ž„์‹œ ๋ณ€์ˆ˜๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๊ฒฝ์šฐ ๋ถ€์ฑ„๋กœ ์ „ํ™˜๋ฉ๋‹ˆ๋‹ค.

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

์ด๋ฆ„์ด ์ž˜๋ชป ์ง€์ •๋œ ๋ฉ”์„œ๋“œ์—์„œ๋Š” ์ž„์‹œ ๋ณ€์ˆ˜์˜ ์ด๋ฆ„์ด ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๊ฒฝ์šฐ๊ฐ€ ๋งŽ์Šต๋‹ˆ๋‹ค. temp, value๋ฐ result์œ ์šฉํ•œ ์ •๋ณด๋ฅผ ์ œ๊ณตํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋” ๋‚˜์œ ์ ์€, ๋™์ผํ•œ ๋ฉ”์„œ๋“œ ๋‚ด์—์„œ temps๋ฅผ ๋‹ค๋ฅธ ์šฉ๋„๋กœ ์žฌ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์–ด ํ˜ผ๋ž€๊ณผ ์ž ์žฌ์  ๋ฒ„๊ทธ๋ฅผ ์ดˆ๋ž˜ํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

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

Temps๊ฐ€ ๋‹ค๋ฅธ ๋ฆฌํŒฉํ† ๋ง์„ ๋ฐฉํ•ดํ•˜๋Š” ๋ฐฉ์‹

์ž„์‹œ ๋ณ€์ˆ˜๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋‹ค๋ฅธ ์ค‘์š”ํ•œ ๋ฆฌํŒฉํ† ๋ง์„ ์ฐจ๋‹จํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  • ์ถ”์ถœ ๋ฐฉ๋ฒ• โ€“ temp๊ฐ€ ๋ฉ”์„œ๋“œ์˜ ๋ฒ”์œ„์— ๋ฌถ์—ฌ ์žˆ์„ ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค.
  • ๋ฉ”์„œ๋“œ๋ฅผ ๋ฉ”์„œ๋“œ ๊ฐ์ฒด๋กœ ๋ฐ”๊พธ๊ธฐ โ€“ temp๋Š” ๋จผ์ € ํ’€์–ด์•ผ ํ•  ์ข…์†์„ฑ์„ ์•ผ๊ธฐํ•˜๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค.
  • ๋งค๊ฐœ๋ณ€์ˆ˜ ๊ฐ์ฒด ์†Œ๊ฐœ โ€“ ์˜จ๋„๊ฐ€ ๋ถ„์‚ฐ๋˜์–ด ์žˆ์œผ๋ฉด ๊ด€๋ จ๋œ ๊ฐ’์„ ๋ถ„๋ฆฌํ•˜๊ณ  ๊ทธ๋ฃนํ™”ํ•˜๊ธฐ๊ฐ€ ๋” ์–ด๋ ค์›Œ์ง€๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค.

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

๋ถˆํ•„์š”ํ•œ temp๋ฅผ ์ œ๊ฑฐํ•˜๊ณ  ์ฟผ๋ฆฌ(๋ฉ”์„œ๋“œ)๋กœ ๋ฐ”๊พธ๋ฉด ์ฝ”๋“œ๋ฅผ ๋” ์‰ฝ๊ฒŒ ๋ถ„๋ฆฌํ•˜๊ณ  ์žฌ๊ตฌ์„ฑํ•  ์ˆ˜ ์žˆ์–ด ๋ชจ๋“ˆ์„ฑ๊ณผ ํ…Œ์ŠคํŠธ์„ฑ์ด ํ–ฅ์ƒ๋ฉ๋‹ˆ๋‹ค.

Temp๋ฅผ Query๋กœ ๋ฐ”๊พธ๋Š” ๋ฐฉ๋ฒ•

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

๋‹จ๊ณ„๋ณ„ ๋ณ€ํ˜•

Temp๋ฅผ ์ฟผ๋ฆฌ๋กœ ๋ฐ”๊พธ๋Š” ํ”„๋กœ์„ธ์Šค๋Š” ์ผ๋ฐ˜์ ์œผ๋กœ ๋‹ค์Œ ๋‹จ๊ณ„๋ฅผ ๋”ฐ๋ฆ…๋‹ˆ๋‹ค.

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

์ด ํ”„๋กœ์„ธ์Šค๋Š” ์ž„์‹œ ๋ณ€์ˆ˜๊ฐ€ ๋ณ€ํ˜•๋˜์ง€ ์•Š๊ณ  ๋ณต์žกํ•œ ์™ธ๋ถ€ ์ƒํƒœ์— ์˜์กดํ•˜์ง€ ์•Š์„ ๋•Œ ๊ฐ€์žฅ ์ž˜ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค.

์ฝ”๋“œ ๋น„๊ต ์ „ํ›„

๋ฆฌํŒฉํ† ๋ง์„ ์ ์šฉํ•˜๊ธฐ ์ „์˜ ๊ฐ„๋‹จํ•œ Java ์˜ˆ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

์ž๋ฐ”๋ณต์‚ฌํŽธ์ง‘double basePrice = quantity * itemPrice;
if (basePrice > 1000) {
    return basePrice * 0.95;
}

Replace Temp with Query๋ฅผ ์ ์šฉํ•œ ํ›„:

์ž๋ฐ”๋ณต์‚ฌํŽธ์ง‘if (basePrice() > 1000) {
    return basePrice() * 0.95;
}

private double basePrice() {
    return quantity * itemPrice;
}

์ด ์—…๋ฐ์ดํŠธ๋œ ๋ฒ„์ „์—๋Š” ์—ฌ๋Ÿฌ ๊ฐ€์ง€ ์ด์ ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

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

๊ฐ€๋…์„ฑ, ํ…Œ์ŠคํŠธ ๊ฐ€๋Šฅ์„ฑ ๋ฐ ์œ ์ง€ ๊ด€๋ฆฌ์˜ ์ด์ 

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

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

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

์ „๋ฐ˜์ ์œผ๋กœ ์ด ๋ฆฌํŒฉํ† ๋ง์€ ์ฝ”๋“œ๋ฅผ ์ •๋ฆฌํ•  ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ํ–ฅํ›„ ๊ฐœ์„  ๋ฐ ํ†ตํ•ฉ์„ ๊ฐ€๋Šฅํ•˜๊ฒŒ ํ•ฉ๋‹ˆ๋‹ค.

์–ธ์ œ ์‹ ์ฒญํ•ด์•ผ ํ•˜๊ณ  ์–ธ์ œ ์‹ ์ฒญํ•˜์ง€ ๋ง์•„์•ผ ํ•˜๋Š”๊ฐ€

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

์ด์ƒ์ ์ธ ์‹œ๋‚˜๋ฆฌ์˜ค: ์ˆœ์ˆ˜ ๊ณ„์‚ฐ ๋ฐ ํŒŒ์ƒ ๊ฐ’

์‹ ์ฒญํ•˜๊ธฐ ๊ฐ€์žฅ ์ข‹์€ ์‹œ๊ธฐ Temp๋ฅผ Query๋กœ ๋ฐ”๊พธ๊ธฐ ์ž„์‹œ ๋ณ€์ˆ˜๊ฐ€ ์ €์žฅ๋˜๋Š” ๊ฒฝ์šฐ์ž…๋‹ˆ๋‹ค. ์ˆœ์ˆ˜ ๊ณ„์‚ฐโ€” ๊ธฐ์กด ํ•„๋“œ ๋˜๋Š” ๋งค๊ฐœ๋ณ€์ˆ˜์—์„œ ํŒŒ์ƒ๋œ ๊ฐ’์œผ๋กœ, ๋ถ€์ž‘์šฉ์ด ์—†์Šต๋‹ˆ๋‹ค. ์˜ˆ์ธก ๊ฐ€๋Šฅํ•˜๊ณ  ์ผ๊ด€์„ฑ์ด ์žˆ์œผ๋ฉฐ ํ•„์š” ์‹œ ์•ˆ์ „ํ•˜๊ฒŒ ์žฌํ‰๊ฐ€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์˜ˆ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค :

  • ์ด๊ณ„, ํ‰๊ท  ๋˜๋Š” ์ž„๊ณ„๊ฐ’๊ณผ ๊ฐ™์€ ๊ณ„์‚ฐ
  • ํ• ์ธ, ์„ธ์œจ ๋˜๋Š” ๊ธฐ์ค€ ๊ฐ€๊ฒฉ๊ณผ ๊ฐ™์€ ํŒŒ์ƒ๋œ ๊ฐ’
  • ๊น”๋”ํ•œ ์„œ์‹ ๋…ผ๋ฆฌ(๋ฌธ์ž์—ด ์—ฐ๊ฒฐ์ด๋‚˜ ๋‚ ์งœ ์„œ์‹ ๋“ฑ)

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

์ฃผ์˜ ์‚ฌํ•ญ: ์„ฑ๋Šฅ ๋ฐ ๋ฐ˜๋ณต

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

๋‹ค์Œ ์ฝ”๋“œ๋ฅผ ๊ณ ๋ คํ•ด ๋ณด์„ธ์š”.

ํŒŒ์ด์ฌ๋ณต์‚ฌํŽธ์ง‘result = fetch_heavy_data()
if result and is_valid(result):
    process(result)

If fetch_heavy_data() ๋น„์šฉ์ด ๋งŽ์ด ๋“ค๊ธฐ ๋•Œ๋ฌธ์— ์ฟผ๋ฆฌ๋ฅผ ํ†ตํ•ด ๋‘ ๋ฒˆ ํ˜ธ์ถœํ•˜๋ฉด ๋น„์šฉ์ด ๋ฐ˜๋ณต๋˜๊ณ  ๊ฒฐ๊ณผ๋„ ์ผ๊ด€๋˜์ง€ ์•Š์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ๊ฒฝ์šฐ ์ž„์‹œ ๋ณ€์ˆ˜๋Š” ์„ฑ๋Šฅ๊ณผ ์•ˆ์ •์„ฑ์„ ๋ณดํ˜ธํ•ฉ๋‹ˆ๋‹ค.

๋ฆฌํŒฉํ† ๋ง์€ ๊ฐ€๋Šฅํ•˜์ง€๋งŒ, ๋ฉ”์„œ๋“œ๊ฐ€ ์บ์‹œ๋˜๊ฑฐ๋‚˜ ๋ฉ”๋ชจ์ด์ œ์ด์…˜๋˜๋„๋ก ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋ ‡์ง€ ์•Š์œผ๋ฉด temp๋ฅผ ๊ทธ๋Œ€๋กœ ๋‘๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค.

์•ˆํ‹ฐ ํŒจํ„ด: ์ƒํƒœ ๋…ผ๋ฆฌ์™€ ๋ถ€์ž‘์šฉ

์‚ฌ์šฉ์„ ํ”ผํ•˜์‹ญ์‹œ์˜ค Temp๋ฅผ Query๋กœ ๋ฐ”๊พธ๊ธฐ ๋ณ€์ˆ˜๊ฐ€ a๋ฅผ ์ €์žฅํ•  ๋•Œ ๋ฐ˜๋ณตํ•  ์ˆ˜ ์—†๋Š” or ๋ถ€์ž‘์šฉ์ด ๊ฐ€๋“ํ•œ ๊ฒฐ๊ณผ. ์˜ˆ๋ฅผ ๋“ค์–ด, ์˜จ๋„๊ฐ€ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์œ ์ง€๋œ๋‹ค๋ฉด:

  • ๋‚œ์ˆ˜ ๋˜๋Š” ์‹œ๊ฐ„์— ๋ฏผ๊ฐํ•œ ๊ฐ’
  • ๋„คํŠธ์›Œํฌ ํ˜ธ์ถœ์˜ ๊ฒฐ๊ณผ
  • ์ƒํƒœ๋ฅผ ๋ณ€๊ฒฝํ•˜๊ฑฐ๋‚˜ ์ „์—ญ ๊ฐ’์„ ๋ณ€๊ฒฝํ•˜๋Š” ๊ฐ์ฒด

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

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

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

๋„๊ตฌ ์ง€์› ๋ฐ ์ž๋™ํ™”

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

๋ฆฌํŒฉํ† ๋ง ๊ฐ์ง€ ๋ฐ ์ž๋™ํ™”๋ฅผ ์œ„ํ•œ IDE ์ง€์›

๋‹ค์Œ๊ณผ ๊ฐ™์€ ์ธ๊ธฐ ์žˆ๋Š” ํ†ตํ•ฉ ๊ฐœ๋ฐœ ํ™˜๊ฒฝ(IDE) IntelliJ IDEA, ์ดํด๋ฆฝ์Šค, ๋น„์ฃผ์–ผ ์ŠคํŠœ๋””์˜ค, Rider์—๋Š” ๊ธฐ๋ณธ ๋ฆฌํŒฉํ† ๋ง์„ ์œ„ํ•œ ๋‚ด์žฅ ๋„๊ตฌ๊ฐ€ ํฌํ•จ๋˜์–ด ์žˆ์œผ๋ฉฐ, ์—ฌ๊ธฐ์—๋Š” ๋‹ค์Œ์ด ํฌํ•จ๋ฉ๋‹ˆ๋‹ค.

  • ์ธ๋ผ์ธ ๋ณ€์ˆ˜
  • ๋ฉ”์„œ๋“œ์— ๋Œ€ํ•œ ํ‘œํ˜„์‹ ์ถ”์ถœ
  • ์ผ๊ด€๋˜๊ฒŒ ์‚ฌ์šฉ๋ฒ•์„ ์ด๋ฆ„ ๋ฐ”๊พธ๊ณ  ๊ต์ฒดํ•˜์„ธ์š”

temp๊ฐ€ ํ•œ ๋ฒˆ๋งŒ ํ• ๋‹น๋˜๊ณ  ๋ณ€๊ฒฝ๋˜์ง€ ์•Š์€ ๊ฒฝ์šฐ, ๋งŽ์€ IDE๋Š” ์ธ๋ผ์ธ ๋˜๋Š” ์ถ”์ถœ ์ž‘์—…์„ ์ž๋™์œผ๋กœ ์ œ์•ˆํ•ฉ๋‹ˆ๋‹ค. ์ด๋Š” ์ผ์ƒ์ ์ธ ๊ฐœ๋ฐœ ๊ณผ์ •์—์„œ ๊น”๋”ํ•œ ์ฝ”๋”ฉ ๋ฐฉ์‹์„ ์ ์šฉํ•˜๋Š” ๋ฐ ๋„์›€์ด ๋ฉ๋‹ˆ๋‹ค.

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

์ด๋Ÿฌํ•œ ๊ธฐํšŒ๋ฅผ ๋ฐœ๊ฒฌํ•˜๋Š” ๋ฐ ์žˆ์–ด ์ •์  ๋ถ„์„์˜ ํ•œ๊ณ„

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

๋Œ€๋ถ€๋ถ„์˜ ์ •์  ๋ถ„์„๊ธฐ:

  • ๊ตฌ๋ฌธ ์ˆ˜์ค€ ์ค‘๋ณต์„ฑ ๋˜๋Š” ์„œ์‹ ๋ฌธ์ œ์— ์ง‘์ค‘ํ•˜์„ธ์š”
  • ๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง์— ๋Œ€ํ•œ ์˜๋ฏธ์  ์ดํ•ด๊ฐ€ ๋ถ€์กฑํ•ฉ๋‹ˆ๋‹ค.
  • ์‹œ์Šคํ…œ์ด๋‚˜ ํ”Œ๋žซํผ ์ „๋ฐ˜์— ๊ฑธ์ณ ๋ณ€์ˆ˜ ์‚ฌ์šฉ์„ ์ถ”์ ํ•˜์ง€ ๋งˆ์‹ญ์‹œ์˜ค.

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

AI์™€ ๋„๊ตฌ๊ฐ€ ์–ด๋–ป๊ฒŒ SMART TS XL ๋„์›€์„ ์ค„ ์ˆ˜ ์žˆ์Œ

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

AI(์˜ˆ: ChatGPT)์™€ ํ†ตํ•ฉํ•˜๋ฉด ๊ฐœ๋ฐœ์ž๋Š” ๋‹ค์Œ์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  • ์ž„์‹œ ํ•ญ๋ชฉ์„ ๊ฐ•์กฐ ํ‘œ์‹œํ•˜๊ณ  ์žฌ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ์ฟผ๋ฆฌ๋กœ ๋ณ€ํ™˜ํ•˜๋„๋ก ์š”์ฒญํ•ฉ๋‹ˆ๋‹ค.
  • ํ‘œํ˜„์ด ๋ฌด์—‡์„ ํ•˜๋Š”์ง€์— ๋Œ€ํ•œ ์‰ฌ์šด ์˜์–ด ์„ค๋ช…์„ ์š”์ฒญํ•˜์„ธ์š”.
  • ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ „๋ฐ˜์˜ ์—ฌ๋Ÿฌ ์ž„์‹œ ๋ณ€์ˆ˜์— ๋™์ผํ•œ ๋…ผ๋ฆฌ๊ฐ€ ์ €์žฅ๋˜๋Š” ์˜๋ฏธ์  ์ค‘๋ณต์„ ๊ฐ์ง€ํ•ฉ๋‹ˆ๋‹ค.

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

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

์ฝ”๋“œ๋ฅผ ์Šค์Šค๋กœ ์„ค๋ช…ํ•˜๋„๋ก ๋งŒ๋“ค๊ธฐ

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

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

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

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

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