๐ ํ์ต ๋ชฉํ
-
๊ด์ฌ์ฌ์ ๋ถ๋ฆฌ(SoC, Separation of Concerns)๊ฐ ๋ฌด์์ธ์ง ์ ์ ํ ์์๋ฅผ ๋ค์ด ์ค๋ช
ํ ์ ์๋ค.
-
Custom Hook์ ๋ํ ๊ฐ๋
์ ์ดํดํ๊ณ , ํจ์ ์ปดํฌ๋ํธ๋ก๋ถํฐ ๋ก์ง(State, Effect ๋ฑ)์ ๊ด์ฌ์ฌ์ ๋ง๊ฒ ์ ์ ํ ๋ถ๋ฆฌํ ์ ์๋ค.
๊ด์ฌ์ฌ์ ๋ถ๋ฆฌ
- ๋ช
ํํ ์ด๋ค ๋์์ ํ๋์ง
- ๊ฐ๋
์ฑ์ ๋ํ๊ณ ๊ธฐ๋ฅ๋ณ๋ก / ์ ์ง๋ณด์ ๋์ผํ ๊ธฐ๋ฅ์ ํ๋ ์ฝ๋๋ผ๋ฆฌ ๋ชจ์๋์
์ฌ์ฉ์ด์
- ์์ฑํ ๋ก์ง์ ์กฐ๊ฑด์ด ์ถ๊ฐ๋๋ค๋ฉด?
- ๊ธฐํ์ด ๋ณ๊ฒฝ๋์ด ์์ฑํ ๋ถ๋ถ์ ๋ณ๊ฒฝํด์ผ ํ๋ค๋ฉด?
- ์ํํ ์ ์ง๋ณด์
์ฅ์
- ๋ช
๋ฃ์ฑ
- ์ฌ์ฌ์ฉ์ฑ
- ์ ์ง๋ณด์์ฑ : ๋ณ๊ฒฝ์ฌํญ์ด ์๊ฒผ์ ๋ ๊ด์ฌ์ฌ์ ๋ถ๋ฆฌ๊ฐ ์ ์ด๋ฃจ์ด์ง ๊ฒฝ์ฐ ์ฝ๊ฒ ๋ณ๊ฒฝํ ์ ์๋ค
- ํ
์คํธ ์ฝ๋๋ฅผ ์์ฑํ๊ธฐ ์ฌ์์ง๋ค : ์์ฑํ ์ฝ๋๊ฐ ์ ๋๋ก ์ํ์ด ๋๋์ง
Loose Coupling vs. High Cohesive
- ์ฝ๋์ ๊ฒฐํฉ๋ ๋ฐ ์์ง๋๊ฐ ์ ๋
- ์ฝ๋๊ฐ ์๋ก ์ฝํ์๋ ์ ๋ / ์ ์ฌํ ๋ด์ฉ์ด ๋ชจ์ฌ์๋ ์ ๋
-> ๊ด์ฌ์ฌ์ ๋ถ๋ฆฌ๊ฐ ์ ์ ํ ์ ๋์ด ์๋ค๋ฉด ๋ฎ์ ๊ฒฐํฉ๋, ๋์ ์์ง๋
EX) ๋งฅ๋๋ ๋
์ฃผ๋ฌธ -> ์ฃผ๋ฐฉ์ผ๋ก ์ฃผ๋ฌธ์ด ์ ๋ฌ๋จ
ํ ์ฌ๋์ด ์ฃผ๋ฌธ -> ์กฐ๋ฆฌ๊น์ง ํ๋ค๋ฉด ์๊ฐ์ด ์ค๋๊ฑธ๋ฆผ / ๋นํจ์จ์
Custom Hook
- use ๋ก ์์
- ํ
์์ ํ
๋ ๊ฐ๋ฅ
- ์คํ
์ดํธ ๊ฐ์ ๊ณต์ ํ์ง ์์
*divide and conquer