--- id: P-REINFORCE-AUTO-B343BD category: "[[10_Wiki/๐Ÿ’ก Topics/Programming & Language]]" confidence_score: 0.90 tags: [auto-reinforced] last_reinforced: 2026-04-20 github_commit: "[P-Reinforce] Continuous Worker - ๋‹จ์ผ ์ฑ…์ž„ ์›์น™ (SRP)" --- # [[๋‹จ์ผ ์ฑ…์ž„ ์›์น™ (SRP)]] ## ๐Ÿ“Œ ํ•œ ์ค„ ํ†ต์ฐฐ (The Karpathy Summary) > ๋‹จ์ผ ์ฑ…์ž„ ์›์น™(Single Responsibility Principle, SRP)์€ ํด๋ž˜์Šค, ๋ชจ๋“ˆ ๋˜๋Š” ํ•จ์ˆ˜๊ฐ€ ์˜ค์ง ํ•˜๋‚˜์˜ ์—ญํ• (์ฑ…์ž„)๋งŒ์„ ์ˆ˜ํ–‰ํ•ด์•ผ ํ•˜๋ฉฐ, ์ฝ”๋“œ์˜ ๋ณ€๊ฒฝ์„ ์š”๊ตฌํ•˜๋Š” ์ด์œ  ๋˜ํ•œ ๋‹จ ํ•˜๋‚˜์—ฌ์•ผ ํ•œ๋‹ค๋Š” ์†Œํ”„ํŠธ์›จ์–ด ์„ค๊ณ„ ์›์น™์ž…๋‹ˆ๋‹ค [1, 2]. ์ด๋Š” ๊ฐ์ฒด ์ง€ํ–ฅ ํ”„๋กœ๊ทธ๋ž˜๋ฐ์˜ ํ•ต์‹ฌ์ธ SOLID ์›์น™ ์ค‘ ํ•˜๋‚˜๋กœ, ๋” ๋†’์€ ์ถ”์ƒํ™” ์ˆ˜์ค€์˜ ๊ฐœ๋…์ธ '๊ด€์‹ฌ์‚ฌ์˜ ๋ถ„๋ฆฌ(SoC)'๋ฅผ ๊ฐœ๋ณ„ ํด๋ž˜์Šค๋‚˜ ๋ชจ๋“ˆ ๋‹จ์œ„์—์„œ ๊ตฌ์ฒดํ™”ํ•œ ๊ฒƒ์ž…๋‹ˆ๋‹ค [3-6]. SRP๋ฅผ ์ค€์ˆ˜ํ•˜๋ฉด ์ฝ”๋“œ์˜ ์‘์ง‘๋„๋ฅผ ๋†’์ด๊ณ  ๋ณต์žก์„ฑ์„ ์ค„์—ฌ, ๊ฐ€๋…์„ฑ๊ณผ ์œ ์ง€๋ณด์ˆ˜์„ฑ์ด ๋›ฐ์–ด๋‚œ ์‹œ์Šคํ…œ์„ ๊ตฌ์ถ•ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค [2, 7]. ## ๐Ÿ“– ๊ตฌ์กฐํ™”๋œ ์ง€์‹ (Synthesized Content) * **์ •์˜์™€ ํ•ต์‹ฌ ๋ชฉํ‘œ:** SRP๋Š” ์†Œํ”„ํŠธ์›จ์–ด ๊ตฌ์„ฑ ์š”์†Œ(ํด๋ž˜์Šค, ํ•จ์ˆ˜ ๋“ฑ)๊ฐ€ ๋‹จ ํ•˜๋‚˜์˜ ๊ด€์‹ฌ์‚ฌ๋‚˜ ๊ธฐ๋Šฅ์—๋งŒ ์˜จ์ „ํžˆ ์ง‘์ค‘ํ•ด์•ผ ํ•จ์„ ๋ช…์‹œํ•ฉ๋‹ˆ๋‹ค [2, 8]. ์˜ˆ๋ฅผ ๋“ค์–ด, ์‚ฌ์šฉ์ž ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๊ณ  ๊ฒ€์ƒ‰ํ•˜๋Š” ์—ญํ• ์„ ํ•˜๋Š” ํด๋ž˜์Šค๊ฐ€ ์‚ฌ์šฉ์ž ์ž…๋ ฅ ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ๊นŒ์ง€ ํ•จ๊ป˜ ์ˆ˜ํ–‰ํ•ด์„œ๋Š” ์•ˆ ๋ฉ๋‹ˆ๋‹ค [1]. ์ด ์›์น™์˜ ์ฃผ๋œ ๋ชฉ์ ์€ ํด๋ž˜์Šค๋ฅผ ๋” ์ดํ•ดํ•˜๊ธฐ ์‰ฝ๊ณ  ๊ตฌ์ถ•ํ•˜๊ธฐ ์‰ฝ๊ฒŒ ๋งŒ๋“ค์–ด, ์ฝ”๋“œ๋ฅผ ์ˆ˜์ •ํ•  ๋•Œ ๊ด€๋ จ ์—†๋Š” ๊ธฐ๋Šฅ์— ์˜ํ–ฅ์„ ๋ฏธ์ณ ์‹œ์Šคํ…œ์ด ๋ฒ„๊ทธ์— ๋…ธ์ถœ๋  ์œ„ํ—˜์„ ์ตœ์†Œํ™”ํ•˜๋Š” ๋ฐ ์žˆ์Šต๋‹ˆ๋‹ค [2]. * **๋ฃจํŠธ ์ฃผ์ œ '๊ด€์‹ฌ์‚ฌ์˜ ๋ถ„๋ฆฌ(SoC)'์™€์˜ ๊ด€๊ณ„:** SRP๋Š” ๊ด€์‹ฌ์‚ฌ์˜ ๋ถ„๋ฆฌ(SoC) ์ฒ ํ•™์„ ์‹คํ˜„ํ•˜๋Š” ๋ฐ ์žˆ์–ด ๊ฐ€์žฅ ํ•ต์‹ฌ์ด ๋˜๋Š” ์›์น™์ž…๋‹ˆ๋‹ค [6]. SoC๊ฐ€ ์‹œ์Šคํ…œ์„ ๊ตฌ์„ฑํ•˜๋Š” ๋†’์€ ์ถ”์ƒํ™” ์ˆ˜์ค€์—์„œ ์ฝ”๋“œ๋ฅผ ๋…ผ๋ฆฌ์ ์ธ ๋ชจ๋“ˆ๊ณผ ๊ณ„์ธต์œผ๋กœ ๋šœ๋ ทํ•˜๊ฒŒ ๊ฒฉ๋ฆฌํ•˜๋Š” ๊ฒƒ์— ์ดˆ์ ์„ ๋งž์ถ˜๋‹ค๋ฉด, SRP๋Š” ๊ทธ๋ณด๋‹ค ๋‚ฎ์€ ๊ฐœ๋ณ„ ํด๋ž˜์Šค๋‚˜ ๋ชจ๋“ˆ ์ˆ˜์ค€์—์„œ '์ฑ…์ž„'์„ ํ•˜๋‚˜๋กœ ์ œํ•œํ•˜๋Š” ๋ฐ ์ง‘์ค‘ํ•ฉ๋‹ˆ๋‹ค [4, 7]. ๋ชจ๋“  ๊ฐ์ฒด์™€ ํ•จ์ˆ˜๊ฐ€ ๋‹จ ํ•˜๋‚˜์˜ ์ž‘์—…๋งŒ ํ•˜๋„๋ก ์„ค๊ณ„(SRP)ํ•˜์—ฌ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๊ตฌ์ถ•ํ•œ๋‹ค๋ฉด, ํ•ด๋‹น ๋ชจ๋“ˆ๋“ค์€ ์ž์—ฐ์Šค๋Ÿฝ๊ฒŒ ์ฒ ์ €ํžˆ ๋ถ„๋ฆฌ๋œ ๊ด€์‹ฌ์‚ฌ(SoC)๋ฅผ ํ˜•์„ฑํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค [9]. ์˜ค๋Š˜๋‚  SoC ์ฒ ํ•™์€ ์ด๋Ÿฌํ•œ SRP์˜ ์ง์ ‘์ ์ธ ๋ชจํƒœ๋กœ ํ‰๊ฐ€๋ฐ›์Šต๋‹ˆ๋‹ค [5]. * **์‹ค๋ฌด ์ ์šฉ ๋ฐ ์œ„๋ฐ˜ ์‹œ์˜ ๋ฌธ์ œ์ :** ์ƒˆ๋กœ์šด ํด๋ž˜์Šค๋‚˜ ํ•จ์ˆ˜๋ฅผ ์„ค๊ณ„ํ•  ๋•Œ๋Š” ํ•ญ์ƒ "์ด ํด๋ž˜์Šค์˜ ๋‹จ์ผ ์ฑ…์ž„์€ ๋ฌด์—‡์ธ๊ฐ€?"๋ฅผ ๋จผ์ € ์งˆ๋ฌธํ•˜๋Š” ๊ฒƒ์ด ๊ฐ€์žฅ ์ ์šฉํ•˜๊ธฐ ์‰ฝ๊ณ  ์ฆ‰๊ฐ์ ์ธ ์ด์ ์„ ์ค๋‹ˆ๋‹ค [10]. ํ”„๋ก ํŠธ์—”๋“œ ํ™˜๊ฒฝ์˜ ์ปดํฌ๋„ŒํŠธ ๊ฐœ๋ฐœ์„ ์˜ˆ๋กœ ๋“ค๋ฉด, ํ™”๋ฉด์„ ๊ทธ๋ฆฌ๋Š” ์—ญํ• ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ๋ฐ์ดํ„ฐ ๊ด€๋ฆฌ, ํ‘œํ˜„ ๋กœ์ง, ๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง ๋“ฑ ๋„ˆ๋ฌด ๋งŽ์€ ์ฑ…์ž„์„ ํ•˜๋‚˜์˜ ์ปดํฌ๋„ŒํŠธ์— ์ง‘์ค‘์‹œํ‚ค๋Š” ๊ฒƒ์€ ์ „ํ˜•์ ์ธ SRP ์œ„๋ฐ˜์— ํ•ด๋‹นํ•ฉ๋‹ˆ๋‹ค [11]. ์ด๋ฅผ ๊ฐœ์„ ํ•˜๊ธฐ ์œ„ํ•ด ์ปดํฌ๋„ŒํŠธ๋Š” ์˜ค์ง ํ™”๋ฉด์„ ๊ทธ๋ฆฌ๋Š” ์ฑ…์ž„๋งŒ ์ง€๊ฒŒ ํ•˜๊ณ , ๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง์ด๋‚˜ ์ƒํƒœ ์ฒ˜๋ฆฌ๋Š” ๋ณ„๋„์˜ ๋ชจ๋“ˆ์— ์œ„์ž„ํ•˜๋Š” ๋ฐฉ์‹์ด SRP๋ฅผ ์‹ค๋ฌด์— ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ์ ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค [6]. ## โš ๏ธ ๋ชจ์ˆœ ๋ฐ ์—…๋ฐ์ดํŠธ (Contradictions & RL Update) - **๊ณผ๊ฑฐ ๋ฐ์ดํ„ฐ์™€์˜ ์ถฉ๋Œ:** ์ž๋™ํ™” ์—”์ง„์— ์˜ํ•ด ๋งคํ•‘๋œ ์ง€์‹์œผ๋กœ, ์ถ”ํ›„ ์ •๋ฐ€ ๊ฒ€์ฆ ํ•„์š”. - **์ •์ฑ… ๋ณ€ํ™”:** Programming & Language ๋ถ„์•ผ์˜ ์ž๋™ ์ž์‚ฐํ™” ์ˆ˜ํ–‰. ## ๐Ÿ”— ์ง€์‹ ์—ฐ๊ฒฐ (Graph) - **Related Topics:** [[๊ด€์‹ฌ์‚ฌ์˜ ๋ถ„๋ฆฌ (SoC)]], [[SOLID ์›์น™]], [[๊ฐ์ฒด ์ง€ํ–ฅ ํ”„๋กœ๊ทธ๋ž˜๋ฐ (OOP)]], [[์‘์ง‘๋„ (Cohesion)]] - **Projects/Contexts:** [[ํ”„๋ก ํŠธ์—”๋“œ ์ปดํฌ๋„ŒํŠธ ๊ตฌ์กฐํ™”]], [[์†Œํ”„ํŠธ์›จ์–ด ์•„ํ‚คํ…์ฒ˜ ์„ค๊ณ„]] - **Contradictions/Notes:** ์†Œ์Šค์— ๋”ฐ๋ฅด๋ฉด SoC์™€ SRP๋Š” ์„œ๋กœ ๋Œ€๋ฆฝํ•˜๋Š” ๊ฐœ๋…์ด ์•„๋‹™๋‹ˆ๋‹ค. ๋‘ ์›์น™ ๋ชจ๋‘ ์†Œํ”„ํŠธ์›จ์–ด์˜ ๋ชจ๋“ˆ์„ฑ์„ ๋†’์ด๋Š” ๋ฐ ๊ธฐ์—ฌํ•˜์ง€๋งŒ, SoC๋Š” ๊ธฐ๋Šฅ์  ์ธก๋ฉด์—์„œ ์ฝ”๋“œ๋ฅผ ๊ตฌ์„ฑํ•˜๋Š” ํฐ ๊ทธ๋ฆผ(๋†’์€ ์ถ”์ƒํ™”)์„ ๋‹ค๋ฃจ๊ณ , SRP๋Š” ๋ณ€๊ฒฝ์˜ ์ด์œ ๋ผ๋Š” ๊ด€์ ์—์„œ ๊ฐœ๋ณ„ ํด๋ž˜์Šค๋‚˜ ๋ชจ๋“ˆ์˜ ๋‹จ์ผ ์ฑ…์ž„์— ์ง‘์ค‘ํ•œ๋‹ค๋Š” ๋ฒ”์œ„(Scope)์™€ ์ดˆ์ ์˜ ์ฐจ์ด๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค [4, 7]. --- *Last updated: 2026-04-18* - Raw Source: [[00_Raw/2026-04-20/๋‹จ์ผ ์ฑ…์ž„ ์›์น™ (SRP).md]] ---