๋ชจ๋ธ, ์—”ํ‹ฐํ‹ฐ, DTO

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

๋ชจ๋ธ๊ณผ ์—”ํ‹ฐํ‹ฐ

  • ๋ชจ๋ธ : ๋น„์ฆˆ๋‹ˆ์Šค ๋ฐ์ดํ„ฐ๋ฅผ ๋‹ด๋Š” ์—ญํ• 
  • ์—”ํ‹ฐํ‹ฐ : ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ํ…Œ์ด๋ธ”๊ณผ ์Šคํ‚ค๋งˆ๋ฅผ ํ‘œํ˜„ํ•˜๋Š” ๋‘ ์—ญํ• ์„ ํ•จ

DTO

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