๋จ์ผ ์ฑ
์ ์์น(SRP-Single Responsibility Principle)์ด ํท๊ฐ๋ฆฌ๋๋ฐ ์ด๋ค ๋ถ๋ถ์ด๋๋ฉด
์๋ฅผ ๋ค์ด, ํ๋ ์ด์ด ์คํฌ๋ฆฝํธ๋ฅผ ์์ฑ ํ๋๋ฐ, ์ฝ๋์ย ์ฒด๋ ฅ, ์์ง์, ๊ณต๊ฒฉ ๋ค ๋ฃ์ด๋ ์ด๋ป๊ฒ ๋์๋ ๊ฑฐ์์ ์ผ๋ก ๋ณด๋ฉด ํ๋ ์ด์ด๋ผ๋ ๋จ์ผ์ด ๋ ์ ์์์?
๊ทผ๋ฐ, ๋ ๋ฏธ์์ ์ผ๋ก ๋ณด๋ฉด ์ฒด๋ ฅ, ์์ง์, ๊ณต๊ฒฉ ๋ค ๋ถ๋ฆฌํด์ผ ๋จ์ผ ์ฑ ์์ธ ๊ฒ ๊ฐ๊ณ ,
๋ฌธ์ ๋ ๋ ์ฒด๋ ฅ์์ ์ฌ๋ฌ๊ฐ์ง ์์๋ก ๋ ๋ถ๋ฆฌ๋ ์ ์์ ๊ฒ ๊ฐ๊ณ ,
๋๋์ฒด ๋จ์ผ ์ฑ ์ ์์น์ ๋ฒ์๋ ์ด๋๊น์ง ์ผ๊น?
๊ฐ์ฒด? ํ๋์ ๊ฐ์ฒด๋ ํ๋์ ์คํฌ๋ฆฝํธ๊ฐ ์ฑ ์์ง๋ค ๋ญ ์ด๋ฐ ๊ฑฐ ์๋? ์๋ ๋ง๊ณ ..
๋๋ ๊ทธ๋ฐ ์ค ์์๋๋ฐ ์ ํ๋ธ ๋ดค๋ค๊ฐ ๊ณ ๋ฏผ์ค..
๋จ์ผ์ฑ ์์ ํ๋์ ์คํฌ๋ฆฝํธ๊ฐ ํ๊ฐ์ง ๊ธฐ๋ฅ์ ํ๋ค๋๊ฒ ์๋๊ณ ์ด ์คํฌ๋ฆฝํธ๋ฅผ ์ด๋์ด ๋ค๋ฅธ ์คํฌ๋ฆฝํธ ์๋ป๋๊ฒ ์ฑ ์์ ์ง ๊ฒ์ ๋งน์ธํ๋๊ฑฐ์ ๋ ๋ง๋๋ก ํ๋ ์ด์ด ์คํฌ๋ฆฝํธ ํํ์ผ๋ก ๋ค ์์ฑํด๋ ๋๋๋ฐ. ๋๋ ๊ทธ๊ฑธ ๋๋ช ์ด ๊ฐ๋ฐํ๋ค ์๊ฐํ๊ณ ์์๋ฅผ ๋๋ก ์ชผ๊ฐ์ ๊ฐ๋ฐํด๋ณด๋ฉด์ ์ฐ์ตํจ.
์ด๋ ๊ฒ ํ๋ค๋ณด๋ ์์ฐ์ค๋ฝ๊ฒ ํฐ ์คํฌ๋ฆฝํธ๋ฅผ ์ด๋ป๊ฒ ๋ถํ ํด์ผ ํ ์ง ์ ํ ์ ์๊ฒ๋๊ณ ๊ทธ์ ๋ฐ๋ผ ์๊ฒจ๋๋ circular dependency ๋ฌธ์ ๋ฅผํด๊ฒฐํ๋ ๋ฐฉ๋ฒ์ ๊นจ๋ซ๊ณ ๊ทธ๊ฑธ ์ํ ์ธํฐํ์ด์ค, ํด๋์ค ์์, partial class์ ์ด๋ป๊ฒ ์จ์ผํ ์ง ๊ฐ์ด ์ฌ๋๋ง๋ํด์ง
ในใ ์ ์ ๋ณ ๊ฑธ๋ฆฌ๊ฒ ๋ค ใทใท
์ด๋ฐ๊ฑฐ ๋๋ฌด ๋งค๋ชฐ์๋๋๊ฒ ์ข์ ํ์ ์์๋ ๊ตฌ๋ฅ๋ค๋ฆฌ์ทจ๊ธ๋ฐ๋ ๊ฐ๋ ์ ์ธ๋๊ฒ์๊ฐ๋ฐ์์ ์ ์งํค๋ ค๊ณ ํ๋๊ฑฐ์ผ...
๋ด๊ฐ ํ์ ์ ๊ฐ๋ดค์ด์ผ ์์ง.. ๊ทธ๋ฅ ๊ณต๋ถํ๋ค ๋ณด๋๊น ์๊ฒ ๋์ ๋ญฃ๋ ๋ชจ๋ฅด๊ณ ํ๋๊ฑฐ์ง.. ํ์ ์์ ์ด๋ป๊ฒ ํ๋๋ฐ?
ํ์ ์์๋ ์ด๋ป๊ฒ ํจ??
ํ๋ง๋ค ๋ฌ๋ผ ์๋ค์ ์ฐ๋๊ฐ ํ์ฅ์ด๋ฉด ์ ์์น ์งํค๋๊ฑฐ๊ณ 59.12๊ฐ ํ์ฅ์ด๋ฉด ์์งํค๋๊ฑฐ์ผ
์๋.. ๊ตฌ๋ฅ๋ค๋ฆฌ๋ ๋งค๋ชฐ์ด ๋๋ ์๋๋ ๊ทธ๊ฑด ๋ด๊ฐ ํด๋ณด๊ณ ํ๋จํ ๊ฒ ์๋ ค์ฃผ๊ณ ๋์ ๋ญ๋ ํ๋ผ๊ณ ์ ๋ฐ.... ํผ๋์ด๋ ๋นํฑ ํ์ง๋ง๊ณ ..
110.10 ์๋ ค์ค์ ๊ณ ๋ง์ ํ๋ฐํ์ธ๊ฑด ์๊ฒ ๋ค
์ผ๋จ ๋์ถฉ ์ฐพ์๋ณด๋ solid๊ฐ ๊ตฌ์์ด๊ณ ์๋ก์ด ํจ๋ฌ๋ค์์ด ํ์ํ๋ค๋ ์ฃผ์ ์ ํ ๋ก ์ ์ ์ ๋ฆฌํ ๊ธ์ด ์์์.
https://sihyung92.oopy.io/oop/solid
์ ๋ํฐ๋
c#์ฐ๊ณ , ๋ง์ดํฌ๋ก์๋น์ค๋ก ๊ตฌ์ฑํ ์๋ ์์ผ๋ ๋ ๊ทธ๋ฅ ์๋ฆฌ๋ ์ง์ผ๋ณผ๋ ค๊ณ
์ฐ์ ์ข์ ๊ธ ๊ฐ์ฌ! ์ญ ์ฝ์ด๋ดค๊ฑฐ๋ . ๊ฒฐ๊ตญ์ "์ฌํํ๊ฒ ์์ฑํ๋ผ"์ธ๋ฐ ํ .. ๊ทธ๋ฅ ๊ณ ๋ฏผํ์ง๋ง๊ณ ์๊ฐ ๋๋๋ฐ๋ก ๋ง๋ค์ด๋ผ์ธ๊ฑด๊ฐ.. ์ฌํ์ด๋ผ๋ ๊ธฐ์ค์ ๋ ๋ญ์ง.. ๋ญ๊ฐ ์ฒ ํ์ ์ด๋ผ์ ๊ทธ๋ฐ๊ฐ ์๋ค๊ฐ๋ ๋ชจ๋ฅด๊ฒ ๋ค ใ ใ ;; ์๊ณ ์ถ์๋ฐ ์ด๋ ต๋..
์ ๋ชจ๋ฅด๊ฒ ๋ค ์ถ์๋ ์ผ๋จ ์๊ฐ๋๋๋ฐ๋ก ๊ตฌํํด๋๋ค ๋ณด๋ฉด ์ด๊ฑด ๋๋ ์ผ์ผ๋ฉด ์ข์๊ฒ ๋ค, ์ด๊ฑด ๊ตณ์ด ๋๋ ํ์๊ฐ ์์๋ค ํ๋๊ฒ ๋ณด์
์ ๋ ์ด๊ฒ ๋ต์ธ๊ฑฐ๊ฐ๋ค์ ์ฒ์์ ์ ๋ชจ๋ฅผ๋ ์์ฑํ ์คํฌ๋ฆฝํธ๋ค ๋์ค์ ์ค์ค๋ก ๋์๋ณด๋ฉด ๋ณด์ด๋ ๊ฒฝ์ฐ๊ฐ ๋ง์๋ฐ ๋ด ์๊ฐ๋๋ก ๋ง์ด ์ง๋ณด๋ฉด์ ๊ฒฝํ ๋๋ฆฌ๋ค๋ณด๋ฉด ๋ณด์ด๋๊ฒ ๊ฐ์์. ์ด๋๊น์ง ๋๋๊ณ ์ด๋๊น์ง ํฉ์ณ์ผ ํ๋์ง