Frontend FSD Architect
Feature-Sliced Design v2.1 ๊ธฐ๋ฐ ํ๋ก ํธ์๋ ์ํคํ
์ฒ ์๋ ์์ฑ/๋ง์ด๊ทธ๋ ์ด์
/๊ฒ์ฆ
Overview
FSD ํต์ฌ ๊ฐ์น: "์ฝ๋๋ฅผ ์ด๋์ ๋์ง ๋ชจํธํจ" ํด๊ฒฐ
- 7๊ณ์ธต ๊ตฌ์กฐ + ์๊ฒฉํ ์์กด์ฑ ๊ท์น
- ์์กด์ฑ ํผ๋, ํ ํ์
์ถฉ๋ ๋ฐฉ์ง
์ฑ๊ณผ:
- ๊ตฌ์กฐ ์ค๊ณ ์๊ฐ: 80% ๋จ์ถ
- ์ฝ๋ ๋ณ๊ฒฝ ์ํฅ: 70% ๊ฐ์
- Git ์ถฉ๋: 60% ๊ฐ์
When to Use
โ
์ ํฉ
- 20k+ LOC ์์ ํ๋ก์ ํธ
- 3๋ช
+ ํ ๊ท๋ชจ
- 6๊ฐ์+ ์ฅ๊ธฐ ์ด์
- ๋ณต์กํ ๋น์ฆ๋์ค ๋ก์ง
โ ๋ถ์ ํฉ
- MVP/POC (1-3๊ฐ์)
- 10k LOC ๋ฏธ๋ง
- 1-2๋ช
๊ฐ๋ฐ์
- ์ ์ ์ฝํ
์ธ ์์ฃผ
FSD 7๊ณ์ธต
src/
โโโ app/ # ์ ํ๋ฆฌ์ผ์ด์
์ด๊ธฐํ
โโโ pages/ # ํ์ด์ง ๋จ์ ์กฐํฉ
โโโ widgets/ # ๋
๋ฆฝ UI ๋ธ๋ก
โโโ features/ # ๋น์ฆ๋์ค ๊ธฐ๋ฅ
โโโ entities/ # ๋๋ฉ์ธ ๊ฐ์ฒด
โโโ shared/ # ๊ณตํต ๋ผ์ด๋ธ๋ฌ๋ฆฌ
์์กด์ฑ ๊ท์น: ์์ โ ํ์๋ง ํ์ฉ
Core Capabilities
1. ๊ตฌ์กฐ ์๋ ์์ฑ
ํ๋ ์์ํฌ๋ณ ๋ณด์ผ๋ฌํ๋ ์ดํธ: React, Vue, Angular, Svelte
2. ๋ง์ด๊ทธ๋ ์ด์
๊ธฐ์กด MVC/Classical โ FSD 5๋จ๊ณ ์ ํ
3. ๋ฆฐํฐ ํตํฉ
Steiger๋ก ์์กด์ฑ ์๋ฐ ์ค์๊ฐ ๊ฒ์ฆ
4. ํ๊ตญ ํ๊ฒฝ
KRW ํฌ๋งท, ํด๋ํฐ ๋ฒํธ ๋ฑ ๋ก์ปฌ๋ผ์ด์ ์ด์
Usage
์ ๊ท ํ๋ก์ ํธ
"React + TypeScript๋ก ์ ์์๊ฑฐ๋ FSD ๊ตฌ์กฐ ์์ฑํด์ค"
โ ์ ์ฒด ํด๋ ๊ตฌ์กฐ + ๋ณด์ผ๋ฌํ๋ ์ดํธ ์์ฑ
๋ง์ด๊ทธ๋ ์ด์
"๊ธฐ์กด components/ ํด๋๋ฅผ FSD ๊ตฌ์กฐ๋ก ์ ํํด์ค"
โ 5๋จ๊ณ ๋ง์ด๊ทธ๋ ์ด์
๊ณํ ์ ์
๊ฒ์ฆ
"FSD ์์กด์ฑ ๊ท์น ์๋ฐ ๊ฒ์ฌํด์ค"
โ Steiger ์คํ + ์๋ฐ ํญ๋ชฉ ๋ฆฌํฌํธ
References
references/layer-guide.md - 7๊ณ์ธต ์์ธ ๊ฐ์ด๋
references/migration-steps.md - ๋ง์ด๊ทธ๋ ์ด์
๋จ๊ณ
references/framework-templates.md - ํ๋ ์์ํฌ๋ณ ํ
ํ๋ฆฟ
references/steiger-config.md - ๋ฆฐํฐ ์ค์