์ฉ์ด ์ ์ ๋ก ๋ฒ๋ฆฌ๋ ํด๋ก๋ ์ฝ๋ China ์์ฅ ํธ๋ ๋ ์คํฌ๋ํ ์คํฌ๋ฆฝํธ ํ๋ ๋ฐฉ๋ฒ
React + TypeScript ํ๋ก์ ํธ๋ฅผ ํ๋ค ๋ณด๋ฉด
์ด๋ ์๊ฐ ์ด๋ฐ ๋๋์ด ๋ญ๋๋ค.
“์ด ์ฝ๋… ๋๊ฐ ์ด ๊ฑฐ์ง?”
๊ฐ์ ํ, ๊ฐ์ ํ๋ก์ ํธ์ธ๋ฐ
์ปดํฌ๋ํธ ์คํ์ผ์ ์ ๊ฐ๊ฐ์ด๊ณ
ํ์
์ ์ธ ๋ฐฉ์๋ ํต์ผ์ด ์ ๋ฉ๋๋ค.
์ด๋ด ๋ ์ง์ง ๋์์ด ๋๋ ๋๊ตฌ๊ฐ
ํด๋ก๋ ์ฝ๋์
๋๋ค.
์ด๋ฒ ๊ธ์์๋
ํด๋ก๋ ์ฝ๋๋ฅผ ํ์ฉํด
React + TypeScript ์คํ์ผ์ ์ผ๊ด๋๊ฒ ์ ์งํ๋ ๋ฐฉ๋ฒ์
์ฝ๊ณ ์ฌ๋ฏธ์๊ฒ ํ์ด๋๋ฆฌ๊ฒ ์ต๋๋ค.
๋๋ถ๋ถ์ ํ๋ก์ ํธ๋
์ฒ์์ ๊น๋ํ๊ฒ ์์ํฉ๋๋ค.
ํ์ง๋ง ์๊ฐ์ด ์ง๋๋ฉด
์ฌ๋๋ ๋๊ณ , ์ฝ๋๋ ๋๊ณ ,
๊ธํ ์์ ์ด ๋ฐ๋ณต๋ฉ๋๋ค.
๊ทธ ๊ฒฐ๊ณผ
props ๊ตฌ์กฐ๋ ์ ๊ฐ๊ฐ,
ํ์
์ ์ธ ์์น๋ ์ ๋ฉ๋๋ก๊ฐ ๋ฉ๋๋ค.
๋ฌธ์ ๋
์ด๊ฒ ๊ธฐ๋ฅ ์ค๋ฅ๋ณด๋ค ๋ ํผ๋กํ๋ค๋ ์ ์
๋๋ค.
์ฝ๊ธฐ ํ๋ ์ฝ๋ = ์ ์ง๋ณด์ ์ง์ฅ
ํด๋ก๋ ์ฝ๋๋
๋จ์ํ ์ฝ๋๋ฅผ “๊ณ ์ณ์ฃผ๋ AI”๊ฐ ์๋๋๋ค.
์ฌ๋ฌ ํ์ผ์ ๋์์ ์ฝ๊ณ
๊ณตํต ํจํด์ ์ฐพ์๋ด๋ ๋ฐ
์์ฃผ ๊ฐํฉ๋๋ค.
์๋ฅผ ๋ค์ด
Header.tsx, Footer.tsx, Layout.tsx๋ฅผ ํจ๊ป ๋ณด๋ฉด
“์, ์ด ํ๋ก์ ํธ๋ ์ด๋ฐ ์คํ์ผ์ด๊ตฌ๋”๋ฅผ
๋งฅ๋ฝ์ผ๋ก ์ดํดํฉ๋๋ค.
๊ทธ๋์ ํ ํ์ผ๋ง ๋์ ธ์ค๋
๊ธฐ์กด ์คํ์ผ์ ๋ง์ถฐ ์์ ์์ ์ ์ํด ์ค๋๋ค.
์ด๊ฒ ์ฌ๋์ด ๋ฆฌ๋ทฐํ๋ ๊ฒ๋ณด๋ค
๋น ๋ฅผ ๋๋ ๋ง์ต๋๋ค.
๊ฐ์ฅ ๋จผ์ ํต์ผํด์ผ ํ ๊ฒ์
์ปดํฌ๋ํธ ๊ตฌ์กฐ์
๋๋ค.
์๋ฅผ ๋ค์ด ์ด๋ฐ ์์ฒญ์ด ๊ฐ๋ฅํฉ๋๋ค.
@components/Header.tsx @components/Footer.tsx
์ด ํ๋ก์ ํธ ๊ธฐ์ค์ผ๋ก ์ปดํฌ๋ํธ ๊ตฌ์กฐ๋ฅผ ํต์ผํด์ค
ํด๋ก๋ ์ฝ๋๋
props ์์น, ํจ์ ์ ์ธ ๋ฐฉ์, JSX ์ ๋ ฌ๊น์ง
๊ธฐ์กด ์คํ์ผ์ ๊ธฐ์ค์ผ๋ก ๋ง์ถฅ๋๋ค.
์ ๊ท์น์ ๋ง๋๋ ๊ฒ ์๋๋ผ
์ด๋ฏธ ์๋ ๊ท์น์ ๊ฐํํ๋ ๋๋
๊ทธ๋์ ๊ฑฐ๋ถ๊ฐ ์์ด ์ ์ฉํ ์ ์์ต๋๋ค.
TypeScript์์ ๊ฐ์ฅ ํํ ํผ๋์
type๊ณผ interface์ ํผ์ฉ์
๋๋ค.
์ด๋ค ํ์ผ์ type,
์ด๋ค ํ์ผ์ interface๋ฅผ ์๋๋ค.
์ด๋ด ๋ ํด๋ก๋ ์ฝ๋์ ์ด๋ ๊ฒ ์์ฒญํด ๋ณด์ธ์.
@src/types ๊ธฐ์ค์ผ๋ก
์ด ํ๋ก์ ํธ ํ์
์ ์ธ ์คํ์ผ์ ๋ง๊ฒ ์์ ํด์ค
๊ทธ๋ฌ๋ฉด
ํ์
์์น, ๋ค์ด๋ฐ ๊ท์น, export ๋ฐฉ์๊น์ง
์์ฐ์ค๋ฝ๊ฒ ๋ง์ถฐ์ค๋๋ค.
์ด๊ฑด
์ฌ๋์ด ์ผ์ผ์ด ๋ง๋ก ์ค๋ช
ํ๊ธฐ ์ด๋ ค์ด ๋ถ๋ถ์
๋๋ค.
๊ฐ์ธ๋ง ์ ์จ์๋
์คํ์ผ์ด ์ ์ง๋์ง ์์ต๋๋ค.
๊ฐ์ฅ ์ข์ ๋ฐฉ๋ฒ์
๊ธฐ์ค ํ์ผ์ ๋ช ๊ฐ ์ ํด๋๋ ๊ฒ
Header, Footer, ๊ณตํต Button ๊ฐ์ ํ์ผ์
ํด๋ก๋ ์ฝ๋์ ์์ฃผ ์ฐธ์กฐ์ํค๋ฉด
๊ทธ๊ฒ ๊ณง ํ๋ก์ ํธ ํ์ค์ด ๋ฉ๋๋ค.
์๋ก์ด ์ฝ๋๊ฐ ๋ค์ด์ฌ ๋๋ง๋ค
“์ด ์คํ์ผ์ ๋ง๊ฒ ์ ๋ฆฌํด์ค”๋ผ๊ณ ์์ฒญํ๋ฉด
๋ฆฌ๋ทฐ ๋ถ๋ด๋ ํ ์ค์ด๋ญ๋๋ค.
ํด๋ก๋ ์ฝ๋๋
ํ ๋ฌธํ๊น์ง ์ ๋ฆฌํด ์ฃผ๋ ๋๊ตฌ๊ฐ ๋ฉ๋๋ค.
React + TypeScript ํ๋ก์ ํธ์์
์ค๋ ฅ ์ฐจ์ด๋ ๊ฒฐ๊ตญ ์ฌ๊ธฐ์ ๋ฉ๋๋ค.
์ฝ๋๋ฅผ ์ผ๋ง๋ ์ ์ฐ๋๋๊ฐ ์๋๋ผ
์ผ๋ง๋ ๊ฐ์ ์คํ์ผ๋ก ์ฐ๋๋์
๋๋ค.
ํด๋ก๋ ์ฝ๋๋ฅผ ํ์ฉํ๋ฉด
๊ท์น์ ๊ฐ์ํ์ง ์์๋
์์ฐ์ค๋ฝ๊ฒ ํต์ผ๋ฉ๋๋ค.
๋ค์์ ์ฝ๋๊ฐ ์ง์ ๋ถํด ๋ณด์ธ๋ค๋ฉด
ํผ๋ด์ง ๋ง๊ณ ,
ํด๋ก๋ ์ฝ๋์๊ฒ ๋จผ์ ๋ฌผ์ด๋ณด์ธ์.
๊ทธ๊ฒ ๋ ๋น ๋ฅด๊ณ ,
ํ ๋ถ์๊ธฐ๋ ํจ์ฌ ์ข์์ง๋๋ค ๐