Home > CS > 2024 > ๐Ÿ’พ [CS] ๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง(Business Logic)์ด๋ž€?

๐Ÿ’พ [CS] ๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง(Business Logic)์ด๋ž€?
CS

๐Ÿ’พ [CS] ๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง(Business Logic)์ด๋ž€?

1๏ธโƒฃ ๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง(Business Logic).

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

2๏ธโƒฃ ๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง์˜ ์ฃผ์š” ์—ญํ• 

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

3๏ธโƒฃ ๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง์˜ ์œ„์น˜

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

4๏ธโƒฃ ๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง๊ณผ ๋‹ค๋ฅธ ๋กœ์ง์˜ ๊ตฌ๋ถ„

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

5๏ธโƒฃ ๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง์˜ ์ค‘์š”์„ฑ

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