λͺ¨λΈ

· β˜• 1 min read · πŸ‘€... views

Model

user - μƒν˜Έμž‘μš©(UI) -> 둜직(Service) <-> 인프라 (DB, 메일등)
으둜 κ΅¬μ„±λ˜μ–΄ μžˆλ‹€κ³  ν–ˆμ„ λ•Œ,
둜직 <-> 인프라 λŠ” κ΄€κ³„λŠ” μ—†μœΌλ‚˜, μ—†μœΌλ©΄ μ•ˆλ˜λŠ” 그런 μ‘΄μž¬μ΄λ‹€.

기쑴의 Service - DAO
DTO κ΅¬μ‘°λŠ” κ΄€λ ¨λœ 것이 ν•œ 곳에 λͺ¨μ΄μ§€ μ•ŠμŒ. (High Cohension 이 λ˜μ§€ μ•ŠμŒ, 즉 ꡬ쑰 νŒŒμ•…μ΄ 어렀움)
그리고, 도메인을 잘 ν‘œν˜„ν•˜μ§€ λͺ»ν•œλ‹€.

μ—¬κΈ°μ„œ μ˜λ¬Έμ€ 도메인 μ΄λΌλŠ” 말의 κ°œλ…μΈλ°.. (이 뢀뢄은 좔후에 λ”°λ‘œ μ•Œμ•„λ³΄λ„λ‘ 함)
일단, Data + κΈ°λŠ₯ 이라고 ν•  수 μžˆλ‹€.

도메인은

  1. Entity - DB의 pk에 μ€€ν•˜λŠ” λ³€μˆ˜λ₯Ό 가지고 있으며, Value λ₯Ό 가지고 있음. 본인 λ³€μˆ˜μ— λŒ€ν•œ μ œμ–΄λ₯Ό ν•˜λ©° 자기 μžμ‹ μ˜ 라이프 사이클을 가지고 μžˆλ‹€κ³  ν•  수 μžˆλ‹€.
    Ex) AS μ ‘μˆ˜

  2. Value - κ°œλ…μ μΈ κ°’μ˜ ν•˜λ‚˜λ₯Ό ν‘œν˜„ν•œλ‹€κ³  ν•  수 μžˆλ‹€. (속성은 λ§Žμ„ 수 있음)
    Ex) μš”μ²­μž (λΌλŠ” κ°œλ…μ μΈ μΌμ’…μ˜ ν•˜μœ„ Entity? Name, PhoneNum 같은 λ³€μˆ˜λ“€μ΄ λ“€μ–΄κ°ˆ 수 있음)

Domain 은 κΈ°λŠ₯이라고 λ³Ό 수 있으며,
Svc(Service) λŠ” νλ¦„μ œμ–΄λ₯Ό λ‹΄λ‹Ήν•œλ‹€.

App - Svc κ°€ 있고,
Domain 에 AS μ ‘μˆ˜, ASμ ‘μˆ˜ Repo κ°€ μžˆλ‹€.
ASμ ‘μˆ˜ Repo (findOne, save… 같은 것듀)

  • Domain λ‘œμ§μ€ ν•œ 곳에 λͺ¨μœΌλ„둝 ν•΄μ•Όν•œλ‹€.
Share on

snack
WRITTEN BY
snack
Web Programmer


What's on this Page