๐ฅLayerd Architecture
https://velog.io/@gmtmoney2357/%EC%86%8C%ED%94%84%ED%8A%B8%EC%9B%A8%EC%96%B4-%EC%95%84%ED%82%A4%ED%85%8D%EC%B2%98-%EB%A0%88%EC%9D%B4%EC%96%B4%EB%93%9C-%EC%95%84%ED%82%A4%ED%85%8D%EC%B2%98Layered-archi
๋ ์ด์ด ๋ถ๋ฆฌ
์ผ๋ฐ์ ์ผ๋ก 4๊ณ์ธต์ผ๋ก ๋ ์ด์ด๋ฅผ ๊ตฌ๋ถํ๋ค. ํ๋ ์ ํ ์ด์ ,๋น์ง๋์ค,ํผ์์คํด์ค,๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ ์ด์ด ๋ก ๋๋๋ค.
๊ฐ ๋ ์ด์ด๋ ์ ํ๋ฆฌ์ผ์ด์ ์์ ๋ ์ด์ด ๋ณ๋ก ์ฑ ์์ ธ์ผํ ๋ถ๋ถ์ ์ฑ ์์ง๊ณ ์ํํ๋ค.

๊ด์ฌ์ฌ ๋ถ๋ฆฌ
๋น์ง๋์ค ๋ ์ด์ด๋ ๋ฐ์ดํฐ๋ฅผ ์ด๋ป๊ฒ ๋ฐ์์ผํ๋ฉฐ, ์ด๋ป๊ฒ ๋ณด์ฌ์ค์ง ๊ด์ฌ ํ ํ์๊ฐ ์๋ค.
๋ฐ๋ผ์ ๊ธฐ์ ์ ๋ถ๋ถ์ ์ง์คํ ์ ์์ง๋ง , ๋ณํ์ ๋ฐ์ํ๋ ๋ฅ๋ ฅ(๋ฏผ์ฒฉ์ฑ)์ ๋จ์ด์ง๋ค๋ ๋จ์ ์ด์๋ค.
๋๋ฉ์ธ ๋ณ๊ฒฝ์ ์ด๋ ค์
๋๋ฉ์ธ ๋ถํ ์ดํคํ ์ฒ์ ๋ฐ๋๋ก ๊ธฐ์ ์ญํ ์ ๋ฐ๋ผ ๋ฌถ๋๋ค.
์ฆ, ์ด๋ค ๋๋ฉ์ธ์ ๋ชจ๋ ๋ ์ด์ด์ ๋ถ์ฐ๋๊ฒ ๋๋ค. ๊ทธ๋์ ์ด ๋๋ฉ์ธ์ ๋ณ๊ฒฝํ๋ ๊ฒ์ ์ฝ์ง ์๋ค.
์๋ฅผ ๋ค์ด ๊ณ ๊ฐ ๋๋ฉ์ธ์ ๋ณ๊ฒฝํ๋ ค๋ฉด ๋ชจ๋ ๋ ์ด์ด์ ๊ด๋ จ๋ ๋ด์ฉ์ ๋ชจ๋ ๋ณ๊ฒฝํด์ผํ๋ค.
์ด๋ฐ ์ด์ ๋ก ๋ ์ด์ด๋ ์ํคํ ์ฒ ์คํ์ผ์ DDD( ๋๋ฉ์ธ ์ฃผ๋ ์ค๊ณ ) ๋ฐฉ์๊ณผ๋ ์๋ฐ๋๋ค.
์ฑํฌํ ์ํฐํจํด
์์ฒญ์ด ํ ๋ ์ด์ด์์ ๋ค๋ฅธ ๋ ์ด์ด๋ก ์ด๋ ํ ๋ ๊ฐ ๋ ์ด์ด๊ฐ ์๋ฌด ๋น์ง๋์ค ๋ก์ง๋ ์ฒ๋ฆฌํ์ง ์๊ณ ๊ทธ๋ฅ ํต๊ณผํ๋ ๊ฒ์ ๋งํ๋ค.
์ด๋ฌํ ํ๋ฆ์ ๋ถ ํ์ํ ๊ฐ์ฒด ์ด๊ธฐํ ๋ฐ ์ฒ๋ฆฌ๋ฅผ ๋น๋ฒํ๊ฒ ์ ๋ฐ์์ผ ์ธ๋ฐ ์๋ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์๋ชจํ์ฌ ์ฑ๋ฅ์๋ ๋ถ์ ์ ์ธ ์ํฅ์ ์ค๋ค.
๋ฌผ๋ก ์ฑํฌํ ์ํฐํจํด์ด ์์ ์ ์๋ค. ์ ์ฒด ์์ฒญ์ 20%๊ฐ ์ฑํฌํ์ธ ์ ๋๋ฉด ๊ทธ๋ฐ๋๋ก ๊ด์ฐฎ์ ์์ค์ด๋ค.
Controller์์ ํํ ๊ณง๋ฐ๋ก Service ๋ก์ง์ผ๋ก ์ฒ๋ฆฌ๋ฅผ ๋งก๊ฒจ๋ฒ๋ฆฌ๋๋ฐ ์ด์ ํด๋นํ๋ ๊ฒ์ธ๊ฐ? Validation ์ฒดํฌ๋ Http Methods๋ฅผ ๊ฒ์ฆํ๋ ๊ฒ ๋ง์ผ๋ก๋ ์ ์ญํ ์ ํ๊ณ ์๋ ๊ฒ ์ธ๊ฐ?
์ด๋์ ์ฐ๋๊ฒ ์ข์๊ฐ?
์๊ณ ๋จ์ํ ์ฑ์ด๋ ์น์ฌ์ดํธ์ ์๋ง๋ ์ํคํ ์ฒ์ด๋ค. ํนํ ์ฒ์ ๊ตฌ์ถ์ ํ ๋, ์ถ๋ฐ์ ์ผ๋ก ๊ด์ฐฎ๋ค
๊ทธ๋ฆฌ ๋ณต์กํ์ง ์์ผ๋ฉฐ ์ด์ฉ๋ฉด ๋น์ฉ๋ ๊ฐ์ฅ ์ ๋ ดํ ์ํคํ ์ฒ ์คํ์ผ์ด๋ฏ๋ก ์๊ท๋ชจ ์ดํ๋ฆฌ์ผ์ด์ ์ ์ ํฉํ๋ค.
๊ท๋ชจ๊ฐ ์ปค์ง์๋ก ์ ์ง ๋ณด์์ฑ , ๋ฏผ์ฒฉ์ฑ , ์ํ์ฑ, ๋ฐฐํฌ์ฑ ๊ฐ์ ํน์ฑ์ด ์ ์ ๋๋น ์ง๋ค.
Last updated