# [[Feature-Sliced Design (FSD)|Feature-Sliced Design (FSD]] ## ๐Ÿ“Œ Brief Summary **[[Feature-Sliced Design|Feature-Sliced Design]] (FSD)**๋Š” ํ”„๋ŸฐํŠธ์—”๋“œ ์‹œ์Šคํ…œ ๋‚ด ์•ฑ๊ณผ ํŒจํ‚ค์ง€์˜ ์ฝ”๋“œ๋ฅผ ์ฒด๊ณ„์ ์œผ๋กœ ์กฐ์งํ™”ํ•˜์—ฌ ์กฐ์ง ์ „์ฒด์˜ ์ผ๊ด€์„ฑ์„ ๋ณด์žฅํ•˜๋„๋ก ๋•๋Š” ์•„ํ‚คํ…์ฒ˜ ๋ฐฉ๋ฒ•๋ก ์ž…๋‹ˆ๋‹ค [1]. ๋ช…ํ™•ํ•œ ์ฑ…์ž„๊ณผ ์˜์กด์„ฑ ๊ทœ์น™์„ ๊ฐ€์ง„ ๊ณ„์ธต(Layer)์œผ๋กœ ์ฝ”๋“œ๋ฒ ์ด์Šค๋ฅผ ๋‚˜๋ˆ„์–ด, ๊ฐœ๋ฐœ์ž๊ฐ€ ์ฝ”๋“œ๊ฐ€ ์–ด๋””์— ์œ„์น˜ํ•ด์•ผ ํ•˜๊ณ  ์–ด๋–ป๊ฒŒ ์ž„ํฌํŠธ๋˜์–ด์•ผ ํ•˜๋Š”์ง€ ์˜ˆ์ธกํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ฉ๋‹ˆ๋‹ค [1, 2]. ๊ฒฐ๊ณผ์ ์œผ๋กœ '์ „์—ญ ๊ณต์œ  ํด๋”'๊ฐ€ ๋ฌด๋ถ„๋ณ„ํ•œ ์ŠคํŒŒ๊ฒŒํ‹ฐ ์ฝ”๋“œ์˜ ์“ฐ๋ ˆ๊ธฐ์žฅ์œผ๋กœ ๋ณ€ํ•˜๋Š” ๊ฒƒ์„ ๋ฐฉ์ง€ํ•˜๊ณ , ๋ฆฌํŒฉํ† ๋ง์˜ ์•ˆ์ „์„ฑ์„ ํ™•๋ณดํ•˜๋ฉฐ ์ƒˆ๋กœ์šด ํŒ€์›์˜ ์˜จ๋ณด๋”ฉ ์‹œ๊ฐ„์„ ๋‹จ์ถ•ํ•ฉ๋‹ˆ๋‹ค [1-3]. ## ๐Ÿ“– Core Content - **๋ช…ํ™•ํ•œ ๊ณ„์ธต์  ๊ตฌ์กฐ (Layered Structure):** FSD๋Š” ์ฝ”๋“œ๋ฒ ์ด์Šค๋ฅผ ์—„๊ฒฉํ•œ ์ฑ…์ž„์— ๋”ฐ๋ผ ์—ฌ๋Ÿฌ ๊ณ„์ธต์œผ๋กœ ๋‚˜๋ˆ•๋‹ˆ๋‹ค. ์ผ๋ฐ˜์ ์ธ UI ์ปดํฌ๋„ŒํŠธ๋‚˜ ํ—ฌํผ ํ•จ์ˆ˜, ๋””์ž์ธ ํ† ํฐ์„ ๋‹ด๋Š” ๊ฐ€์žฅ ๋‚ฎ์€ ๊ณ„์ธต์ธ `Shared`๋ถ€ํ„ฐ ์‹œ์ž‘ํ•˜์—ฌ, ๋น„์ฆˆ๋‹ˆ์Šค ๋„๋ฉ”์ธ์„ ๋‚˜ํƒ€๋‚ด๋Š” `Entities`, ์‚ฌ์šฉ์ž๋ฅผ ์œ„ํ•œ ๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง(์˜ˆ: ๊ฒฐ์ œ ์ฒ˜๋ฆฌ)์„ ๋‹ด์€ `Features`, ์ด๋Ÿฌํ•œ ๊ธฐ๋Šฅ๊ณผ ์—”ํ‹ฐํ‹ฐ๋ฅผ ๊ฒฐํ•ฉํ•˜๋Š” `Widgets`, ์ „์ฒด ํ™”๋ฉด์„ ๊ตฌ์„ฑํ•˜๋Š” `Pages`, ๊ทธ๋ฆฌ๊ณ  ์Šคํƒ€์ผ ๋ฐ ๋ผ์šฐํŒ…์ด ์ดˆ๊ธฐํ™”๋˜๋Š” ์ง„์ž…์ ์ธ `App`์œผ๋กœ ๊ตฌ์„ฑ๋ฉ๋‹ˆ๋‹ค [1]. - **์˜์กด์„ฑ ๋ฐฉํ–ฅ ๋ฐ ๊ณต๊ฐœ API (Dependencies & [[Public APIs|Public APIs]]):** FSD๋Š” ์ƒ์œ„ ๊ณ„์ธต์ด ํ•˜์œ„ ๊ณ„์ธต์„ ํ–ฅํ•ด์„œ๋งŒ ์˜์กด์„ฑ์„ ๊ฐ€์ง€๋„๋ก ๋ฐฉํ–ฅ์„ฑ์„ ํ†ต์ œํ•˜๋ฉฐ, ์Šฌ๋ผ์ด์Šค(slice) ๊ฒฝ๊ณ„์—์„œ ๋ช…์‹œ์ ์ธ ๊ณต๊ฐœ API(Public APIs)๋ฅผ ๋…ธ์ถœํ•  ๊ฒƒ์„ ๊ถŒ์žฅํ•ฉ๋‹ˆ๋‹ค [4, 5]. ์˜ˆ๋ฅผ ๋“ค์–ด, ์•ฑ์€ ํŒจํ‚ค์ง€์˜ ๊นŠ์€ ๋‚ด๋ถ€ ํŒŒ์ผ์„ ์ง์ ‘ ์ž„ํฌํŠธํ•ด์„œ๋Š” ์•ˆ ๋˜๋ฉฐ(`index.ts` ๋“ฑ์„ ํ†ตํ•ด์„œ๋งŒ ์ ‘๊ทผ), ๊ธฐ๋Šฅ(`Features`)์€ ์˜๋„๋œ ๊ณต์œ  ์Šฌ๋ผ์ด์Šค๊ฐ€ ์—†๋Š” ํ•œ ๋‹ค๋ฅธ ๊ธฐ๋Šฅ์„ ์ง์ ‘ ์ž„ํฌํŠธํ•˜์ง€ ์•Š์•„์•ผ ํ•ฉ๋‹ˆ๋‹ค [4, 5]. - **๋„๋ฉ”์ธ ์ฃผ๋„ ์„ค๊ณ„(DDD)์˜ ๊ตฌ์ฒดํ™”:** ํ”„๋ŸฐํŠธ์—”๋“œ ํ™˜๊ฒฝ์—์„œ ๋„๋ฉ”์ธ ์ฃผ๋„ ์„ค๊ณ„๋ฅผ ์‹ค์šฉ์ ์ธ ํŒŒ์ผ ์‹œ์Šคํ…œ์œผ๋กœ ๋ณ€ํ™˜ํ•˜๋Š” ๊ฒƒ์€ ๊นŒ๋‹ค๋กญ์ง€๋งŒ, FSD๋Š” ์ด๋ฅผ ๊ตฌ์ฒด์ ์ธ ํ”„๋กœ์ ํŠธ ๊ตฌ์กฐ๋กœ ๋งตํ•‘ํ•ด ์ค๋‹ˆ๋‹ค [6]. ํ•ต์‹ฌ ๋„๋ฉ”์ธ ๊ฐœ๋…์€ `entities/`์—, ์‚ฌ์šฉ์ž ๋Œ€๋ฉด ๊ธฐ๋Šฅ์€ `features/`์—, ์žฌ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ์›์‹œ ์š”์†Œ๋Š” `shared/`์— ๋ฐฐ์น˜ํ•จ์œผ๋กœ์จ ๋„๋ฉ”์ธ ๊ฒฝ๊ณ„๋ฅผ ๋””๋ ‰ํ† ๋ฆฌ ๋ฐ ์ž„ํฌํŠธ ์ˆ˜์ค€์—์„œ ์‹œ๊ฐ์ ์œผ๋กœ ๋ช…ํ™•ํ•˜๊ฒŒ ๋“œ๋Ÿฌ๋ƒ…๋‹ˆ๋‹ค [6]. - **๋ชจ๋…ธ๋ ˆํฌ ์•„ํ‚คํ…์ฒ˜์™€์˜ ์‹œ๋„ˆ์ง€:** ๋ชจ๋…ธ๋ ˆํฌ([[Monorepo|Monorepo]]) ํ™˜๊ฒฝ์—์„œ FSD๋ฅผ ์ ์šฉํ•˜๋ฉด UI ํ‚คํŠธ๋‚˜ API ํด๋ผ์ด์–ธํŠธ ๋“ฑ์€ ๊ณต์œ  ํŒจํ‚ค์ง€๋กœ ๋ถ„๋ฆฌํ•˜๊ณ , ๊ฐ ์•ฑ๊ณผ ๋„๋ฉ”์ธ ํŒจํ‚ค์ง€ ๋‚ด๋ถ€๋Š” FSD ๊ณ„์ธต์— ๋”ฐ๋ผ ๊ตฌ์กฐํ™”ํ•˜๋Š” "๋‘ ์„ธ๊ณ„์˜ ์žฅ์ (best of both worlds)"์„ ์ทจํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค [7]. ์ด๋Š” ๋Œ€๊ทœ๋ชจ ์‹œ์Šคํ…œ์—์„œ ์šฐ๋ฐœ์ ์ธ ๊ฒฐํ•ฉ(accidental coupling)์„ ํฌ๊ฒŒ ์ค„์—ฌ์ค๋‹ˆ๋‹ค [4]. ## ๐Ÿ”— Knowledge Connections - **Related Topics:** [[Monorepo Architecture|Monorepo Architecture]], Atomic Design, Domain-Driven Design (DDD), [[Public APIs|Public APIs]] - **Projects/Contexts:** [[แ„ƒแ…ขแ„€แ…ฒแ„†แ…ฉ แ„’แ…ชแ†จแ„Œแ…กแ†ผแ„‰แ…ฅแ†ผแ„€แ…ช แ„‹แ…ฒแ„Œแ…ตแ„‡แ…ฉแ„‰แ…ฎแ„‰แ…ฅแ†ผแ„‹แ…ต แ„‹แ…ญแ„€แ…ฎแ„ƒแ…ฌแ„‚แ…ณแ†ซ แ„‘แ…ณแ„…แ…ฅแ†ซแ„แ…ณแ„‹แ…ฆแ†ซแ„ƒแ…ณ แ„†แ…ฉแ„‚แ…ฉแ„…แ…ฆแ„‘แ…ฉ แ„‘แ…ณแ„…แ…ฉแ„Œแ…ฆแ†จแ„แ…ณ|๋Œ€๊ทœ๋ชจ ํ™•์žฅ์„ฑ๊ณผ ์œ ์ง€๋ณด์ˆ˜์„ฑ์ด ์š”๊ตฌ๋˜๋Š” ํ”„๋ŸฐํŠธ์—”๋“œ ๋ชจ๋…ธ๋ ˆํฌ ํ”„๋กœ์ ํŠธ]], [[Turborepo แ„†แ…ตแ†พ Nxแ„‹แ…ช แ„€แ…กแ‡€แ„‹แ…ณแ†ซ แ„‡แ…ตแ†ฏแ„ƒแ…ณ แ„‹แ…ฉแ„แ…ฆแ„‰แ…ณแ„แ…ณแ„…แ…ฆแ„‹แ…ตแ„‰แ…งแ†ซ แ„ƒแ…ฉแ„€แ…ฎแ„…แ…ณแ†ฏ แ„’แ…ชแ†ฏแ„‹แ…ญแ†ผแ„’แ…กแ„‚แ…ณแ†ซ แ„ƒแ…ขแ„€แ…ฒแ„†แ…ฉ แ„Œแ…ฉแ„Œแ…ตแ†จแ„‹แ…ด React แ„‰แ…ตแ„‰แ…ณแ„แ…ฆแ†ท|Turborepo ๋ฐ Nx์™€ ๊ฐ™์€ ๋นŒ๋“œ ์˜ค์ผ€์ŠคํŠธ๋ ˆ์ด์…˜ ๋„๊ตฌ๋ฅผ ํ™œ์šฉํ•˜๋Š” ๋Œ€๊ทœ๋ชจ ์กฐ์ง์˜ React ์‹œ์Šคํ…œ]] - **Contradictions/Notes:** ์†Œ์Šค์— ๋”ฐ๋ฅด๋ฉด [[Atomic Design|Atomic Design]]์€ UI ์ปดํฌ๋„ŒํŠธ์™€ ๋””์ž์ธ ์‹œ์Šคํ…œ์„ ๊ตฌ์„ฑํ•˜๋Š” ๋ฐ๋Š” ๊ฐ•๋ ฅํ•œ ์–ธ์–ด์ง€๋งŒ ๋„๋ฉ”์ธ ๋กœ์ง์˜ ์œ„์น˜๋ฅผ ์ผ๊ด€๋˜๊ฒŒ ์ง€์ •ํ•˜๊ธฐ ์–ด๋ ต๊ฒŒ ๋งŒ๋“œ๋Š” ๋ฐ˜๋ฉด, FSD๋Š” ๋ช…ํ™•ํ•œ ๊ธฐ๋Šฅ(Feature) ๊ฒฝ๊ณ„์™€ ์˜์กด์„ฑ ๋ฐฉํ–ฅ์„ ์ œ๊ณตํ•˜์—ฌ ๋Œ€๊ทœ๋ชจ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ์•„ํ‚คํ…์ฒ˜์  ์ผ๊ด€์„ฑ์„ ์œ ์ง€ํ•˜๋Š” ๋ฐ ๋” ์ ํ•ฉํ•˜๋‹ค๊ณ  ๋น„๊ต๋ฉ๋‹ˆ๋‹ค [4]. --- *Last updated: 2026-04-26*