common module design
๊ณตํต๋ชจ๋์ค๊ณ
์ถ์ ๋น๋: ์
์ํํธ์จ์ด ์ค๊ณ
- ์๊ณ ๋ฆฌ์ฆ์ ์ค๊ณํ๊ณ ๋ฐ์ดํฐ๋ฅผ ๊ตฌ์กฐํํ ์๋ฃ๊ตฌ์กฐ๋ฅผ ๋ฌธ์ํํ๋ ๊ณผ์
- ์ค๊ณ ๋ฐฉ์ ๋น๊ต:
- ์ ์ฐจ์งํฅ: ์๋๊ฐ ๋น ๋ฅด์ง๋ง ์ ์ง๋ณด์๊ฐ ์ด๋ ค์
- ๊ฐ์ฒด์งํฅ: ๋์ด๋ ๋๊ณ ์๋๋ ๋๋ฆฌ์ง๋ง ์ฌํ์ฉ์ฑ๊ณผ ์ ์ง๋ณด์๊ฐ ์ฌ์
์ํํธ์จ์ด ์ค๊ณ ๋ชจ๋ธ
์ค๊ณ ๊ตฌ์ฑ ์์
- ๋ฐ์ดํฐ ์ค๊ณ
- ์ํคํ ์ฒ ์ค๊ณ
- ์ธํฐํ์ด์ค ์ค๊ณ
- ์ ์ฐจ ์ค๊ณ
์ค๊ณ ๊ณ์ธต
- ์์(์ํคํ
์ฒ) ์ค๊ณ
- ์๋น ์ค๊ณ
- ์์คํ ๊ตฌ์กฐ
- DB ์ค๊ณ
- ํ๋ฉด ๋ ์ด์์ ๋ฑ
- ํ์(๋ชจ๋) ์ค๊ณ
- ์์ธ ์ค๊ณ
- ๊ตฌ์ฑ ์์์ ๋ด๋ถ ๋ก์ง
- ๋์ ํ์ ๋ฑ
์ํํธ์จ์ด ์ค๊ณ ์ถ์ํ
- ์์ธ ์ค๊ณ ์ด์ ์ ๋๋ต์ , ํฌ๊ด์ ๊ตฌ์
- ์ค๊ณ(๊ตฌ์ฒดํ)๋ฅผ ํจ์จ์ ์ผ๋ก ์ํํ๊ธฐ ์ํ ๊ณผ์
์ถ์ํ ๊ธฐ๋ฒ 3๊ฐ์ง
- ์ ์ด ์ถ์ํ: ๋งค์ปค๋์ฆ์ด ์๋ ํฌ๊ด์ ํํ
- ๊ณผ์ ์ถ์ํ: ์ํ ๊ณผ์ ์ด ์๋ ์ ๋ฐ์ ์ธ ํ๋ฆ
- ์๋ฃ ์ถ์ํ: ๋ฐ์ดํฐ๋ฅผ ๋ํ์ ์ธ ํํ์ผ๋ก ๋์ฒด
๋ฐ๋์งํ ์ค๊ณ์ ๊ธฐ์ค
- ๋ชจ๋ ๋ด์ฉ์ ๊ตฌํํ ์ ์์ด์ผ ํจ
- ๊ฒฐํจ ๊ธฐ๋ฅ์ ์ถ์ ํ ์ ์์ด์ผ ํจ
- ์ ์ง๋ณด์๊ฐ ์ฉ์ดํด์ผ ํจ
- ์ฃผ์ ํน์ฑ:
- ๋ชจ๋(๋ ๋ฆฝ์ ์ธ ๊ธฐ๋ฅ)
- ๋ช ํ(์ ์ฐจ์ ์๋ฃ๊ตฌ์กฐ)
- ๊ณ์ธต์ (๋ชจ๋์ ํจ๊ณผ์ ์ ์ด)
๋ชจ๋ํ
- ์์คํ ์ ๋ถํดํ๊ณ ์ถ์ํํ๋ ๊ณผ์
- ์ฅ์ : ์ฑ๋ฅ ํฅ์, ์์ ์ฉ์ด, ์ฌ์ฌ์ฉ์ฑ, ์ ์ง๊ด๋ฆฌ ๊ฐ์
- ๋ชจ๋ ๊ฐ์์ ๋น์ฉ์ ๊ด๊ณ:
- ๋ชจ๋์ ๊ฐ์๊ฐ ๋ง์ โ ๋ชจ๋ ํฌ๊ธฐ ์์์ง โ ํตํฉ๋น์ฉ ์์น
- ๋ชจ๋์ ๊ฐ์๊ฐ ์ ์ โ ๋ชจ๋ ํฌ๊ธฐ ์ปค์ง โ ํตํฉ๋น์ฉ ํ๋ฝ
๊ณตํต ๋ชจ๋
- ๊ณตํต์ ์ผ๋ก ์ฌ์ฉํ ์ ์๋ ๋ชจ๋
- ๋๊ตฌ๋ ์ฌ์ฉํ ์ ์๋๋ก ์ฌ์ฉ๋ฒ ๊ณต๊ฐ
- ์ ์ง๋ณด์๊ฐ ์ฉ์ดํจ
- ํต์ฌ ํน์ฑ: ๊ณต์ ๋์ ์์ง๋๋ฅผ ๋์ด๊ณ , ์ ์ด๋์ ๊ฒฐํฉ๋๋ ๋ฎ์ถค
์ํํธ์จ์ด ์ฌ์ฌ์ฉ
- ์ด๋ฏธ ๊ฒ์ฆ์ด ์๋ฃ๋ ๊ธฐ๋ฅ์ ์ฌ๊ตฌ์ฑ
- ์ฌ์ฌ์ฉ ๋์: ํจ์, ๊ฐ์ฒด, ์ปดํฌ๋ํธ, ์ ํ๋ฆฌ์ผ์ด์
- ์ ๊ทผ ๋ฐฉ์:
- ์์ฑ ์ค์ฌ: ์ถ์ํ ํํ๋ฅผ ๊ตฌ์ฒดํ
- ํฉ์ฑ ์ค์ฌ: ๋ชจ๋์ ์กฐ๋ฆฝ
์ํํธ์จ์ด ์ฌ๊ณตํ
- ๊ธฐ์กด ์์คํ ์ ์ด์ฉํ์ฌ ๋ณด๋ค ๋์ ์์คํ ๊ตฌ์ถ
- ์ํํธ์จ์ด์ ์๊ธฐ๋ฅผ ์ ์ง๋ณด์ ์ธก๋ฉด์ผ๋ก ํด๊ฒฐ
- ์ฃผ์ ํ๋ก์ธ์ค:
- ๋ถ์: ๋ช ์ธ๋ฅผ ํตํด ์ฌ๊ณตํ์ ๊ฐ์น๋ฅผ ํ๋จ
- ์ฌ๊ตฌ์ฑ: ์ฝ๋๋ฅผ ์ฌ๊ตฌ์ฑ
- ์ญ๊ณตํ: ์ธ๊ณ์ธ ์ฝ๋(์ ์ง๋ณด์ ์์ ์ด ์ด๋ ค์ด ์ฝ๋)๋ก๋ถํฐ ์์ค์ฝ๋๋ฅผ ๋ณต๊ตฌ, ์ฌ๋ฐ๊ฒฌ
- ์ด์: ๋ค๋ฅธ ํ๋ซํผ์์ ์ฌ์ฉํ ์ ์๋๋ก ๋ณํ
๊ณตํต ๋ชจ๋ ์๋ณ ํ๋ก์ธ์ค
- ๋จ์ ์
๋ฌด ๊ธฐ๋ฅ ๋ถ์
- ์ ๋ฌด ๊ธฐ๋ฅ์ ์ ์ (ํ์คํ)
- ๋๋ฝ์ด๋ ์ค๋ณต๋๋ ๊ธฐ๋ฅ ํ์ธ
- ์ ์ค์ผ์ด์ค ๋ถ์
- ํฌํจ๊ด๊ณ ยซincludeยป ๋ถ์
- ๊ฒํ ํ์ ์งํ
- ๊ณตํต ๋ชจ๋ ์ ์
- ์์ธ ๊ธฐ๋ฅ ๋ช ์ธ
- ์๋ณ๋ ๊ธฐ๋ฅ ํตํฉ
- ๊ณตํต ๊ธฐ๋ฅ ํตํฉ
- ๊ด๋ฆฌ ํ๋ก์ธ์ค ์๋ฆฝ
- ๋ฌธ์ ์์ฑ
๊ณตํต ๋ชจ๋ ๋ช ์ธ ์์น
- ์์ฌ์ํต์ ์ํ ๋ช ์ธ ์์ฑ
- ์์ฌ์ํต์ด ์ ๋๋ ์ฝ๋๋ ์ธ๊ณ์ธ ์ฝ๋๋ก ๊ฐ์ฃผ
๋ชจ๋ ์์ง๋
- ์ ์: ๋ด๋ถ ์์ ๊ฐ ๊ด๊ณ์ ๋ฐ์ ๋
- ํน์ง: ์์ง๋๊ฐ ๋์์๋ก ๋ชจ๋ ๋ ๋ฆฝ์ฑ ํฅ์
์์ง๋ ๋จ๊ณ (๋์ โ ๋ฎ์)
- ๊ธฐ๋ฅ์ ์์ง๋: ๋จ์ผ ๋ฌธ์ ํด๊ฒฐ
- ์์ฐจ์ ์์ง๋: ์ถ๋ ฅ์ด ๋ค๋ฅธ ๋ชจ๋์ ์ ๋ ฅ์ผ๋ก ์ฌ์ฉ
- ํต์ ์ ์์ง๋: ํ๋์ ์ถ๋ ฅ์ ๋ค์ํ ๊ธฐ๋ฅ์ ํ์ฉ
- ์ ์ฐจ์ ์์ง๋: ์์ฐจ์ ๋ชจ๋ ์ํ
- ์๊ฐ์ ์์ง๋: ํน์ ์๊ธฐ ๋์ ์ํ
- ๋ ผ๋ฆฌ์ ์์ง๋: ์ ์ฌ ์ฑ๊ฒฉ/ํํ์ ๊ธฐ๋ฅ ํตํฉ
- ์ฐ์ฐ์ ์์ง๋: ๋ฌด๊ด๋ จ ๊ธฐ๋ฅ ํตํฉ
๋ชจ๋ ๊ฒฐํฉ๋
- ์ ์: ๋ชจ๋ ๊ฐ ์์กด์ฑ ์ ๋
- ํน์ง: ๊ฒฐํฉ๋๊ฐ ๋ฎ์์๋ก ๋ชจ๋ ๋ ๋ฆฝ์ฑ ํฅ์
๊ฒฐํฉ๋ ๋จ๊ณ (๋ฎ์ โ ๋์)
- ์๋ฃ ๊ฒฐํฉ๋
- ์ธ์์ ๋งค๊ฐ๋ณ์๋ฅผ ํตํ ์ํธ์์ฉ
- ์: ๋์๋์ฌ โท ๋์ฌ์๊ธ๊ณ์ฐ
- ์คํฌํ ๊ฒฐํฉ๋
- ๋์ผ ์๋ฃ๊ตฌ์กฐ ๊ณต์
- ์: ๋์๋์ฌ โท ํ์๋ฑ๊ธ โท ๋์ฌ์๊ธ๊ณ์ฐ
- ์ ์ด ๊ฒฐํฉ๋
- ์ ์ด ์์์ ๋ฐ๋ฅธ ์ฒ๋ฆฌ ์ ์ฐจ ๋ณํ
- ์: ์ฌ๊ณ ํํฉ (์์=1, ์์=0)
- ์ธ๋ถ ๊ฒฐํฉ๋
- ์ง์ ์ ์ธ ๋ด๋ถ ๋ฐ์ดํฐ ์ฐธ์กฐ
- ๊ณต์ ๊ฒฐํฉ๋
- ์ธ๋ถ ์ ์ธ ๋ณ์ ์ฐธ์กฐ
- ๊ด๋ จ ์๋ ๋ชจ๋์ ์ ๊ทผ ๊ฐ๋ฅ์ฑ
- ๋ด์ฉ ๊ฒฐํฉ๋
- ์ง์ ์ ์ธ ๋ด๋ถ ๊ธฐ๋ฅ/๋ฐ์ดํฐ ์ฌ์ฉ
๋ณต์ก๋ ์ธก์
๊ณต์ ๋ (Fan-In)
- ์ ์: ์์ ์ ํธ์ถํ๋ ๋ชจ๋์ ์
- ํน์ง:
- ๋์ ๊ณต์ ๋ = ์ข์ ๋ชจ๋ํ
- ์ฃผ์์ฌํญ:
- ๋จ์ผ ์คํจ์ง์ ๊ด๋ฆฌ
- ์ค์ ๊ด๋ฆฌ ํ์
- ์ฒ ์ ํ ํ ์คํธ ๊ฒ์ฆ
์ ์ด๋ (Fan-Out)
- ์ ์: ์์ ์ด ํธ์ถํ๋ ๋ชจ๋์ ์
- ํน์ง: ๋์ ์ ์ด๋๋ ์ ๋ฌด๋ก์ง ๋จ์ํ ๊ฒํ ํ์