--- id: [[P-Reinforce]]-AUTO-F36267 category: "10_Wiki/πŸ’‘ Topics/Design & Experience" confidence_score: 0.90 tags: [auto-reinforced] last_reinforced: 2026-04-20 github_commit: "[P-Reinforce] Continuous Worker - μ»΄ν¬λ„ŒνŠΈ 기반 μ›Ή ν”„λ ˆμž„μ›Œν¬ μ•„ν‚€ν…μ²˜ 섀계" --- # [[μ»΄ν¬λ„ŒνŠΈ 기반 μ›Ή ν”„λ ˆμž„μ›Œν¬ μ•„ν‚€ν…μ²˜ 섀계]] ## πŸ“Œ ν•œ 쀄 톡찰 (The Karpathy Summary) > μ»΄ν¬λ„ŒνŠΈ 기반 μ›Ή ν”„λ ˆμž„μ›Œν¬ μ•„ν‚€ν…μ²˜λŠ” νŠΉμ • κΈ°λŠ₯μ΄λ‚˜ UI μš”μ†Œλ₯Ό κ΅¬ν˜„ν•˜κΈ° μœ„ν•΄ HTML ꡬ쑰, CSS μŠ€νƒ€μΌ, [[JavaScript]] λ™μž‘μ„ ν•˜λ‚˜μ˜ λ‹¨μœ„(μ»΄ν¬λ„ŒνŠΈ)둜 λ¬Άμ–΄ λ‹€λ£¨λŠ” 섀계 λ°©μ‹μž…λ‹ˆλ‹€ [1]. κ³Όκ±° 기술적 μ—­ν•  μ€‘μ‹¬μ˜ λΆ„λ¦¬μ—μ„œ λ²—μ–΄λ‚˜ κΈ°λŠ₯ μ€‘μ‹¬μ˜ 수직적 λͺ¨λ“ˆν™”λ₯Ό 톡해 μ½”λ“œμ˜ μž¬μ‚¬μš©μ„±μ„ 높이고 독립적인 개발과 ν…ŒμŠ€νŠΈλ₯Ό κ°€λŠ₯ν•˜κ²Œ ν•©λ‹ˆλ‹€ [1, 2]. ν”„λ‘œμ νŠΈ 규λͺ¨κ°€ 컀짐에 따라 λ°œμƒν•˜λŠ” 결합도 증가와 μ»΄ν¬λ„ŒνŠΈ λΉ„λŒ€ν™” 문제λ₯Ό ν•΄κ²°ν•˜κΈ° μœ„ν•΄, ν˜„λŒ€μ—λŠ” 마이크둜 ν”„λ‘ νŠΈμ—”λ“œ 및 FSD([[Feature-Sliced Design]])와 같은 λ°œμ „λœ μ•„ν‚€ν…μ²˜ 방법둠과 κ²°ν•©λ˜μ–΄ μ‚¬μš©λ©λ‹ˆλ‹€ [3-5]. ## πŸ“– κ΅¬μ‘°ν™”λœ 지식 (Synthesized Content) - **μ›Ή νŒ¨λŸ¬λ‹€μž„μ˜ 변화와 μ»΄ν¬λ„ŒνŠΈμ˜ λ“±μž₯:** 초기 μ›Ή κ°œλ°œμ€ HTML(ꡬ쑰), CSS(ν‘œν˜„), JS(λ™μž‘)둜 기술적 역할을 λ‚˜λˆ„λŠ” μˆ˜ν‰μ  관심사 뢄리 방식을 μ‚¬μš©ν–ˆμŠ΅λ‹ˆλ‹€ [6, 7]. ν•˜μ§€λ§Œ μ›Ή ν”„λ ˆμž„μ›Œν¬μ˜ λ°œμ „κ³Ό ν•¨κ»˜ 이듀을 ν•˜λ‚˜μ˜ κΈ°λŠ₯ λ‹¨μœ„λ‘œ λ¬ΆλŠ” 'μ»΄ν¬λ„ŒνŠΈ' νŒ¨λŸ¬λ‹€μž„μ΄ λ“±μž₯ν–ˆμŠ΅λ‹ˆλ‹€ [1]. μ΄λŠ” κΈ°μ‘΄ 계측ꡬ쑰λ₯Ό 수직으둜 κ΄€ν†΅ν•˜λ©° κΈ°λŠ₯ μ€‘μ‹¬μ˜ λͺ¨λ“ˆν™”λ₯Ό μ΄λŒμ—ˆκ³ , 개발 생산성과 μœ μ§€λ³΄μˆ˜μ„±μ„ 크게 ν–₯μƒμ‹œμΌ°μŠ΅λ‹ˆλ‹€ [2]. - **μ»΄ν¬λ„ŒνŠΈ μ•„ν‚€ν…μ²˜μ˜ ν•œκ³„μ™€ 결합도 문제:** μ»΄ν¬λ„ŒνŠΈ κ΅¬μ‘°λŠ” 만λŠ₯이 μ•„λ‹ˆμ—ˆμœΌλ©°, λŒ€κ·œλͺ¨ ν”„λ‘œμ νŠΈμ—μ„œλŠ” ν•˜μœ„ μ»΄ν¬λ„ŒνŠΈλ‘œ 데이터λ₯Ό λ‹¨μˆœνžˆ μ „λ‹¬ν•˜κΈ° μœ„ν•΄ λΆˆν•„μš”ν•œ 속성(props)을 μ—¬λŸ¬ 단계에 걸쳐 ν†΅κ³Όμ‹œμΌœμ•Ό ν•˜λŠ” 'Props drilling' 문제둜 인해 결합도가 λ†’μ•„μ§€λŠ” ν•œκ³„μ— μ§λ©΄ν–ˆμŠ΅λ‹ˆλ‹€ [8]. λ˜ν•œ, ν•˜λ‚˜μ˜ μ»΄ν¬λ„ŒνŠΈ μ•ˆμ— 데이터 관리, ν‘œν˜„, λΉ„μ¦ˆλ‹ˆμŠ€ 둜직 λ“± λ„ˆλ¬΄ λ§Žμ€ μ±…μž„μ΄ μ§‘μ€‘λ˜μ–΄ 단일 μ±…μž„ 원칙(SRP)을 μœ„λ°˜ν•˜λŠ” 'μ»΄ν¬λ„ŒνŠΈ λΉ„λŒ€ν™”' ν˜„μƒμ΄ λ°œμƒν–ˆμŠ΅λ‹ˆλ‹€ [4]. - **계측적 κ΄€μ‹¬μ‚¬μ˜ μž¬λ„μž…κ³Ό λ°œμ „:** μ»΄ν¬λ„ŒνŠΈμ˜ ν•œκ³„λ₯Ό κ·Ήλ³΅ν•˜κΈ° μœ„ν•΄ ν”„λ‘ νŠΈμ—”λ“œ μ•„ν‚€ν…μ²˜λŠ” μ»΄ν¬λ„ŒνŠΈ λ‚΄λΆ€μ—μ„œ λ‹€μ‹œ 계측적 관심사λ₯Ό λΆ„λ¦¬ν•˜λŠ” λ°©ν–₯으둜 μ§„ν™”ν–ˆμŠ΅λ‹ˆλ‹€ [9]. - **UI 계측 ꡬ쑰화:** [[Atomic Design Pattern]] 등을 λ„μž…ν•˜μ—¬ UI μ»΄ν¬λ„ŒνŠΈμ˜ 계측을 μ„Έλ°€ν•˜κ²Œ λΆ„λ¦¬ν•˜κ³  역할을 λΆ„λͺ…νžˆ ν–ˆμŠ΅λ‹ˆλ‹€ [10]. - **단방ν–₯ μ˜μ‘΄μ„± ꡬ좕:** [[CSS-in-JS]], [[CSS Modules]] 등을 톡해 CSSκ°€ HTML ꡬ쑰와 JavaScript 논리λ₯Ό 따라가도둝 단방ν–₯ μ˜μ‘΄μ„±(데이터 β†’ ν™”λ©΄)을 λ§Œλ“€μ—ˆμŠ΅λ‹ˆλ‹€ [11, 12]. - **μƒνƒœ 관리 및 λΉ„μ¦ˆλ‹ˆμŠ€ 둜직 뢄리:** λ·°(ν™”λ©΄)와 데이터 λ‘œμ§μ„ λΆ„λ¦¬ν•˜κ³ , 비동기 ν†΅μ‹ μ΄λ‚˜ 캐싱과 같은 μ„œλ²„ μƒνƒœ 관리λ₯Ό λ³„λ„μ˜ κ³„μΈ΅μœΌλ‘œ μœ„μž„ν•˜μ—¬ μ»΄ν¬λ„ŒνŠΈλŠ” 화면을 그리고 이벀트λ₯Ό λ°›λŠ” μ—­ν• μ—λ§Œ μ§‘μ€‘ν•˜λ„λ‘ μ„€κ³„ν–ˆμŠ΅λ‹ˆλ‹€ [12-14]. - **λŒ€κ·œλͺ¨ ν™•μž₯을 μœ„ν•œ FSD와 마이크둜 ν”„λ‘ νŠΈμ—”λ“œ:** - **[[Feature-Sliced Design (FSD)]]:** ν”„λ‘œμ νŠΈκ°€ κ±°λŒ€ν•΄μ§€λ©΄ 전톡적인 역할별 폴더 ꡬ쑰(/components, /api λ“±)λ§ŒμœΌλ‘œλŠ” λ³΅μž‘μ„±μ„ κ°λ‹Ήν•˜κΈ° μ–΄λ ΅μŠ΅λ‹ˆλ‹€ [5, 15]. FSD μ•„ν‚€ν…μ²˜λŠ” κΈ°λŠ₯을 κΈ°μ€€μœΌλ‘œ μ½”λ“œλ₯Ό λΆ„λ¦¬ν•˜μ—¬ ν•˜λ‚˜μ˜ κΈ°λŠ₯ λ‹¨μœ„μ— ν•„μš”ν•œ λͺ¨λ“  νŒŒμΌμ„ 같은 폴더에 λͺ¨μ•„ κ΄€λ¦¬ν•¨μœΌλ‘œμ¨ λͺ¨λ“ˆ κ°„ 결합도λ₯Ό 쀄이고 독립성을 λ†’μž…λ‹ˆλ‹€ [5, 16]. - **마이크둜 ν”„λ‘ νŠΈμ—”λ“œ (Micro [[Frontend]]s):** κ±°λŒ€ν•œ 단일 ν”„λ‘ νŠΈμ—”λ“œ(Frontend Monolith)λ₯Ό μž‘κ³  독립적인 μ—¬λŸ¬ 쑰각으둜 λ‚˜λˆ„μ–΄ 각 κ°œλ°œνŒ€μ΄ 기술 μŠ€νƒμ— ꡬ애받지 μ•Šκ³  자율적으둜 개발 및 배포할 수 있게 ν•˜λŠ” μ•„ν‚€ν…μ²˜μž…λ‹ˆλ‹€ [3, 17]. λŸ°νƒ€μž„ 톡합, μ›Ή μ»΄ν¬λ„ŒνŠΈ, λͺ¨λ“ˆ νŽ˜λ”λ ˆμ΄μ…˜, 라우트 기반 λ˜λŠ” μ»΄ν¬λ„ŒνŠΈ 기반 ν•©μ„± λ“±μ˜ 방식을 ν™œμš©ν•΄ μ–΄ν”Œλ¦¬μΌ€μ΄μ…˜μ„ μ‘°λ¦½ν•©λ‹ˆλ‹€ [18, 19]. ## ⚠️ λͺ¨μˆœ 및 μ—…λ°μ΄νŠΈ (Contradictions & RL Update) - **κ³Όκ±° λ°μ΄ν„°μ™€μ˜ 좩돌:** μžλ™ν™” 엔진에 μ˜ν•΄ λ§€ν•‘λœ μ§€μ‹μœΌλ‘œ, μΆ”ν›„ μ •λ°€ 검증 ν•„μš”. - **μ •μ±… λ³€ν™”:** Design & Experience λΆ„μ•Όμ˜ μžλ™ μžμ‚°ν™” μˆ˜ν–‰. ## πŸ”— 지식 μ—°κ²° (Graph) - **Related Topics:** [[κ΄€μ‹¬μ‚¬μ˜ 뢄리([[Separation of Concerns]])]], 마이크둜 ν”„λ‘ νŠΈμ—”λ“œ(Micro Frontends), Feature-Sliced Design(FSD), [[단일 μ±…μž„ 원칙(SRP)]] - **Projects/Contexts:** Spotify, Netflix, Amazon의 마이크둜 ν”„λ‘ νŠΈμ—”λ“œ λ„μž…, λŒ€κ·œλͺ¨ μ›Ή μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ˜ 폴더 ꡬ쑰 μ§„ν™” - **Contradictions/Notes:** μ»΄ν¬λ„ŒνŠΈ 기반 μ•„ν‚€ν…μ²˜λŠ” μ΄ˆκΈ°μ— 관심사 λΆ„λ¦¬μ˜ ν˜μ‹ μœΌλ‘œ μ—¬κ²¨μ‘ŒμœΌλ‚˜, 점차 ν•˜λ‚˜μ˜ μ»΄ν¬λ„ŒνŠΈμ— λ„ˆλ¬΄ λ§Žμ€ 둜직이 μ§‘μ€‘λ˜λ©° 독립성이 ν›Όμ†λ˜λŠ” λͺ¨μˆœμ΄ λ°œμƒν–ˆμŠ΅λ‹ˆλ‹€. 이λ₯Ό ν•΄κ²°ν•˜κΈ° μœ„ν•΄ κΈ°λŠ₯ λ‹¨μœ„λ‘œ 묢인 μ»΄ν¬λ„ŒνŠΈ λ‚΄λΆ€μ—μ„œ λ‹€μ‹œ 데이터 둜직과 λ·° 둜직의 역할을 λ‚˜λˆ„λŠ” 계측적(Layer) 뢄리 방식이 μž¬λ„μž…λ˜μ—ˆμŠ΅λ‹ˆλ‹€ [4, 9, 12]. --- *Last updated: 2026-04-18* ---