๋ณธ๋ฌธ์œผ๋กœ ๊ฑด๋„ˆ๋›ฐ๊ธฐ

๐ŸŒˆ Chapter 6: ๊ฐ์ฒด ์ง€ํ–ฅ ์Šคํƒ€์ผ

๐Ÿ“š ์œ ์ง€ ๋ณด์ˆ˜์„ฑ์„ ๊ณ ๋ คํ•œ ์„ค๊ณ„โ€‹

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

๐Ÿถ ๊ด€์‹ฌ์‚ฌ์˜ ๋ถ„๋ฆฌโ€‹

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

๐Ÿถ ๋” ๋†’์€ ์ˆ˜์ค€์˜ ์ถ”์ƒํ™”โ€‹

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

๐Ÿ“š ๋‚ด๋ถ€ ๋Œ€ ์ด์›ƒโ€‹

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

๐Ÿ“š ๋‹จ์ผ ์ฑ…์ž„ ์›์น™โ€‹

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

๐Ÿ“š ๊ฐ์ฒด ์ด์›ƒ์˜ ์œ ํ˜•โ€‹

  • ์šฐ๋ฆฌ๋Š” ์ด์›ƒํ•˜๋Š” ๊ฐ์ฒด์™€์˜ ๊ด€๊ณ„๋ฅผ ๋Œ€๋žต ์„ธ ๊ฐ€์ง€ ์œ ํ˜•์œผ๋กœ ๋‚˜๋ˆˆ๋‹ค. ํ•œ ๊ฐ์ฒด๊ฐ€ ์ง€๋‹ ์ˆ˜ ์žˆ๋Š” ๊ด€๊ณ„๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.

๐Ÿถ ์˜์กด์„ฑโ€‹

  • ํ•œ ๊ฐ์ฒด๊ฐ€ ์ž์‹ ์˜ ์—ญํ• ์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ๊ฒŒ ์ด์›ƒํ•˜๋Š” ๊ฐ์ฒด์—๊ฒŒ ์š”๊ตฌํ•˜๋Š” ์„œ๋น„์Šค๋‹ค.
  • ํ•ด๋‹น ๊ฐ์ฒด๋Š” ์ด ์„œ๋น„์Šค ์—†์ด๋Š” ๊ธฐ๋Šฅ์„ ์ˆ˜ํ–‰ํ•˜์ง€ ๋ชปํ•˜๋ฉฐ, ๊ฐ์ฒด ์ž์ฒด๋ฅผ ์ƒ์„ฑํ•  ์ˆ˜ ์—†์„ ๊ฒƒ์ด๋‹ค.

๐Ÿถ ์•Œ๋ฆผโ€‹

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

๐Ÿถ ์กฐ์ •โ€‹

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

๐Ÿถ ์ •๋ฆฌโ€‹

  • ์ด๋Ÿฌํ•œ ๊ฐ์ฒด ์ด์ˆญ์˜ ์œ ํ˜•์€ ์„ค๊ณ„์™€ ๊ด€๋ จ๋œ ๊ณ ๋ฏผ์— ๋„์›€์„ ์ฃผ๋Š” ํœด๋ฆฌ์Šคํ‹ฑ์— ๋ถˆ๊ณผํ• ๋ฟ ๋ฐ˜๋“œ์‹œ ์ง€์ผœ์•ผ ํ•  ๋ฒ•์น™์€ ์•„๋‹ˆ๋‹ค. ๋ฌด์—‡๋ณด๋‹ค ์ค‘์š”ํ•œ ๊ฒƒ์€ ๋ฐ”๋กœ ํ˜‘๋ ฅ ๊ฐ์ฒด๊ฐ€ ์‚ฌ์šฉ๋˜๋Š” ๋งฅ๋ฝ์ด๋‹ค.

๐Ÿ“š ์ „์ฒด๋Š” ๋ถ€๋ถ„์˜ ํ•ฉ๋ณด๋‹ค ๋‹จ์ˆœํ•ด์•ผ ํ•œ๋‹คโ€‹

  • ๋ณตํ•ฉ ๊ฐ์ฒด์˜ API๋Š” ๋ฐ˜๋“œ์‹œ ๊ตฌ์„ฑ ์š”์†Œ์˜ ์กด์žฌ์™€ ๊ตฌ์„ฑ ์š”์†Œ ๊ฐ„์˜ ์ƒํ˜ธ ์ž‘์šฉ์„ ๊ฐ์ถ”๊ณ  ๋” ๋‹จ์ˆœํ•œ ์ถ”์ƒํ™”๋ฅผ ์ด์›ƒ์—๊ฒŒ ๋“œ๋Ÿฌ๋‚ด์•ผ ํ•œ๋‹ค.
// ํ•˜์œ„ ์ปดํฌ๋„ŒํŠธ๋ฅผ ์ง์ ‘ ์ œ์–ด
moneyEditor.getAmountField().setText(String.valueOf(money.amount()));
moneyEditor.getCurrencyField().setText(money.currencyCode());
// ์—ฌ์ „ํžˆ ๋‚ด๋ถ€ ๊ตฌ์กฐ๊ฐ€ ๋“œ๋Ÿฌ๋‚œ๋‹ค.
moneyEditor.setAmountField(money.amount());
moneyEditor.setCurrencyField(money.currencyCode());
// ๋ช…์‹œ์ ์œผ๋กœ ์ปดํฌ๋„ŒํŠธ๋ฅผ ๊ด€๋ฆฌ
moneyEditor.setValue(money);
  • ์ฝ”๋“œ ๊ทœ๋ชจ๊ฐ€ ์ปค์ง์— ๋”ฐ๋ผ ์ „์ฒด๋Š” ๋ถ€๋ถ„์˜ ํ•ฉ๋ณด๋‹ค ๋‹จ์ˆœํ•ด์•ผ ํ•œ๋‹ค๋Š” ๊ทœ์น™์ด ์ถ”์ƒํ™” ์ˆ˜์ค€์„ ๋†’์ด๋Š” ๋ฐ ์ด๋ฐ”์ง€ํ•  ๊ฒƒ์ด๋‹ค.

๐Ÿ“š ์ฝ˜ํ…์ŠคํŠธ ๋…๋ฆฝ์„ฑโ€‹

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

๐Ÿ“š ์˜ฌ๋ฐ”๋ฅธ ์ •๋ณด ๊ฐ์ถ”๊ธฐโ€‹

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