์ฑ์ํ ์ํํธ์จ์ด ์ํ๊ณ๋ ๊ฒฐ๊ตญ ์๋ ์๋ํ๋ ๊ฒ๋ณด๋ค ๋ ๋ง์ ๋ก์ง, ๋ฐ์ดํฐ, ์ ์ด ํ๋ฆ์ ํฌํจํ๋ ๊ณผ๋ํ๊ฒ ํฐ ํด๋์ค๋ฅผ ์ถ์ ํ๊ฒ ๋ฉ๋๋ค. ๊ฐ์ฒด ์งํฅ ์์คํ ์์ ์ด๋ฌํ ํด๋์ค๋ฅผ ' ๊ฐ ํด๋์ค(God Class)' ๋ผ๊ณ ํฉ๋๋ค . ๊ฐ ํด๋์ค๋ ์ฌ๋ฌ ๋ชจ๋์ ๋ถ์ฐ๋์ด์ผ ํ ์ฑ ์์ ํ ๊ณณ์ ์ง์ค์์ผ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์์ ๋ถํฐ ์ฌ์ฉ์ ์ํธ ์์ฉ์ ์ด๋ฅด๊ธฐ๊น์ง ๋ชจ๋ ๊ฒ์ ๊ด๋ฆฌํฉ๋๋ค. ์ด๋ฌํ ์ง์คํ๋ ์ฒ์์๋ ํจ์จ์ ์ธ ์ง๋ฆ๊ธธ๋ก ์์๋์ง๋ง, ์ ์ฐจ ๊ตฌ์กฐ์ ์ฝ์ ์ผ๋ก ๋ฐ์ ํฉ๋๋ค. ์๊ฐ์ด ์ง๋จ์ ๋ฐ๋ผ ๊ฐ ํด๋์ค๋ ํต์ฌ ๋น์ฆ๋์ค ํ๋ก์ธ์ค์ ๋จ์ผ ์ ์ด ์ง์ ์ด ๋์ด ๊ธฐ์ ์ ๋ง์ฐฐ์ ์ผ์ผํค๊ณ ํ๋ํ ๋ฐ ํ ์คํธ ์์ ์ ์ง์ฐ์ํต๋๋ค.
๊ฐ ํด๋์ค(God Class)๋ ๋จ์ํ ์ค๊ณ ๊ฒฐํจ์ ๋์ด ์ํคํ ์ฒ ๊ท์จ์ ๋ถ๊ดด๋ฅผ ๋ณด์ฌ์ค๋๋ค. ์๋ก์ด ๊ธฐ๋ฅ์ ๋น ๋ฅด๊ฒ ์ ๊ณตํด์ผ ํ๋ค๋ ์๋ฐ์ ๋ฐ๋ ๊ฐ๋ฐํ์ ์์คํ ๊ตฌ์กฐ๋ฅผ ์ฌ์ค๊ณํ๊ธฐ๋ณด๋ค๋ ์ต์ํ ํด๋์ค๋ฅผ ํ์ฅํ๋ ๊ฒฝ์ฐ๊ฐ ๋ง์ต๋๋ค. ์๋ก์ด ์๊ตฌ์ฌํญ์ด ์ถ๊ฐ๋ ๋๋ง๋ค ๋ก์ง์ด ํ ๊ฒน์ฉ ๋ํด์ง๋ฉด์ โโํด๋น ํด๋์ค๋ ํ์๋ถ๊ฐ๊ฒฐํ ๋์์ ๊ฑด๋๋ฆด ์ ์๋ ์กด์ฌ๊ฐ ๋ฉ๋๋ค. ์ด๋ฌํ ํด๋์ค๋ฅผ ์์ ํ๋ฉด ์์์น ๋ชปํ ๋ถ์์ฉ์ด ๋ฐ์ํ์ฌ ์ ํ๋ฆฌ์ผ์ด์ ์ ์ฒด์ ํ๊ธ๋ ์ํ์ด ์์ต๋๋ค. ์ด์ฒ๋ผ ์๋ฌต์ ์ธ ์์กด์ฑ์ด ๋์ ๋๋ฉด ๊ฒฐํฉ๋๋ ๋์์ง๊ณ ์์ง๋๋ ๋ฎ์์ง๋ฉฐ ์ฑ๋ฅ์ ์์ธก ๋ถ๊ฐ๋ฅํด์ง๋๋ค. ์ฝ๋ ๋ถ์, ์ํํธ์จ์ด ๊ฐ๋ฐ , ์ํํธ์จ์ด ๊ฐ๋ฐ ์๋ช ์ฃผ๊ธฐ ์ ๋ํ ํต์ฐฐ๋ ฅ์ ์ด๋ฌํ ์ ํ์ ๊ธฐ์ ๋ถ์ฑ๊ฐ ์ข ์ข ํ๋ํ ๊ณํ ๋จ๊ณ์์ ๋๋ฌ๋๋ฉฐ, ์ด๋ ๊ฐ๋ฐํ์ ๊ธฐ์กด์ ๋ฆฌํฉํ ๋ง ๋ฐฉ์์ผ๋ก๋ ๋ ์ด์ ์ถฉ๋ถํ์ง ์๋ค๋ ๊ฒ์ ๊นจ๋ซ๊ฒ ๋๋ค๋ ๊ฒ์ ๋ณด์ฌ์ค๋๋ค.
๋ ๊ฑฐ์๋ฅผ ์์ ํ๊ฒ ๋ฆฌํฉํ ๋งํ์ธ์
Smart TS XL์ ์ฌ์ฉํ์ฌ ๋ ๊ฑฐ์ ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ฆฌํฉํ ๋งํ์ฌ ์ธก์ ๊ฐ๋ฅํ ์ฑ๋ฅ ํฅ์์ ๋ฌ์ฑํ์ธ์.
์ง๊ธ ํ์๊ธฐ์ ํ๋ํ ์ด๋์ ํฐ๋ธ์ ์์ด '๊ฐ ํด๋์ค(God Class)' ๋ฌธ์ ํด๊ฒฐ์ ์ ๋ต์ ์ผ๋ก ํ์์ ์ ๋๋ค. ์ด๋ฌํ ๊ณผ๋ํ ๊ตฌ์กฐ๋ฅผ ์ ๊ฑฐํ๋ฉด ์์คํ ํฌ๋ช ์ฑ์ด ํฅ์๋๊ณ , ์ฑ ์์ด ๋ถ๋ฆฌ๋๋ฉฐ, ์ฝ๋๋ฅผ ์์ ํ๊ฒ ๋ฐ์ ์ํฌ ์ ์๋ ์ญ๋์ด ํ๋ณต๋ฉ๋๋ค. ๋ํ, '๊ฐ ํด๋์ค'๋ฅผ ๋ฆฌํฉํ ๋งํ๋ฉด ํ ์คํธ ๋ฒ์ ์ถ์, ์์คํ ์์ ์ฑ ํฅ์, ๊ท์ ์ค์ ์ถ์ ์ฑ ํฅ์ ๋ฑ ์ธก์ ๊ฐ๋ฅํ ๋น์ฆ๋์ค ์ด์ ์ ์ป์ ์ ์์ต๋๋ค. ์ํคํ ์ฒ ๋ณ๋ชฉ ํ์์ ์ ๊ฑฐํ๋ฉด ํ์ ํ์ง๊ณผ ๊ฑฐ๋ฒ๋์ค์ ๋ํ ํต์ ๋ ฅ์ ์ ์งํ๋ฉด์ ํ์ ์ ๊ฐ์ํํ ์ ์์ต๋๋ค. ๊ฐ์ฌ ๊ฐ๋ฅ์ฑ๊ณผ ์ผ๊ด์ฑ์ด ํ์์ ์ธ ๊ท์ ๊ฐ ์๊ฒฉํ ์ฐ์ ์์ ๋ชจ๋์ ๋ฆฌํฉํ ๋ง์ ํ์์ ์ธ ํ๋ํ ๊ดํ์ด ๋ฉ๋๋ค.
์ด ๊ธ์์๋ ์ํคํ ์ฒ ๋ถํด ๋ฐ ์ข ์์ฑ ์ ์ด๋ฅผ ํตํด ๊ฐ ํด๋์ค(God Class)๋ฅผ ์๋ณํ๊ณ ๋ฆฌํฉํ ๋งํ๋ ๋ฐฉ๋ฒ์ ์ดํด๋ด ๋๋ค. ์ ์ ๋ถ์์ ์ฌ์ฉํ์ฌ ๊ณผ๋ํ๊ฒ ํ์ฅ๋ ๊ตฌ์กฐ๋ฅผ ๊ฐ์งํ๋ ๋ฐฉ๋ฒ, ์์ ํ ๋ถํด ๊ณํ ๊ธฐ๋ฒ, ๊ทธ๋ฆฌ๊ณ ํ๋ํ ์์ ์ฑ์ ์ ์งํ๊ธฐ ์ํ ๊ฑฐ๋ฒ๋์ค ๊ดํ์ ๊ฐ๋ตํ๊ฒ ์ค๋ช ํฉ๋๋ค. ์ ์ด๋์ง ์๋ ๋ก์ง์ ๋ชจ๋์ ๊ตฌ์ฑ ์์๋ก ๋ณํํจ์ผ๋ก์จ, ์กฐ์ง์ ์ทจ์ฝํ ์ฝ๋๋ฒ ์ด์ค์์ ์์ธก ๊ฐ๋ฅํ๊ณ ์ถ์ ๊ฐ๋ฅํ๋ฉฐ ์ ์ ๊ฐ๋ฅํ ์ํคํ ์ฒ๋ก ์ ํํ์ฌ ์ง์์ ์ธ ๊ฐ์ ๊ณผ ๋์งํธ ๋ฏผ์ฒฉ์ฑ์ ์ง์ํ ์ ์์ต๋๋ค.
์ ํด๋์ค ์ํฐํจํด ์ดํดํ๊ธฐ
๊ฐ ํด๋์ค(God Class)๋ ๊ฐ์ฒด ์งํฅ ์์คํ ์์ ๊ฐ์ฅ ๋ง์ฐํ ๊ตฌ์กฐ์ ๋ฌธ์ ์ค ํ๋์ ๋๋ค. ๋จ์ผ ํด๋์ค๊ฐ ๋๋ฌด ๋ง์ ๊ธฐ๋ฅ๊ณผ ์ฑ ์์ ๋ด๋นํ๊ฒ ๋๋ฉด ๋ฐ์ํ๋ฉฐ, ์ด๋ฌํ ์ฑ ์์ ์ข ์ข ๋น์ฆ๋์ค, ํ๋ ์ ํ ์ด์ , ๋ฐ์ดํฐ ๊ณ์ธต์ ๊ฑธ์ณ ํ์ฅ๋ฉ๋๋ค. ํ๋์ ์์ง๋ ฅ ์๋ ๋ชฉ์ ์ ์ํํ๋ ๋์ , ๊ฐ ํด๋์ค๋ ์์คํ ์ ์ฌ๋ฌ ๋ถ๋ถ์ ์กฐ์ ํ๋ ์ค์ ๊ธฐ๊ด์ด ๋ฉ๋๋ค. ์ด๋ฌํ ์ ์ด ์ง์ค์ ์ด๋ค ์์ ์ด๋ ์ ํ๋ฆฌ์ผ์ด์ ์ ๊ด๋ จ ์๋ ์์ญ์ ๋ณํ๋ฅผ ์ผ์ผํฌ ์ ์๊ธฐ ๋๋ฌธ์ ์ ์ง ๊ด๋ฆฌ๋ฅผ ์ด๋ ต๊ฒ ๋ง๋ญ๋๋ค. ์๊ฐ์ด ์ง๋จ์ ๋ฐ๋ผ ์์คํ ์ํคํ ์ฒ๋ ๋ช ํ์ฑ์ ์๊ณ , ๊ฐ๋ฐ์๋ค์ ์๋ก์ด ๊ธฐ๋ฅ์ ํตํฉํ๊ธฐ ์ํ ์ง๋ฆ๊ธธ๋ก ๊ฐ ํด๋์ค๋ฅผ ์์กดํ๊ฒ ๋ฉ๋๋ค.
๋๊ท๋ชจ ์กฐ์ง์์๋ ์์คํ ์ด ๊ธด๊ธ ํจ์น์ ์ ์ง์ ์ธ ๊ฐ์ ์ ํตํด ๋ฐ์ ํจ์ ๋ฐ๋ผ ์ด๋ฌํ ์ํฐ ํจํด์ด ๊ณ ์ฐฉ๋ฉ๋๋ค. ๋น ๋ฅธ ๊ฒฐ๊ณผ๋ฅผ ์ ๊ณตํด์ผ ํ๋ค๋ ์๋ฐ์ ๋ฐ๋ ํ์ ์๋ก์ด ๋ชจ๋์ ์ค๊ณํ๋ ๋์ ๊ธฐ์กด ํด๋์ค๋ฅผ ํ์ฅํฉ๋๋ค. ๋ฌธ์๋ ์ด๋ฌํ ๋ณ๊ฒฝ ์ฌํญ์ ๋ฐ๋ผ๊ฐ์ง ๋ชปํ๊ณ , ๊ฐ๋ ฅํ์ง๋ง ์ทจ์ฝํ ๊ตฌ์กฐ๋ง ๋จ๊ฒ ๋ฉ๋๋ค. ์ด๋ฌํ ํจํด์ด ์ค๋ ์ง์๋ ์๋ก ํ๋ํ์ ๊ณผ์ ๋ ๋์ฑ ์ปค์ง๋๋ค. ๊ฐ ํด๋์ค(God Class)๋ฅผ ๋ฆฌํฉํ ๋งํ๋ ค๋ฉด ๊ธฐ์ ์ ์ ๋ฐ์ฑ๋ฟ๋ง ์๋๋ผ ํฅํ ์ ์ง ๊ด๋ฆฌ ์ฉ์ด์ฑ๊ณผ ๊ท์ ์ค์ ๊ฐ์์ฑ์ ๋ณด์ฅํ๊ธฐ ์ํ ์ํคํ ์ฒ ๊ฑฐ๋ฒ๋์ค๋ ํ์ํฉ๋๋ค.
๋๊ท๋ชจ ์์คํ ์์์ ์ ํด๋์ค์ ํน์ฑ
๊ฐ ํด๋์ค(God Class)๋ ๊ตฌ์กฐ์ ๋ฐ ํ๋์ ํน์ฑ์ ์กฐํฉ์ ํตํด ๊ทธ ๋ณธ์ง์ ๋๋ฌ๋ ๋๋ค. ์ผ๋ฐ์ ์ผ๋ก ์๋ฐฑ ์ค, ์ฌ์ง์ด ์์ฒ ์ค์ ์ฝ๋๋ก ๊ตฌ์ฑ๋๋ฉฐ, ๋ถ๋ฆฌ๋ ๊ตฌ์ฑ ์์์ ์ํด์ผ ํ ๊ด๋ฒ์ํ ์ฑ ์์ ํฌ๊ดํฉ๋๋ค. ํด๋์ค ๋ด์ ๋ฉ์๋๋ ์ข ์ข ์๋ก ๊ด๋ จ ์๋ ๋น์ฆ๋์ค ๊ท์น์ ๊ด๋ฆฌํ๊ณ , ์ฌ๋ฌ ๋ฐ์ดํฐ ์์ค๋ฅผ ์ฒ๋ฆฌํ๋ฉฐ, ์ฌ์ฉ์ ์ํธ ์์ฉ์ ์กฐ์ ํฉ๋๋ค. ์ด๋ฌํ ์ง์ค์ ์์ง๋ ์์น์ ์๋ฐํ๊ณ ๊ด๋ จ ์๋ ๋ ผ๋ฆฌ ๊ฒฝ๋ก ๊ฐ์ ์จ๊ฒจ์ง ์์กด์ฑ์ ์์ฑํฉ๋๋ค. ๊ฒฐ๊ณผ์ ์ผ๋ก, ๊ฐ ํด๋์ค๋ ํด๋น ์ํ๊ณ๋ฅผ ์ง๋ฐฐํ๊ฒ ๋๋ฉฐ, ๋ค๋ฅธ ํด๋์ค๋ ๋ฐ์ดํฐ ์ ๊ทผ์ด๋ ์์ฌ ๊ฒฐ์ ์ ์์ด ๊ฐ ํด๋์ค์ ๊ณผ๋ํ๊ฒ ์์กดํ๊ฒ ๋ฉ๋๋ค. ์ด๋ฌํ ๋ถ๊ท ํ์ ์ํ ์์กด์ฑ์ ์ํ์ ์ฆ๊ฐ์ํค๊ณ ํ ์คํธ ์ฉ์ด์ฑ์ ์ ํดํฉ๋๋ค. ๊ฐ๋ฐ์๊ฐ ๊ธฐ๋ฅ์ ๋ถ๋ฆฌํ๋ ค๊ณ ํ ๋, ๋ชจ๋ ๋ถ๋ฆฌ๋ฅผ ๋ฐฉํดํ๋ ๊ฒฐํฉ๋์ ์ง๋ฉดํ๊ฒ ๋ฉ๋๋ค. ๊ฐ์ฒด ๊ฐ ๊ฒฐํฉ๋, ๋ฉ์๋ ๊ฐ์, ์ํ ๋ณต์ก๋์ ๊ฐ์ ์ ์ ๋ถ์ ์งํ๋ ์ด๋ฌํ ์ํ์ ์ ๋ํํ๋ ๋ฐ ๋์์ด ๋ฉ๋๋ค. ๊ธฐ๋ฅ์ ์ ๋ถ์ ์ฐ๊ตฌ์ ๋ฐ๋ฅด๋ฉด ๋์ ๊ตฌ์กฐ์ ๋ณต์ก๋๋ ์ ์ง ๊ด๋ฆฌ ์ฉ์ด์ฑ ์ ํ ๋ฐ ์ฅ๊ธฐ์ ์ธ ํ๋ํ ๋ณต์๋ ฅ ์ฝํ์ ๋ฐ์ ํ ๊ด๋ จ์ด ์์ต๋๋ค.
God Class๊ฐ ์ํฐํ๋ผ์ด์ฆ ์ฝ๋๋ฒ ์ด์ค์ ๊ณ์ ์กด์ฌํ๋ ์ด์
์ํฐํ๋ผ์ด์ฆ ์์คํ ์์ '๊ฐ ํด๋์ค(God Class)'๋ ํ๋ฃจ์์นจ์ ์๊ฒจ๋๋ ๊ฒฝ์ฐ๊ฐ ๋๋ญ ๋๋ค. ๊ฐ๋ฐํ์ด ์ํคํ ์ฒ์ ์๊ฒฉํจ๋ณด๋ค ๊ฐ๋ฐ ์๋๋ฅผ ์ฐ์ ์ํ๋ฉด์ ์ ์ง์ ์ผ๋ก ์งํํฉ๋๋ค. ๋ง๊ฐ์ผ์ด ์ด๋ฐํด์ง๋ฉด ๊ฐ๋ฐ์๋ค์ ์๋ก์ด ๋ชจ๋์ด๋ ์ธํฐํ์ด์ค๋ฅผ ์ค๊ณํ๋ ๋์ ๊ธฐ์กด ํด๋์ค๋ฅผ ํ์ฅํ์ฌ ์๋ก์ด ๊ธฐ๋ฅ์ ๊ตฌํํฉ๋๋ค. ์ด๋ฌํ ์ ์ง์ ์ธ ์ฑ์ฅ์ ์ฒ์์๋ ๋ฌดํดํด ๋ณด์ด์ง๋ง ์๊ฐ์ด ์ง๋จ์ ๋ฐ๋ผ ๋์ ๋์ด ์ฌ๋ฌ ๋๋ฉ์ธ์ ๋ก์ง์ ํฌํจํ๋ ๊ฑฐ๋ํ ํด๋์ค๊ฐ ์์ฑ๋ฉ๋๋ค. ๊ฐ๋ฐ์ ์ด์ง๋ฅ ๋ํ ์ค์ํ ์์ธ์ ๋๋ค. ์๋ก์ด ์ง์์ด ์์คํ ์ ์ธ๊ณ๋ฐ์ผ๋ฉด ๋ค๋ฅธ ๊ณณ์์ ํตํฉ ์ค๋ฅ๋ฅผ ๋ฐ์์ํฌ ์ํ์ ๊ฐ์ํ๊ธฐ๋ณด๋ค๋ ๊ธฐ์กด ๊ตฌ์กฐ๋ฅผ ์์ ํ๋ ๊ฒ์ ์ ํธํ๋ ๊ฒฝํฅ์ด ์์ต๋๋ค. ์์ญ ๋ ์ ๊ฑธ์ณ ์ด๋ฌํ ํ์์ด ์ง์๋๋ฉด ๊ฐ ํด๋์ค๋ ํ์๋ถ๊ฐ๊ฒฐํ ์์ ์ ์ธ ๊ท ํ ์ํ์ ๋๋ฌํ๊ฒ ๋ฉ๋๋ค. ๋นํจ์จ์ ์ผ์ง๋ผ๋ ์๋ํ๊ธฐ ๋๋ฌธ์ ํ์ ์ด๋ฅผ ๊ฑด๋๋ฆฌ๊ธฐ๋ฅผ ๊บผ๋ฆฝ๋๋ค. ํฌ๊ด์ ์ธ ๋ฌธ์๊ฐ ๋ถ์กฑํ๋ฉด ๋ถํด ์์ ์ด ๋์ฑ ์ด๋ ค์์ง๋๋ค. ์ด๋ฌํ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด ๊ธฐ์ ๋ค์ ๋ฆฌํฉํ ๋ง์ ์์ํ๊ธฐ ์ ์ ์ข ์์ฑ์ ์๊ฐํํ๊ธฐ ์ํด ์ ์ ์ฝ๋ ๋ถ์ ๋ฐ ์ํคํ ์ฒ ๋ณต๊ตฌ ๋๊ตฌ๋ฅผ ํ์ฉํฉ๋๋ค. ๋ ๊ฑฐ์ ์์คํ ํ๋ํ ์ฌ๋ก ์์ ์ป์ ํต์ฐฐ๋ ฅ์ ๊ฐ ํด๋์ค ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ ค๋ฉด ๊ธฐ์ ์ ์ ํ์ฑ๊ณผ ํ๋ก์ธ์ค ๊ท์จ, ๊ทธ๋ฆฌ๊ณ ๊ฑฐ๋ฒ๋์ค ๊ฐ๋ ์ด ๋ชจ๋ ํ์ํ๋ค๋ ๊ฒ์ ๋ณด์ฌ์ค๋๋ค.
ํ ์คํธ, ํ์ฅ์ฑ ๋ฐ ํ๋ํ์ ๋ฏธ์น๋ ์ํฅ
๊ฐ ํด๋์ค(God Class)์ ๋์ ๋ ๊ธฐ์ ๋ถ์ฑ๋ ์ํํธ์จ์ด ์ ์ง ๊ด๋ฆฌ์ ๊ฑฐ์ ๋ชจ๋ ์ธก๋ฉด์ ์ํฅ์ ๋ฏธ์นฉ๋๋ค. ํด๋น ํด๋์ค์ ๋ฉ์๋์ ๋ณ์๊ฐ ๊ธด๋ฐํ๊ฒ ๊ฒฐํฉ๋์ด ์๊ธฐ ๋๋ฌธ์ ํ ์คํธ๊ฐ ๋นํจ์จ์ ์ด๊ณ ๋ถ์์ ํด์ง๋๋ค. ๋จ์ ํ ์คํธ๋ ๊ด๋ จ ์๋ ๋ก์ง์ ํธ์ถํ์ง ์๊ณ ๋ ๊ฐ๋ณ ๋์์ ๋ถ๋ฆฌํ ์ ์์ต๋๋ค. ๊ฒฐ๊ณผ์ ์ผ๋ก ํ๊ท ํ ์คํธ๋ ๋ฆด๋ฆฌ์ค ์ฃผ๊ธฐ๋ง๋ค ๊ธฐํ๊ธ์์ ์ผ๋ก ์ฆ๊ฐํฉ๋๋ค. ๋ํ ์ค์ ์ง์ค์ ์ ์ด๋ก ์ธํด ๋ณ๋ ฌ ์ฒ๋ฆฌ๊ฐ ๋ถ๊ฐ๋ฅํ๊ณ ๋ฉํฐ์ค๋ ๋ ๋๋ ๋ถ์ฐ ํ๊ฒฝ์์์ ํ์ฅ์ฑ์ด ์ ํ๋์ด ์ฑ๋ฅ์ด ์ ํ๋ฉ๋๋ค. ํ๋ํ ๊ด์ ์์ ๊ฐ ํด๋์ค๋ ๋ช ํํ ์ํคํ ์ฒ ๊ฒฝ๊ณ์ ์์กดํ๋ ์๋ํ๋ ๋ณํ ๋๊ตฌ๋ฅผ ๋ฐฉํดํฉ๋๋ค. ์ข ์์ฑ์ ์ถ์ ํ ์ ์๋ ๊ฒฝ์ฐ ์ด๋ฌํ ์์คํ ์ ์๋น์ค ๊ธฐ๋ฐ ๋๋ ๋ชจ๋ํ ํ๋ ์์ํฌ๋ก ๋ง์ด๊ทธ๋ ์ด์ ํ๋ ๊ฒ์ด ์ํํด์ง๋๋ค. ์ด ์ํฐ ํจํด์ ํด๊ฒฐํ๋ฉด ํ ์คํธ ์ปค๋ฒ๋ฆฌ์ง๊ฐ ๋ณต์๋๊ณ ์์คํ ์ฑ๋ฅ์ด ํฅ์๋๋ฉฐ ํ๋ํ ๊ณํ์ด ๊ฐ์ํ๋ฉ๋๋ค. ์ํํธ์จ์ด ์ฑ๋ฅ ์งํ ์ ์ค๋ช ๋ ๋ถ์ ํ๋ ์์ํฌ ๋ ํด๋์ค ์ค์ ์ง์คํ๋ฅผ ์ค์ด๋ฉด ํ ์คํธ ์ฃผ๊ธฐ๊ฐ ๋จ์ถ๋๊ณ ๋ฐํ์ ํจ์จ์ฑ์ด ํฅ์๋๋ฉฐ ํ๋ํ์ ๋ํ ์ ๋ขฐ๋๊ฐ ๋์์ง๋ค๋ ๊ฒ์ ๋ณด์ฌ์ค๋๋ค.
์ ์ ๋ถ์์ ์ฌ์ฉํ์ฌ ์ ํด๋์ค ๊ฐ์ง
ํ๋ํ ํ๋ก์ธ์ค ์ด๊ธฐ์ ๊ฐ ํด๋์ค(God Class)๋ฅผ ๊ฐ์งํ๋ฉด ๋์ค์ ๋ฐ์ํ ์ ์๋ ์ํ๊ณผ ๋ญ๋น๋๋ ๋ ธ๋ ฅ์ ๋ฐฉ์งํ ์ ์์ต๋๋ค. ๊ธฐ์กด์ ์ฝ๋ ๊ฒํ ๋ฅผ ํตํด ๋ฌธ์ ๊ฐ ์๋ ๊ตฌ์กฐ๋ฅผ ํ์ ํ ์ ์์ง๋ง, ์์ฒ ๊ฐ์ ํด๋์ค๊ฐ ์๋ ๋๊ท๋ชจ ์ํฐํ๋ผ์ด์ฆ ์์คํ ์์๋ ์๋ ๊ฒ์ฌ๊ฐ ๋นํจ์จ์ ์ ๋๋ค. ์ ์ ๋ถ์์ ์ ๋์ ์งํ๋ฅผ ์ ์ฉํ์ฌ ๊ณผ๋ํ๊ฒ ์ฑ์ฅํ ๊ตฌ์กฐ๊ฐ ์ํคํ ์ฒ ๋ถ๊ท ํ์ ์ด๋ํ๊ธฐ ์ ์ ์ด๋ฅผ ํ์ ํจ์ผ๋ก์จ ์ด ํ๋ก์ธ์ค๋ฅผ ์๋ํํฉ๋๋ค. ์ด๋ฌํ ์งํ๋ ๊ฐ ํด๋์ค๋ฅผ ์ธก์ ๊ฐ๋ฅํ ๋ฐฉ์์ผ๋ก ์ ์ํ๋ ๊ณผ๋ํ ๋ฉ์๋ ๋ฐ๋, ๋์ ๊ฒฐํฉ๋, ๊ทธ๋ฆฌ๊ณ ์ฝํ ์์ง๋ ํจํด์ ๋๋ฌ๋ ๋๋ค.
์๋ํ๋ ๋ถ์ ๋๊ตฌ๋ ํด๋์ค ํฌ๊ธฐ๋ฟ๋ง ์๋๋ผ ์์คํ ์ ๋ฐ์์ ๊ฐ์ฒด๊ฐ ์ด๋ป๊ฒ ์ํธ ์์ฉํ๋์ง๋ ํ๊ฐํฉ๋๋ค. ํด๋์ค๋น ๊ฐ์ค์น ๋ฉ์๋(WMC), ๊ฐ์ฒด ๊ฐ ๊ฒฐํฉ๋(CBO), ๋ฉ์๋ ์์ง๋(LCOM)์ ๊ฐ์ ์งํ๋ฅผ ๊ณ์ฐํ์ฌ ์ ์ง ๊ด๋ฆฌ ๊ฐ๋ฅ์ฑ์ ํ๊ฐํฉ๋๋ค. ์ด๋ฌํ ๊ฐ์ ์๋ก ๊ด๋ จ ์๋ ์ฌ๋ฌ ์์ ์ ์ํํ๋ ํด๋์ค๋ฅผ ๋ ธ์ถํฉ๋๋ค. ์๊ฐ์ ์ข ์์ฑ ๊ทธ๋ํ๋ ์ด๋ฌํ ๊ตฌ์กฐ๊ฐ ์์คํ ๋์์ ๋ฏธ์น๋ ์ํฅ์ ๋งคํํฉ๋๋ค. ๊ฐ์์ฑ์ด ํ๋ณด๋๋ฉด ํ์ ํ๋ํ ๊ฐ์น์ ์ํ์ ๊ธฐ๋ฐ์ผ๋ก ๋ถํด์ ์ฐ์ ์์๋ฅผ ์ ํ ์ ์์ต๋๋ค. ํจ๊ณผ์ ์ธ ํ์ง๋ฅผ ํตํด ๋ฆฌํฉํ ๋ง ์์ ์ด ๊ฐ์ฅ ์ง์ ๊ฐ๋ฅํ ํจ๊ณผ๋ฅผ ๋ผ ์ ์๋ ๊ณณ์ ์ง์ค๋๋๋ก ๋ณด์ฅํฉ๋๋ค.
๊ณผ์ ์ฑ์ฅ ๊ณ์ธต์ ๋๋ฌ๋ด๋ ์งํ
์ ๋์ ์งํ๋ ์ํคํ ์ฒ ๋ถ๊ท ํ์ ๋ํ ๊ฐ๊ด์ ์ธ ์งํ๋ฅผ ์ ๊ณตํฉ๋๋ค. ๊ฐ์ฅ ์ค์ํ ์งํ๋ก๋ ํด๋์ค ํฌ๊ธฐ, ๋ฉ์๋ ๊ฐ์, ์ํ ๋ณต์ก๋, ์์กด์ฑ ๋ฒ์ ๋ฑ์ด ์์ต๋๋ค. ์ด๋ฌํ ์งํ๊ฐ ์ค์ ๋ ์๊ณ๊ฐ์ ์ด๊ณผํ๋ฉด ๋ถํด ๋์ ํ๋ณด๋ก ๊ฐ์ฃผ๋ฉ๋๋ค. ์์ญ ๊ฐ์ ๊ด๋ จ ์๋ ๋ฉ์๋์ ๊ด๋ฒ์ํ ๋ฐ์ดํฐ ์์กด์ฑ์ ๊ฐ์ง ํด๋์ค๋ ์ ์ด ํ๋ธ ์ญํ ์ ํ ๊ฐ๋ฅ์ฑ์ด ๋์ต๋๋ค. ๋์ ๋ณต์ก๋๋ ํ ์คํธ ์ฉ์ด์ฑ ์ ํ์๋ ๊ด๋ จ์ด ์์ด ์ ์ง ๊ด๋ฆฌ ๋น์ฉ์ด ๋ง์ด ๋ญ๋๋ค. ๋ถ์๊ฐ๋ ์ด๋ฌํ ์งํ๋ค์ ๊ฒฐํฉํ์ฌ ์ข ํฉ์ ์ธ ์ ์ง ๊ด๋ฆฌ์ฑ ์ ์๋ฅผ ๊ณ์ฐํ๊ณ , ์ด๋ฅผ ๋ฐํ์ผ๋ก ํ๋ํ ์ฐ์ ์์๋ฅผ ๊ฒฐ์ ํฉ๋๋ค. ์ด ์ ๊ทผ ๋ฐฉ์์ ์ฅ์ ์ ๋ฐ๋ณต์ฑ์ด ๋ฐ์ด๋๋ค๋ ๊ฒ์ ๋๋ค. ํ ๋ฒ ์ค์ ํ๋ฉด ์งํ ๊ธฐ๋ฐ ํ์ง ๊ธฐ๋ฅ์ ํตํด ์ ์ฒด ์ฝ๋๋ฒ ์ด์ค๋ฅผ ๋ช ๋ถ ๋ง์ ์ค์บํ๊ณ ๋ฌธ์ ๊ฐ ์๋ ํจํด์ ์๋์ผ๋ก ์๋ณํ ์ ์์ต๋๋ค. ํ์ด ์งํ๋ฅผ ์ํคํ ์ฒ ํ์ค์ ๋ง์ถฐ ์กฐ์ ํ๋ฉด ํ๋ํ ๊ณผ์ ์ ์์ธกํ๊ณ ์ธก์ ํ ์ ์์ต๋๋ค. ์ฃผ์ ์ ์ ์ฝ๋ ๋ถ์ ๋๊ตฌ ์ ์ฌ๋ก๋ฅผ ๋ณด๋ฉด ์ ๋์ ์๊ณ๊ฐ๊ณผ ์๊ฐํ๋ฅผ ๊ฒฐํฉํ๋ฉด ํ์ง ์ ํ๋์ ํ๋ํ ํจ์จ์ฑ์ด ๋ชจ๋ ํฅ์๋๋ ๊ฒ์ ์ ์ ์์ต๋๋ค.
์ ์ ๋ถ์ ๋๊ตฌ์ ์๋ ๊ฐ์ง
์ ์ ๋ถ์ ๋๊ตฌ๋ ๊ตฌ์กฐ์ ๋ฉํธ๋ฆญ๊ณผ ์์กด์ฑ ํจํด์ ์๊ด๊ด๊ณ๋ฅผ ๋ถ์ํ์ฌ '๊ฐ ํด๋์ค(God Class)'๋ฅผ ์๋ณํฉ๋๋ค. ๋๋ฌด ๋ง์ ๋ค๋ฅธ ๊ตฌ์ฑ ์์์ ์ํธ ์์ฉํ๊ฑฐ๋ ์ฌ๋ฌ ๊ฐ์ ๊ด๋ จ ์๋ ๋ฐ์ดํฐ ๊ตฌ์กฐ๋ฅผ ์ฒ๋ฆฌํ๋ ํด๋์ค๋ ์ํคํ ์ฒ ๋ถ๊ท ํ์ ๋ํ๋ ๋๋ค. ์๋ํ๋ ์ค์บ์ ์ด๋ฌํ ์์กด์ฑ์ด ์ง์ค๋๋ ์์น๋ฅผ ๋ณด์ฌ์ฃผ๋ ๋ณด๊ณ ์๋ฅผ ์์ฑํ์ฌ ๋ถ์๊ฐ๊ฐ ์์คํ ๋ด์ ํซ์คํ์ ์๊ฐํํ ์ ์๋๋ก ํฉ๋๋ค. ๊ณ ๊ธ ๋๊ตฌ๋ ์๋ฏธ ๋ถ์์ ํตํฉํ์ฌ ํ๋์ ํด๋์ค๊ฐ ์๋ก ๋ค๋ฅธ ๋น์ฆ๋์ค ์์ญ์ ์ํ๋ ๋ก์ง์ ๊ด๋ฆฌํ๋ ๋๋ฉ์ธ ์ค๋ณต์ ๊ฐ์งํฉ๋๋ค. ์ด๋ฌํ ํซ์คํ์ด ์๋ณ๋๋ฉด ํ์ ๊ฐ์ฅ ์ค์ํ ๊ตฌ์ฑ ์์์ ๋ฆฌํฉํ ๋ง ๋ ธ๋ ฅ์ ์ง์คํ ์ ์์ต๋๋ค. ์๋ํ๋ ๊ฐ์ง๋ ์ฃผ๊ด์ ์ธ ํ๋จ์ ์ผ๊ด๋ ์ธก์ ์ผ๋ก ๋์ฒดํ์ฌ ๋ช ํํ ํ๋ํ ๋ก๋๋งต์ ์ ๊ณตํฉ๋๋ค. ๋ถ์ฐ ์์คํ ์ ์ ์ ์ฝ๋ ๋ถ์ ์ฌ๋ก ์ฐ๊ตฌ๋ ์๋ํ๋ ๊ฐ์ง๊ฐ ์ถ์ธก์ ์ ๊ฑฐํ๊ณ ์ฝ๋ ๋ณ๊ฒฝ ์์ ์ ์ํ์ ์ค์์ผ๋ก์จ ํ๋ํ ์ค๋น ์๋๋ฅผ ๋์ธ๋ค๋ ๊ฒ์ ์ ์ฆํฉ๋๋ค.
๊ตฌ์กฐ์ ์งํ๋ฅผ ํ๋ํ ์ค๋น๋์ ์ฐ๊ฒฐ
์งํ๋ง์ผ๋ก๋ ์ฑ๊ณต์ ์ธ ๋ฆฌํฉํ ๋ง์ ๋ณด์ฅํ ์ ์์ต๋๋ค. ์งํ์ ๊ฐ์น๋ ์ ๋์ ๋ฐ์ดํฐ๋ฅผ ์คํ ๊ฐ๋ฅํ ํ๋ํ ์ธ์ฌ์ดํธ๋ก ๋ณํํ๋ ๋ฐ ์์ต๋๋ค. ์ ์ฌ์ ์ธ ํต์ฌ ํด๋์ค(God Class)๊ฐ ์๋ณ๋๋ฉด, ํ์ ํด๋น ํด๋์ค์ ๋ถํด๊ฐ ์ฑ๋ฅ, ํ ์คํธ ๋ฐ ๋ฐ์ดํฐ ๋ฌด๊ฒฐ์ฑ์ ๋ฏธ์น๋ ์ํฅ์ ํ๊ฐํฉ๋๋ค. ๊ตฌ์กฐ์ ๋ณต์ก์ฑ ์ ์๋ ๋น์ฆ๋์ค ํต์ฌ ํ๋ก์ธ์ค์ ๋งคํ๋์ด ์ํ์ ํ๊ฐํฉ๋๋ค. ์ค์ํ์ง ์์ ์ํฌํ๋ก๋ฅผ ์ง์ํ๋ ํด๋์ค๋ ๋จผ์ ๋ถํดํ ์ ์์ง๋ง, ํต์ฌ ํธ๋์ญ์ ์์คํ ์ ํต์ ๋ ์์๋ก ๋ถํดํด์ผ ํฉ๋๋ค. ์ด๋ฌํ ๊ตฌ์กฐํ๋ ์ฐ์ ์์ ์ง์ ์ ํ๋ํ๋ฅผ ๋จ์ํ ๊ธฐ์ ์ ์์ ์์ ๊ฑฐ๋ฒ๋์ค ์ค์ฌ์ ํ๋ก์ธ์ค๋ก ์ ํํฉ๋๋ค. ์ ์ ๋ถ์ ๊ฒฐ๊ณผ๋ฅผ ํ๋ก์ ํธ ๊ด๋ฆฌ ์์คํ ๊ณผ ํตํฉํ๋ฉด ํ๋ํ ์๋ช ์ฃผ๊ธฐ ์ ๋ฐ์ ๊ฑธ์ณ ์ถ์ ์ฑ์ ํ๋ณดํ ์ ์์ต๋๋ค. ์ด๋ฌํ ์ธ์ฌ์ดํธ์์ ์์ฑ๋ ๋ณด๊ณ ์๋ ๊ฐ์ฌ ๊ฐ๋ฅ์ฑ๊ณผ ์งํ ์ํฉ ์ถ์ ์ ์ง์ํฉ๋๋ค. ์ํฅ ๋ถ์ ์ํํธ์จ์ด ํ ์คํธ ์ ๊ฐ์ ํ๋ ์์ํฌ๋ ์ํฅ ๋งคํ๊ณผ ์ ์ ๋ถ์์ ๊ฒฐํฉํ์ฌ ๋ณํ์ ์ํ ์ธก์ ๊ฐ๋ฅํ ๊ธฐ๋ฐ์ ๊ตฌ์ถํ๊ณ ๊ฐ ๋ฆฌํฉํ ๋ง ๋จ๊ณ๊ฐ ๊ธฐ์ ์ ๋ต๊ณผ ์ผ์นํ๋๋ก ๋ณด์ฅํ๋ ๋ฐฉ๋ฒ์ ๋ณด์ฌ์ค๋๋ค.
์ ์ ๊ณ๊ธ์ ๊ฑด์ถ์ ์ฆ์
๊ฐ ํด๋์ค๋ ๋จ์ผ ์ฝ๋ฉ ์ค๋ฅ๋ก ๋ํ๋๋ ๊ฒฝ์ฐ๊ฐ ๊ฑฐ์ ์์ต๋๋ค. ์ํํธ์จ์ด ์ค๊ณ์ ๋น์ฆ๋์ค ๋ก์ง์ด ์๊ฒฉํ ๊ฒฝ๊ณ ์์ด ์ด๋ป๊ฒ ํจ๊ป ์งํํ๋์ง๋ฅผ ๋ณด์ฌ์ฃผ๋ ์ ์ง์ ์ธ ์ํคํ ์ฒ ์๊ณก์ผ๋ก ๋ํ๋ฉ๋๋ค. ์๊ฐ์ด ์ง๋จ์ ๋ฐ๋ผ ๊ณ์ธต์ ๋ถ๋ฆฌ๊ฐ ๋ถ์ฌํ๊ธฐ ๋๋ฌธ์ ๋จ์ผ ํด๋์ค๊ฐ ์๋ก ๋ค๋ฅธ ๊ตฌ์ฑ ์์์ ์ํด์ผ ํ ์ฌ๋ฌ ์ฑ ์์ ๋งก๊ฒ ๋ฉ๋๋ค. ์ํคํ ์ฒ๋ ๋ชจ๋์ ์ ์ฒด์ฑ์ ์๊ธฐ ์์ํ๊ณ , ํ๋์ ํด๋์ค๊ฐ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ ๊ทผ๋ถํฐ ์ ํจ์ฑ ๊ฒ์ฌ ๋ฐ ํ๋ ์ ํ ์ด์ ํ๋ฆ๊น์ง ๋ชจ๋ ๊ฒ์ ์ ์ดํฉ๋๋ค. ์ด๋ฌํ ๊ถํ ์ง์ค์ ์ ์ฐ์ฑ๊ณผ ์ ์ง ๋ณด์์ฑ์ ๋ชจ๋ ์ฝํ์ํค๊ณ , ๋์ผํ ๊ตฌ์กฐ์ ๋ ๋ง์ ๋ก์ง์ ๋์ด๋ค์ด๋ ๊ธฐ์ ์ ์ค๋ ฅ์ ํ์ฑํฉ๋๋ค.
God Class์ ์ํคํ ์ฒ์ ์ฆ์์ ์ดํดํ๋ฉด ํ๋ํ ํ์ด ๋๊ท๋ชจ ๋ฆฌํฉํ ๋ง์ ์์ํ๊ธฐ ์ ์ ๊ตฌ์กฐ์ ๋ถ๊ท ํ์ ์ง๋จํ๋ ๋ฐ ๋์์ด ๋ฉ๋๋ค. ๋ฌธ์ ๋ ํ๋์ ํ์ผ์๋ง ๊ตญํ๋๋ ๊ฒฝ์ฐ๊ฐ ๊ฑฐ์ ์์ผ๋ฉฐ, ๊ฒฐํฉ์ ์ฆํญ์ํค๊ณ ์ํ์ ์ํํ๋ ์ข ์์ฑ ์ฒด์ธ์ ํตํด ํ์ฐ๋๋ ๊ฒฝ์ฐ๊ฐ ๋ง์ต๋๋ค. ์ด๋ฌํ ์งํ๋ฅผ ์กฐ๊ธฐ์ ํ์ ํ๋ฉด ๋ถํด๋ฅผ ์์ธกํ๊ณ ์ธก์ ํ ์ ์์ต๋๋ค. ๊ตฌ์กฐ์ ํฌ๋ช ์ฑ์ ํตํด ํ์ ์ค์ํ ๋ก์ง์ ๋ถ๋ฆฌํ๊ณ , ํ๊ท ์ํ์ ์ต์ํํ๋ฉฐ, ๋น์ฆ๋์ค ์ฐ์ ์์์ ๋ง์ถฐ ๋ฆฌํฉํ ๋ง์ ๊ณํํ ์ ์์ต๋๋ค.
์ค์ ์ง์คํ๋ ๋ ผ๋ฆฌ์ ์์ค๋ ๋๋ฉ์ธ ๊ฒฝ๊ณ
๊ฐ ํด๋์ค(God Class)์ ์ฒซ ๋ฒ์งธ ์งํ ์ค ํ๋๋ ๋ช ํํ ๋๋ฉ์ธ ๊ฒฝ๊ณ๊ฐ ์ฌ๋ผ์ง๋ค๋ ๊ฒ์ ๋๋ค. ๋จ์ผ ์ฑ ์์ ์ง์คํ๋ ๋์ , ํด๋์ค๋ ์ฌ๋ฌ ๊ธฐ๋ฅ ์์ญ์ ์ํ๋ ์ํฌํ๋ก๋ฅผ ์ด๊ดํ๊ธฐ ์์ํฉ๋๋ค. ์๋ฅผ ๋ค์ด, ์๋ ๊ฑฐ๋ ์ ํจ์ฑ ๊ฒ์ฌ๋ฅผ ์ํด ๋ง๋ค์ด์ง ํด๋์ค๊ฐ ์ด์ ๋ณด๊ณ , ๊ฐ์ฌ ๋ฐ ์ค๋ฅ ์ ์ด๊น์ง ์ฒ๋ฆฌํ๊ฒ ๋ฉ๋๋ค. ์ด๋ฌํ ์ค์ ์ง์คํ๋ ๊ด๋ จ ์๋ ๊ธฐ๋ฅ ๊ฐ์ ์จ๊ฒจ์ง ๊ฒฐํฉ์ ์์ฑํ๊ณ ๋๋ฉ์ธ ๋ก์ง์ ๋ชจํธํ๊ฒ ๋ง๋ญ๋๋ค. ์ฑ ์์ด ํ์ฅ๋จ์ ๋ฐ๋ผ ๊ฐ๋ฐ์๋ ๋ชจ๋ ์ ๋ฐ์ ๊ฑธ์ณ ํด๋น ํด๋์ค๋ฅผ ์ฐธ์กฐํ๊ธฐ ์์ํ๊ณ , ์ด๋ ๊ฐ ํด๋์ค๊ฐ ๋ฒ์ฉ ์กฐ์ ์๋ก์์ ์ญํ ์ ๋์ฑ ๊ฐํํ๊ฒ ๋ง๋ญ๋๋ค. ๊ฒฐ๊ณผ์ ์ผ๋ก, ์์ ๊ตฌ์ฑ ์์๋ค์ด ์์ ๋ค์๊ฒ ์์กดํด์ผ ํ ํด๋์ค์ ์์กดํ๊ฒ ๋๋ ์์กด์ฑ ์ญ์ ํ์์ด ๋ฐ์ํฉ๋๋ค. ๋ชจ๋ ๊ท ํ์ ํ๋ณตํ๋ ค๋ฉด ๋๋ฉ์ธ ๊ฒฝ๊ณ์ ๋ฐ๋ผ ๋ก์ง์ ์ฌ๋ถ๋ฐฐํ๊ณ ๋ฐ์ดํฐ ์ฒ๋ฆฌ๋ฅผ ์ ์ด ํ๋ฆ์์ ๋ถ๋ฆฌํด์ผ ํฉ๋๋ค. ์ ํ๋ฆฌ์ผ์ด์ ํฌํธํด๋ฆฌ์ค ๊ด๋ฆฌ ์ฐ๊ตฌ์ ๋ฐ๋ฅด๋ฉด ๋๋ฉ์ธ ์ค์ฌ ๋ถํด๋ ๋ ๊ฑฐ์ ์์คํ ์ ํ๋ํํ ์ค๋น๋ฅผ ๊ฐ์ถ๊ธฐ ์ํ ๊ตฌ์กฐ ์กฐ์ ์ ํ์์ ์ธ ๋จ๊ณ์ ๋๋ค.
๋ชจ๋ ๊ฐ์ ์ํ ์ข ์์ฑ
๊ฐ ํด๋์ค์ ๋ ๋ค๋ฅธ ํน์ง์ ์ธ ์ฆ์์ ์ํ ์์กด์ฑ์ ๋ฐ์์ ๋๋ค. ํ ํด๋์ค๊ฐ ๋ค๋ฅธ ํด๋์ค์ ์์กดํ๊ณ , ๊ทธ ํด๋์ค๊ฐ ๋ค์ ์์ ์๊ฒ ์์กดํ๋ ๊ตฌ์กฐ๋ ๋ฆฌํฉํ ๋ง์ ๊ธฐํ๊ธ์์ ์ผ๋ก ์ด๋ ต๊ฒ ๋ง๋ญ๋๋ค. ์ด๋ฌํ ์ํ ๊ตฌ์กฐ๋ ์ด๋ค ๊ตฌ์ฑ ์์๋ ๋ ๋ฆฝ์ ์ผ๋ก ๋ฐ์ ํ ์ ์๋ ์ทจ์ฝํ ์ํคํ ์ฒ๋ฅผ ์ด๋ํฉ๋๋ค. ์๊ฐ์ด ์ง๋จ์ ๋ฐ๋ผ ์ํ ์ฐธ์กฐ๋ ์ปดํ์ผ ์๊ฐ, ํ ์คํธ ์ค๋ฒํค๋, ๊ทธ๋ฆฌ๊ณ ๊ฒฐํจ ์ ํ๋ฅผ ์ฆ๊ฐ์ํต๋๋ค. ๊ฐ ํด๋์ค๋ ์ข ์ข ์ด๋ฌํ ์ํ ๊ตฌ์กฐ์ ์ค์ฌ์ ์์นํ์ฌ ๋ฐ์ดํฐ ์ ๊ณต์์ด์ ํ๋ก์ธ์ค ์ ์ด์ ์ญํ ์ ๋์์ ์ํํฉ๋๋ค. ์ ์ ๋ถ์ ๋๊ตฌ๋ ๋ชจ๋ ๊ฐ์ ํผ๋๋ฐฑ ๋ฃจํ๋ฅผ ๋๋ฌ๋ด๋ ์์กด์ฑ ๊ทธ๋ํ๋ฅผ ํตํด ์ด๋ฌํ ์ํ ๊ตฌ์กฐ๋ฅผ ์๊ฐํํฉ๋๋ค. ์ด๋ฌํ ๋ฃจํ๋ฅผ ์ ๊ฑฐํ๋ ค๋ฉด ํด๋์ค์ ์ฑ ์ ์์๋ฅผ ์ฌ์ ๋ ฌํ๊ณ ๋ ผ๋ฆฌ ๊ฒฝ๋ก๋ฅผ ๋ถ๋ฆฌํ๋ ์ธํฐํ์ด์ค ๊ฒฝ๊ณ๋ฅผ โโ๋์ ํด์ผ ํฉ๋๋ค. ๊ทธ๋ฌ๋ฉด ํ์ ๊ธฐ๋ฅ์ ์์์ํค์ง ์๊ณ ๋ถํ์ํ ์ฐ๊ฒฐ์ ์ ์ง์ ์ผ๋ก ์ ๊ฑฐํ ์ ์์ต๋๋ค. ๋ชจ๋๋ฆฌ์ ์ํคํ ์ฒ๋ฅผ ๋ง์ดํฌ๋ก์๋น์ค๋ก ๋ฆฌํฉํ ๋งํ๋ ์ฐ๊ตฌ๋ ์ํ ์์กด์ฑ์ ๋๋ ๊ฒ์ด ํ์ฅ์ฑ์ ํฅ์์ํค๊ณ ์ฒด๊ณ์ ์ธ ํ๋ํ๋ฅผ ์ํ ๊ธฐ๋ฐ์ ๋ง๋ จํ๋ค๋ ๊ฒ์ ๋ณด์ฌ์ค๋๋ค.
SOLID ์์น ์๋ฐ ๋ฐ ํ๋ํ ์ํฅ
'๊ฐ ํด๋์ค(God Class)'๋ SOLID ์์น, ํนํ ๋จ์ผ ์ฑ ์ ์์น(Single Responsibility)๊ณผ ์์กด์ฑ ์ญ์ ์์น(Dependency Inversion)์ ์ง์ ์ ์ผ๋ก ์๋ฐํฉ๋๋ค. ํ๋์ ํด๋์ค๊ฐ ์์คํ ์ ์ฌ๋ฌ ๊ณ์ธต์ ์ ์ดํ๊ฒ ๋๋ฉด ์ํคํ ์ฒ ๊ท์จ์ ์ ์งํ๋ ๊ฒ์ด ๋ถ๊ฐ๋ฅํด์ง๋๋ค. ์ด๋ฌํ ์๋ฐ์ ๋ด๋ถ ๋ก์ง์ ๊ด๋ฒ์ํ ์ฌ์ฌ์ฉ, ์ค๋ณต๋ ์์กด์ฑ, ์์ธก ๋ถ๊ฐ๋ฅํ ๋ฐ์ดํฐ ์ ํ๋ก ์ด์ด์ง๋๋ค. ์ด๋ค ๋ฉ์๋๋ ๋ ๋ฆฝ์ ์ผ๋ก ๋ณ๊ฒฝํ ์ ์๊ธฐ ๋๋ฌธ์ ๊ฐ ์์ ์ฌํญ์ ํ๊ท ์ํ์ ์ด๋ํฉ๋๋ค. ํ๋ํ ๊ด์ ์์ ์ด๋ฌํ ์๋ฐ์ ์๋ํ๋ฅผ ๋ฐฉํดํ๋๋ฐ, ๋๊ตฌ๊ฐ ์ํฅ์ ์ ํํ๊ฒ ํ๊ฐํ๊ธฐ ์ํด์๋ ๋ชจ๋ ์ผ๊ด์ฑ์ ์์กดํ๊ธฐ ๋๋ฌธ์ ๋๋ค. ์ด๋ฌํ ํด๋์ค๋ฅผ ๋ฆฌํฉํ ๋งํ๋ ค๋ฉด ๋ก์ง์ ๋ช ํํ ๊ณ์ฝ์ ๊ฐ์ง ์์ง๋ ฅ ์๋ ๋ชจ๋๋ก ๋ถํ ํ์ฌ ์ํคํ ์ฒ ์์น์ ๋ณต์ํด์ผ ํฉ๋๋ค. ์ด ๊ณผ์ ์ ํตํด ๋ฐ์ดํฐ, ๋น์ฆ๋์ค, ์ธํฐํ์ด์ค ๊ณ์ธต ๊ฐ์ ๋ถ๋ฆฌ๊ฐ ํ๋ณต๋ฉ๋๋ค. ์ฅ๊ธฐ์ ์ผ๋ก SOLID ์์น์ ์ค์ํ๋ฉด ํ๋ํ๋ ์ฌํ ๋์์ ์ ์ง๋ณด์์์ ์ฌ์ ์๋ฐฉ์ ๊ฑฐ๋ฒ๋์ค๋ก ์ ํ๋ฉ๋๋ค. ์ํํธ์จ์ด ๊ด๋ฆฌ ๋ณต์ก์ฑ ๋ถ์ ํ๋ ์์ํฌ๋ ์ด๋ฌํ ์์น์ ๋ฐ๋ผ ์ํคํ ์ฒ๋ฅผ ์ฌ์ ๋ ฌํ๋ฉด ํ๋ํ ์๋์ ์ฅ๊ธฐ์ ์ธ ์์ ์ฑ์ด ์ง์ ์ ์ผ๋ก ํฅ์๋จ์ ๋ณด์ฌ์ค๋๋ค.
God Class์ ๋ณ๊ฒฝ ์ ํ ๋ฐ ๋ฆฌํฉํ ๋ง ์ํ
๊ฐ ํด๋์ค(God Class) ๋ฆฌํฉํ ๋ง์ ํ๋ํ ๊ณผ์ ์์ ๊ฐ์ฅ ๋ณต์กํ๊ณ ์ํ์ ๋ฏผ๊ฐํ ์์ ์ค ํ๋์ ๋๋ค. ์ด๋ฌํ ํด๋์ค๋ ์ ํ๋ฆฌ์ผ์ด์ ์ ์ฌ๋ฌ ๋ถ๋ถ์ ์ฐ๊ฒฐ๋๊ธฐ ๋๋ฌธ์, ์์ ์กฐ์ ๋ง์ผ๋ก๋ ๋ค๋ฅธ ๋ชจ๋์์ ์๋์น ์์ ๋์์ด ๋ฐ์ํ ์ ์์ต๋๋ค. ๊ฐ ์ข ์์ฑ์ ๋ ผ๋ฆฌ ๋๋ ๋ฐ์ดํฐ ๋ฌด๊ฒฐ์ฑ์ด ์์๋ ์ ์๋ ์ ์ฌ์ ์ธ ๋จ์ธต์ ์ญํ ์ ํฉ๋๋ค. ๋ฌธ์ ๋ ์ด๋ฌํ ์ํฅ์ด ๋ฐ์ํ๊ธฐ ์ ์ ์์ธกํ๋ ๊ฒ์ ๋๋ค. ์ ์ฒด ์ข ์์ฑ ๋คํธ์ํฌ์ ๋ํ ๊ฐ์์ฑ์ด ๋ถ์กฑํ๋ฉด ๊ฐ๋ฐ์๋ ์ํ์ฐฉ์ค์ ์ธ ๊ฒ์ฆ์ ์์กดํด์ผ ํ๋ ๊ฒฝ์ฐ๊ฐ ๋ง์ผ๋ฉฐ, ์ด๋ ๊ฐ๋ฐ ์๊ฐ๊ณผ ํ๊ท ๋ ธ์ถ์ ์ฆ๊ฐ์ํต๋๋ค.
๋ณ๊ฒฝ ์ ํ ๋ถ์์ ์์ ์ฌํญ์ด ์์คํ ์ ์ฒด์ ์ด๋ป๊ฒ ํ๊ธ๋๋์ง ๋งคํํ์ฌ ์ด๋ฌํ ๋ถํ์ค์ฑ์ ํด๊ฒฐํฉ๋๋ค. ํน์ ๋ณ๊ฒฝ ์ฌํญ์ ์ํฅ์ ๋ฐ๋ ๊ตฌ์ฑ ์์์ ํด๋น ๋ณ๊ฒฝ ์ฌํญ์ด ์ฝ๋๋ฒ ์ด์ค์ ์ผ๋ง๋ ๊น์ด ์นจํฌํ๋์ง ๋ณด์ฌ์ค๋๋ค. ์ด๋ฌํ ํต์ฐฐ๋ ฅ์ ๋ฆฌํฉํ ๋ง์ ์์ ํ๊ฒ ๊ณํํ๋ ๋ฐ ํ์์ ์ ๋๋ค. ํ๋ํ ๋ฆฌ๋๊ฐ ์ด๋ฌํ ์ข ์์ฑ์ ๊ตฌ์กฐ๋ฅผ ์ดํดํ๋ฉด ๋ฆฌํฉํ ๋ง ํ๋์ ์์๋ฅผ ์ ํ๊ณ , ํ ์คํธ์ ์ฐ์ ์์๋ฅผ ์ ํ๊ณ , ํ์ ์ผ๋ก ์ธํ ์ด์์์ ์ํ์ ์ํํ ์ ์์ต๋๋ค.
๋จ์ผ ๋ณ๊ฒฝ ์ฌํญ์ด ์ข ์ ๋ชจ๋์ ํตํด ์ด๋ป๊ฒ ์ ๋ฌ๋๋์ง
ํต์ฌ ๋ก์ง์ ๋ด๋นํ๋ ํด๋์ค๊ฐ ์์คํ ์ ์ง๋ฐฐํ๋ ๊ฒฝ์ฐ, ์์ ์ ๋ฐ์ดํธ๋ผ๋ ๋ถ๊ท ํ์ ์ธ ์ํฅ์ ๋ฏธ์นฉ๋๋ค. ์ฌ๋ฌ ๋ชจ๋์ด ๋์ผํ ์ค์ ์ง์ค์ ๋ก์ง์ ์์กดํ๊ธฐ ๋๋ฌธ์, ํ๋์ ๋ฉ์๋๋ฅผ ์์ ํ๋ฉด ์๋ก ๊ด๋ จ ์๋ ์ฌ๋ฌ ํ๋ก์ธ์ค์ ๊ฑธ์ณ ์ ํ๋ฆฌ์ผ์ด์ ๋์์ด ๋ณ๊ฒฝ๋ ์ ์์ต๋๋ค. ์ด๋ฌํ ํ์์ ํ๊ธ ํจ๊ณผ ์ ํ๋ผ๊ณ ํ๋ฉฐ, ๋ ๊ฑฐ์ ์์คํ ์ด ์ ์ํ ํ๋ํ์ ์ด๋ ค์์ ๊ฒช๋ ์ฃผ์ ์์ธ์ ๋๋ค. ๊ฐ๋ฐํ์ ์๋ก์ด ๊ธฐ๋ฅ์ ๊ตฌํํ๋ ๊ฒ๋ณด๋ค ์ ์ฌ์ ์ธ ๋ถ์์ฉ์ ์ถ์ ํ๋ ๋ฐ ๋ ๋ง์ ์๊ฐ์ ์๋นํ๋ ๊ฒฝ์ฐ๊ฐ ๋ง์ต๋๋ค. ์์กด์ฑ ์ฌ์ฌ์ด ๊ธธ์ด์ง์๋ก ๋น์ฉ์ ๊ธฐํ๊ธ์์ ์ผ๋ก ์ฆ๊ฐํฉ๋๋ค. ์ด๋ฌํ ์ํ์ ์ค์ด๊ธฐ ์ํด ๊ธฐ์ ๋ค์ ํด๋์ค ๊ฐ์ ๋ชจ๋ ์ฐ๊ฒฐ์ ์๊ฐํํ๋ ์๋ํ๋ ์์กด์ฑ ๋งคํ์ ๊ตฌํํฉ๋๋ค. ์ด๋ฌํ ํฌ๋ช ์ฑ์ ํตํด ๋ถ์๊ฐ๋ ํ๊ท ํ ์คํธ๊ฐ ํ์ํ ์์ญ๊ณผ ์์ ์ ์ผ๋ก ์ ์งํ ์ ์๋ ์์ญ์ ํ๊ฐํ ์ ์์ต๋๋ค. ๋ณ๊ฒฝ ๊ด๋ฆฌ ํ๋ก์ธ์ค ์ํํธ์จ์ด ์ ๋ฐฉ๋ฒ๋ก ์ ๊ตฌ์กฐํ๋ ๋ณ๊ฒฝ ์ ํ ๋ถ์์ด ์ด๋ป๊ฒ ํต์ ๋์ง ์์ ๋ถ์์ฉ์ ๋ฐฉ์งํ๊ณ ์ํ ๋ถ๋ด์ด ํฐ ์ํฐํ๋ผ์ด์ฆ ํ๊ฒฝ์์ ์ ์ง์ ์ธ ๋ฆฌํฉํ ๋ง์ ๊ฐ๋ฅํ๊ฒ ํ๋์ง ๋ณด์ฌ์ค๋๋ค.
์ข ์์ฑ ๋งต์ ์ฌ์ฉํ ๋ฆฌํฉํ ๋ง ์ํ ์ ๋ํ
์ํฅ๋ ฅ์ ์ ๋ํํ์ง ์๊ณ '๊ฐ ํด๋์ค(God Class)'๋ฅผ ๋ฆฌํฉํ ๋งํ๋ฉด ๋ถํ์ํ ๋ถํ์ค์ฑ์ด ๋ฐ์ํฉ๋๋ค. ์์กด์ฑ ๋งต์ ์ด๋ฌํ ๋ฌธ์ ๋ฅผ ์ธก์ ๊ฐ๋ฅํ ํ๋ก์ธ์ค๋ก ์ ํํฉ๋๋ค. ํด๋์ค ๊ฐ ์ํธ ์์ฉ์ ๋ ธ๋์ ๋งํฌ๋ก ํํํจ์ผ๋ก์จ ๋ถ์๊ฐ๋ ์ด๋ค ์์กด์ฑ์ด ๊ฐ์ฅ ํฐ ๋น์ค์ด๋ ๋๋ฌ ๋ฒ์๋ฅผ ๊ฐ์ง๋์ง ํ๊ฐํ ์ ์์ต๋๋ค. ์ฐ๊ฒฐ์ฑ์ด ๋์ ๋ ธ๋๋ ๋ฆฌํฉํ ๋ง ์ํ์ด ๋๋ค๋ ๊ฒ์ ์๋ฏธํ๋ฉฐ, ์ถ๊ฐ ํ ์คํธ ๋๋ ๋จ๊ณ์ ๋ง์ด๊ทธ๋ ์ด์ ์ด ํ์ํ ์ ์์ต๋๋ค. ๋ํ ์ด๋ฌํ ๋งต์ ์์ ํ๊ฒ ์ ๊ฑฐํ ์ ์๋ ๊ณ ์ ์ฝ๋์ ์ฌ์ฉ๋์ง ์๋ ์ฐธ์กฐ๋ฅผ ๊ฐ์กฐ ํ์ํฉ๋๋ค. ์ ๋ํ๋ฅผ ํตํด ๋ฐ์ดํฐ ๊ธฐ๋ฐ ์์ฌ ๊ฒฐ์ ์ ๋ด๋ฆด ์ ์์ผ๋ฉฐ, ๋ฆฌํฉํ ๋ง ์ฐ์ ์์๋ฅผ ์ธก์ ๊ฐ๋ฅํ ๋ณต์ก์ฑ ๊ฐ์์ ์ผ์น์ํฌ ์ ์์ต๋๋ค. ํ์ ๊ฐ ๋ฐ๋ณต๋ง๋ค ์์กด์ฑ ๋ฐ๋๊ฐ ๊ฐ์ํจ์ ๋ฐ๋ผ ๊ฐ์ ์ฌํญ์ ์ถ์ ํ ์ ์์ต๋๋ค. ์๊ฐํ๋ฅผ ๋ฒ์ ๊ด๋ฆฌ์ ํตํฉํ๋ฉด ์์คํ ์ด ๋ฐ์ ํจ์ ๋ฐ๋ผ ์ํ ๋ถ์์ด ์ต์ ์ํ๋ก ์ ์ง๋ฉ๋๋ค. ์ต์ ์์คํ ์ xref ๋ณด๊ณ ์์ ๋ํ ์ฐ๊ตฌ ์ ๋ฐ๋ฅด๋ฉด ์์กด์ฑ ์๊ฐํ๋ ํ๋ํ ๊ณํ์ ๊ฐ์ํํ ๋ฟ๋ง ์๋๋ผ ๋ฆด๋ฆฌ์ค ์ ๋ฐ์ ๊ฑธ์ณ ๊ตฌ์กฐ์ ๊ฐ์ ์ ๋ํ ๊ฐ์ฌ ๊ฐ๋ฅํ ์ฆ๊ฑฐ๋ฅผ ์ ๊ณตํฉ๋๋ค.
๋ฆฌํฉํ ๋ง ์์ ๋ฐ ์์ ํ ๋ถํด ์ํ์ฑ
ํต์ฌ ํด๋์ค(God Class)๋ฅผ ๋ถํดํ๋ ์์๋ ํ๋ํ์ ์ฑ๊ณต ์ฌ๋ถ๋ฅผ ๊ฒฐ์ ์ง์ต๋๋ค. ๋ฌด์์์ ์ธ ์ฌ๊ตฌ์กฐํ๋ ํต์ฌ ๊ธฐ๋ฅ์ ์์ ๊ฐ๋ฅ์ฑ์ ๋์ด๋ ๋ฐ๋ฉด, ๊ตฌ์กฐํ๋ ์์๋ ์์ธก ๊ฐ๋ฅํ ๊ฒฐ๊ณผ๋ฅผ ๊ฐ์ ธ์ต๋๋ค. ๋ถ์๊ฐ๋ค์ ์ผ๋ฐ์ ์ผ๋ก ์ต์ํ์ ์ํฅ์ผ๋ก ์ถ์ถํ ์ ์๋ ๊ฐ์ฅ ์์ง๋ ฅ ์๋ ๋ก์ง ๋ถ๋ถ์ ์๋ณํ๋ ๊ฒ๋ถํฐ ์์ํฉ๋๋ค. ๊ฒฐํฉ๋๊ฐ ๋ฎ์ ์ ํธ๋ฆฌํฐ ํจ์๋ ๋ ๋ฆฝ์ ์ธ ์ ํจ์ฑ ๊ฒ์ฌ ๋ฃจํด์ ์ด๊ธฐ ๋ถํด์ ์ ํฉํ ํ๋ณด์ ๋๋ค. ํธ๋์ญ์ ์กฐ์ ์ด๋ ์ํ ๊ด๋ฆฌ์ ๊ฐ์ ๊ณ ์ํ ์์ญ์ ์ข ์์ฑ ๊ด๊ณ๋ฅผ ์์ ํ ์ดํดํ ๋๊น์ง ๋ถํด๋ฅผ ์ฐ๊ธฐํฉ๋๋ค. ์ด๋ฌํ ์ ์ง์ ์ ๊ทผ ๋ฐฉ์์ ์ด์ ์์ ์ฑ์ ์ ์งํ๋ฉด์ ๋ณต์ก์ฑ์ ์ ์ง์ ์ผ๋ก ์ค์ด๋ '์ ์ง์ ๋ถ๋ฆฌ' ์์น๊ณผ ์ผ๋งฅ์ํตํฉ๋๋ค. ์๋ํ๋ ์์ ์ง์ ๋๊ตฌ๋ ์ข ์์ฑ์ ์ถ์ ํ๊ณ ์ค๋ณต์ ์ต์ํํ๋ ์ถ์ถ ๊ฒฝ๋ก๋ฅผ ๊ถ์ฅํฉ๋๋ค. ๋ฌด์ค๋จ ๋ฆฌํฉํ ๋ง ๊ฒฝํ ์ ํตํด ์ข ์์ฑ ๊ฐ๋์ ๊ธฐ๋ฐํ ์์ ์ง์ ์ด ๋น์ฆ๋์ค ์ฐ์์ฑ์ ์ ํดํ์ง ์๊ณ ํ๋ํ๋ฅผ ์งํํ ์ ์์์ ํ์ธํ ์ ์์ต๋๋ค.
๋๊ท๋ชจ ํด๋์ค๋ฅผ ์ํ ๋ถํด ์ ๋ต
๊ฐ ํด๋์ค๊ฐ ์๋ณ๋๋ฉด ๋ถํด๊ฐ ํ๋ํ์ ํต์ฌ ๊ณผ์ ๊ฐ ๋ฉ๋๋ค. ์ด ํ๋ก์ธ์ค๋ ํด๋์ค๋ฅผ ๋ ์๊ณ ์ง์ค๋ ๊ตฌ์ฑ ์์๋ก ๋ถํ ํ์ฌ ๊ฐ๊ฐ ํ๋์ ์์ง๋ ฅ ์๋ ์ฑ ์์ ์ฒ๋ฆฌํ๋ ๊ฒ์ ํฌํจํฉ๋๋ค. ์ด ๊ณผ์ ์์ ํด๊ฒฐํด์ผ ํ ๊ณผ์ ๋ ๊ธฐ๋ฅ์ ๋์์ ์ ์งํ๋ฉด์ ๋ก์ง์ ์ฌ๋ฌ ๋ชจ๋์ ์ฌ๋ถ๋ฐฐํ๋ ๊ฒ์ ๋๋ค. ๋ฐ๋ผ์ ๋ถํด๋ ๊ธฐ์ ์ ์ ํ์ฑ๊ณผ ์ด์ ์์ ์ฑ์ ๊ท ํ์ ๋ง์ถฐ์ผ ํฉ๋๋ค. ๋ช ํํ ๋ก๋๋งต ์์ด ๋ฆฌํฉํ ๋ง์ ์ํํ๋ฉด ๊ธฐ๋ฅ์ด ๋จํธํ๋๊ฑฐ๋ ์์คํ ์ ์ฒด์ ์ํฅ์ ๋ฏธ์น๋ ๋ถ์ผ์น๊ฐ ๋ฐ์ํ ์ ์์ต๋๋ค.
์ฑ๊ณต์ ์ธ ๋ถํด ์ ๋ต์ ๊ฐ์์ฑ์์ ์์๋ฉ๋๋ค. ๋ถ์๊ฐ๋ ํด๋์ค์ ์ด๋ค ๋ถ๋ถ์ด ์ํธ ์์กด์ ์ธ์ง, ์ด๋ค ๋ฉ์๋๊ฐ ๊ณต์ ๋ฐ์ดํฐ์ ์ ๊ทผํ๋์ง, ๊ทธ๋ฆฌ๊ณ ์ด๋ค ๋ก์ง ๊ทธ๋ฃน์ด ๋ ๋ฆฝ์ ์ผ๋ก ์๋ํ ์ ์๋์ง ์ดํดํด์ผ ํฉ๋๋ค. ์ ์ ๋ถ์ ๋๊ตฌ๋ ํธ์ถ ๊ณ์ธต ๊ตฌ์กฐ์ ๋ฐ์ดํฐ ํ๋ฆ์ ์๊ฐํํ์ฌ ๋์์ ์ค๋๋ค. ์ด๋ฌํ ํต์ฐฐ๋ ฅ์ ๋ชจ๋์ ์ถ์ถ์ ์ ๋ํ๊ณ ์ ์ง์ ์ธ ๋ฆฌํฉํ ๋ง์ ๊ฐ๋ฅํ๊ฒ ํฉ๋๋ค. ๊ทธ ๊ฒฐ๊ณผ, ํฅ์๋ ํ์ฅ์ฑ, ๋ ๋์ ํ ์คํธ ์ปค๋ฒ๋ฆฌ์ง, ๊ทธ๋ฆฌ๊ณ ์์ธก ๊ฐ๋ฅํ ํ๋ํ ๊ฒฐ๊ณผ๋ฅผ ์ ๊ณตํ๋ ๋์ฑ ๊น๋ํ ์ํคํ ์ฒ๊ฐ ํ์ํฉ๋๋ค.
์ ์ ๊ณ๊ธ ๋ด์์ ์์ง๋ ฅ ์๋ ํ์ ๋๋ฉ์ธ ์๋ณ
์ฝ๋ ๋ถํด์ ์ฒซ ๋ฒ์งธ ๋จ๊ณ๋ ๊ด๋ จ ๊ธฐ๋ฅ ํด๋ฌ์คํฐ๋ฅผ ์๋ณํ๋ ๊ฒ์ ๋๋ค. ์ผ๋ฐ์ ์ผ๋ก ํต์ฌ ํด๋์ค(God Class)๋ ์ ํจ์ฑ ๊ฒ์ฌ, ๊ณ์ฐ, ๋ฐ์ดํฐ ์์์ฑ ๋ฑ ์ฌ๋ฌ ๋น์ฆ๋์ค ํ์ ์์ญ์ ๊ฑธ์ณ ์๋ ๋ก์ง์ ๊ฒฐํฉํฉ๋๋ค. ์์ง๋ ฅ ์๋ ๊ทธ๋ฃน์ ๋ถ๋ฆฌํ๊ธฐ ์ํด ๋ถ์๊ฐ๋ ๋ฉ์๋๊ฐ ํน์ ๋ฐ์ดํฐ ๊ตฌ์กฐ์ ์ด๋ป๊ฒ ์ํธ ์์ฉํ๋์ง, ๊ทธ๋ฆฌ๊ณ ์ด๋ค ๋ฉ์๋๊ฐ ์ผ๊ด๋ ๋ชฉ์ ์ ๊ณต์ ํ๋์ง ์ดํด๋ด ๋๋ค. ์๋ฅผ ๋ค์ด, ์ฒญ๊ตฌ ๊ธฐ๋ก์ ๊ด๋ฆฌํ๋ ๋ฉ์๋๋ ์ค๋ฅ ์ฒ๋ฆฌ๋ฅผ ๋ด๋นํ๋ ๋ฉ์๋์๋ ๋ณ๊ฐ์ ํ์ ์์ญ์ ์ํฉ๋๋ค. ์ด๋ฌํ ๊ฒฝ๊ณ๊ฐ ํ์ ๋๋ฉด ์ฝ๋๋ ์์์ ์ธ ๊ตฌ์กฐ๊ฐ ์๋ ๋น์ฆ๋์ค ์๋๋ฅผ ๋ฐ์ํ๋ ๋ชจ๋๋ก ๋๋ ์ ์์ต๋๋ค. ์ด๋ฌํ ์ ๊ทผ ๋ฐฉ์์ ์ ์ง ๊ด๋ฆฌ์ฑ์ ํฅ์์ํค๊ณ ๋๋ฉ์ธ ์ถ์ ์ฑ์ ๊ฐ์ ํฉ๋๋ค. ๊ฐ ์ ๋ชจ๋์ ๋ ๋ฆฝ์ ์ผ๋ก ๋ฐ์ ํ ์ ์์ผ๋ฏ๋ก ํ๋ํ ๊ณผ์ ์์ ์ํ์ ์ค์ผ ์ ์์ต๋๋ค. "์คํค๋ง ๋๋จธ" ์์ ์ ์๋ ์ ๊ทผ ๋ฐฉ์์ ๋ฐ์ดํฐ์ ๋ชฉ์ ๋ณ๋ก ๋ก์ง์ ๊ทธ๋ฃนํํ๋ฉด ๋น์ฆ๋์ค ์ ๋ ฌ ๋ฐ ๋ฐ์ดํฐ ๋ฌด๊ฒฐ์ฑ์ ์ ์งํ๋ฉด์ ๋ฆฌํฉํ ๋ง์ ๊ฐ์ํํ ์ ์์์ ๋ณด์ฌ์ค๋๋ค.
๋ ๋ฆฝ ๋ชจ๋ ๋๋ ๋ง์ดํฌ๋ก์๋น์ค ์ถ์ถ
์๋ธ๋๋ฉ์ธ์ด ์ ์๋๋ฉด ๋ค์ ๋จ๊ณ๋ ์ด๋ฅผ ๋ ๋ฆฝ์ ์ธ ๊ตฌ์ฑ ์์๋ก ์ถ์ถํ๋ ๊ฒ์ ๋๋ค. ์ด๋ ํ๋ํ ๋ชฉํ์ ๋ฐ๋ผ ๋ชจ๋ํ๋ ํด๋์ค ํํ๋ก ๋์ผํ ์ฝ๋๋ฒ ์ด์ค ๋ด์์ ์ํ๋๊ฑฐ๋ ๋ง์ดํฌ๋ก์๋น์ค ํํ๋ก ์ธ๋ถ์์ ์ํ๋ ์ ์์ต๋๋ค. ์ถ์ถ ํ๋ก์ธ์ค๋ ๋ถํ์ํ ์ํธ ์ฐธ์กฐ๋ฅผ ์ ๊ฑฐํ๊ธฐ ์ํ ์์กด์ฑ ์ ๋ฆฌ ์์ ์ผ๋ก ์์๋ฉ๋๋ค. ๊ฐ ์ ๋ชจ๋์ ๋ฐ์ดํฐ ๊ตํ ๋ฐฉ์์ ์ ์ํ๋ ๋ช ํํ ์ธํฐํ์ด์ค๋ฅผ ๊ฐ์ ธ์ผ ํฉ๋๋ค. ๋ํ ๊ฒฉ๋ฆฌ๋ฅผ ์ํด์๋ ์ ์ญ ๋ณ์๋ ์ ํธ๋ฆฌํฐ ๋ฉ์๋์ ๊ฐ์ ๊ณต์ ๋ฆฌ์์ค๋ฅผ ์ ์คํ๊ฒ ์ฒ๋ฆฌํด์ผ ํฉ๋๋ค. ์์กด์ฑ์ด ์ต์ํ๋๋ฉด ๊ตฌ์ฑ ์์๋ ์ ์ด๋ API ๋๋ ์๋น์ค ํธ์ถ์ ํตํด ํต์ ํ ์ ์์ต๋๋ค. ์ด๋ฌํ ๊ตฌ์กฐ๋ ๋ถ๋ถ์ ์ธ ํ๋ํ๋ฅผ ๊ฐ๋ฅํ๊ฒ ํ์ฌ ๊ธฐ์ ์ด ์ ์ฒด ์์คํ ์ ๋ค์ ์์ฑํ์ง ์๊ณ ๋ ํน์ ๋ชจ๋์ ์ต์ ํ๋ซํผ์ผ๋ก ๋ง์ด๊ทธ๋ ์ด์ ํ ์ ์๋๋ก ํฉ๋๋ค. ๋ง์ดํฌ๋ก์๋น์ค ๊ฐํธ ์์ ์ค๋ช ๋ ๊ธฐ๋ฒ๋ค์ ์์กด์ฑ ์๊ฐํ๋ฅผ ํตํด ์ง์๋๋ ๋ชจ๋์ ์ถ์ถ์ด ์ค๋จ ์์ด ์งํํ ์ ์๋ ์ ์ฐํ๊ณ ๋ฏธ๋ ์งํฅ์ ์ธ ์ํคํ ์ฒ๋ฅผ ๊ตฌ์ถํ๋ ๋ฐ ๋์์ด ๋๋ค๋ ๊ฒ์ ๋ณด์ฌ์ค๋๋ค.
๋ถ๋ฆฌ ํ ๋ฐ์ดํฐ ํ๋ฆ ๋ฌด๊ฒฐ์ฑ ์ฌ๊ตฌ์ถ
๋ชจ๋ ๋ถํด๋ ์๋ก ์์ฑ๋ ๋ชจ๋ ๊ฐ์ ์ผ๊ด๋ ๋ฐ์ดํฐ ํ๋ฆ์ ์ ์งํ๋ ๋ฐ ์ด๋ ค์์ ์ผ๊ธฐํฉ๋๋ค. ๋๊ท๋ชจ ํด๋์ค๊ฐ ๋ถํ ๋ ๋, ์ด์ ์ ๊ณต์ ๋ฒ์์ ์กด์ฌํ๋ ๋ณ์๋ค์ ์ฌ์ ์๋๊ฑฐ๋ ๊ตฌ์กฐํ๋ ์ธํฐํ์ด์ค๋ฅผ ํตํด ์ด๋๋์ด์ผ ํฉ๋๋ค. ์ด๋ฌํ ์ ํ์ ์ ๋๋ก ๊ด๋ฆฌํ์ง ๋ชปํ๋ฉด ๋ฐ์ดํฐ ์ค๋ณต์ด๋ ๊ตฌ์ฑ ์์ ๊ฐ ๋๊ธฐํ ์์ค์ด ๋ฐ์ํ ์ ์์ต๋๋ค. ์ด๋ฌํ ๋ฌธ์ ๋ฅผ ๋ฐฉ์งํ๊ธฐ ์ํด ํ๋ํ ํ์ ๊ฐ ๋ชจ๋์ ๋ํ ์ ๋ ฅ ๋ฐ ์ถ๋ ฅ ๊ณ์ฝ์ ์ ์ํ์ฌ ๋ฐ์ดํฐ ํ๋ฆ์ ์ฌ๊ตฌ์ฑํฉ๋๋ค. ์ด๋ฌํ ๊ณ์ฝ์ ์ด๋ค ์ ๋ณด๊ฐ ๊ณต์ ๋๋์ง, ์ด๋์์ ๋ฐ์ํ๋์ง, ๊ทธ๋ฆฌ๊ณ ์ด๋ป๊ฒ ์ ํจ์ฑ์ ๊ฒ์ฌํด์ผ ํ๋์ง๋ฅผ ๋ช ์ํฉ๋๋ค. ์๋ํ๋ ๋ถ์์ ํตํด ๋ชจ๋ ๋ฐ์ดํฐ ๊ฒฝ๋ก์ ์ถ์ ๊ฐ๋ฅ์ฑ์ ๋ณด์ฅํฉ๋๋ค. ๋ํ, ์ ์ ํ๊ฒ ์ฌ๊ตฌ์ฑ๋ ๋ฐ์ดํฐ ํ๋ฆ์ ๋ชจ๋ ์์ค์์ ๋ฐ์ดํฐ ์ด๋์ ๋ชจ๋ํฐ๋งํ ์ ์๊ฒ ํจ์ผ๋ก์จ ๊ฐ์ฌ ๊ฐ๋ฅ์ฑ๊ณผ ๊ท์ ์ค์๋ฅผ ํฅ์์ํต๋๋ค. ๋ฐ์ดํฐ ํ๋ซํผ ํ๋ํ ์์ ์ ์๋ ๋ฐฉ๋ฒ๋ก ์ ๋ฆฌํฉํ ๋ง ๊ณผ์ ์์ ๋ฐ์ดํฐ ๋ฌด๊ฒฐ์ฑ์ ์ ์ดํ๋ โโ๊ฒ์ด ์ํคํ ์ฒ๋ฅผ ๊ธฐ์ ๋ฐ์ดํฐ ๊ฑฐ๋ฒ๋์ค ํ์ค์ ๋ง์ถ๋ ๋ฐ ๋์์ด ๋์ด ํ๋ํ์ ์ฑ๊ณต์ ๋ณด์ฅํ๋ค๋ ๊ฒ์ ๋ณด์ฌ์ค๋๋ค.
๋ฆฌํฉํ ๋ง๋ ์ํคํ ์ฒ์ ์ข ์์ฑ ์ ์ด
๊ฐ ํด๋์ค๊ฐ ๋ถํด๋๋ฉด ์๋ก์ด ๋ชจ๋ ๊ฐ์ ์ข ์์ฑ์ ๊ด๋ฆฌํ๋ ๊ฒ์ด ์ค์ํด์ง๋๋ค. ๊ตฌ์กฐํ๋ ์ ์ด๊ฐ ์์ผ๋ฉด ์์คํ ์ ์๋ ๋ฌธ์ ๋ฅผ ์ฌํํ๋ ์๋ก์ด ํํ์ ๊ฒฐํฉ์ผ๋ก ๋น ๋ฅด๊ฒ ํด๋ณดํ ์ ์์ต๋๋ค. ์ข ์์ฑ ์ ์ด๋ ๊ฐ ๊ตฌ์ฑ ์์๊ฐ ๋ช ํํ๊ฒ ์ ์๋ ์ธํฐํ์ด์ค๋ฅผ ํตํด ํต์ ํ๊ณ ์ด๋ค ๋ชจ๋๋ ๋ค๋ฅธ ๋ชจ๋์ ๋ํด ๋ถํ์ํ ๊ถํ์ ์ป์ง ์๋๋ก ๋ณด์ฅํฉ๋๋ค. ์ด๋ฌํ ๊ฒฝ๊ณ๋ฅผ ์ ์งํ๋ ๊ฒ์ ๋ฆฌํฉํ ๋ง์ ํตํด ๋ฌ์ฑ๋ ๋ชจ๋ ๋ฌด๊ฒฐ์ฑ์ ๋ณด์กดํ๊ธฐ ๋๋ฌธ์ ํ๋ํ ์ฑ๊ณต์ ํ์์ ์ ๋๋ค.
ํจ๊ณผ์ ์ธ ์ข ์์ฑ ์ ์ด๋ ์ฝ๋ ๊ตฌ์กฐ ๊ทธ ์ด์์ผ๋ก ํ์ฅ๋ฉ๋๋ค. ์์ธก ๊ฐ๋ฅํ ์ํธ์์ฉ ํจํด์ ๊ตฌ์ถํ์ฌ ํ ์คํธ, ๋ฐฐํฌ ๋ฐ ๊ฑฐ๋ฒ๋์ค์ ์ํฅ์ ๋ฏธ์นฉ๋๋ค. ์ข ์์ฑ ๊ฐ์์ฑ์ ํตํด ํ๋ํ ํ์ ๋ณ๊ฒฝ ์ฌํญ์ ์์ ํ๊ฒ ๊ด๋ฆฌํ๊ณ ํฅํ ์ ๋ฐ์ดํธ์ ์ํฅ์ ์์ธกํ ์ ์์ต๋๋ค. ์ข ์์ฑ์ ๋ฌธ์ํํ๊ณ ๋ชจ๋ํฐ๋งํ๋ฉฐ ์ฃผ๊ธฐ์ ์ผ๋ก ๊ฒ์ฆํ๋ฉด ํ๋ํ๋ ์ผํ์ฑ ํ๋ก์ ํธ์์ ์ง์์ ์ธ ๊ฐ์ ํ๋ก์ธ์ค๋ก ๋ฐ์ ํฉ๋๋ค.
๋ ์ด์ด๋ง์ ํตํ ์ํ ์ข ์์ฑ ๊ฐ์
์ํ ์์กด์ฑ์ ๋ฆฌํฉํ ๋ง ํ ๋ฐ์ํ๋ ๊ฐ์ฅ ์ฌ๊ฐํ ์ํคํ ์ฒ ๊ฒฐํจ ์ค ํ๋์ ๋๋ค. ๋ ๊ฐ ์ด์์ ๋ชจ๋์ด ์๋ก์๊ฒ ์์กดํ์ฌ ์๋ํ ๋, ๋ถ๋ฆฌํ ์ ์๋ ์ํ ๊ณ ๋ฆฌ๊ฐ ํ์ฑ๋ฉ๋๋ค. ์ด๋ฌํ ์ํ ๊ณ ๋ฆฌ๋ ์ํคํ ์ฒ๋ฅผ ์ทจ์ฝํ๊ฒ ๋ง๋๋๋ฐ, ํ ๋ชจ๋์ ์์ ํ๋ฉด ๋ค๋ฅธ ๋ชจ๋๋ ๋์์ ๋ณ๊ฒฝํด์ผ ํ๊ธฐ ๋๋ฌธ์ ๋๋ค. ๊ณ์ธตํ ์ํคํ ์ฒ ์์น์ ๋ฐฉํฅ์ฑ ์์กด์ฑ์ ๊ฐ์ ํจ์ผ๋ก์จ ์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํฉ๋๋ค. ์ด ๊ตฌ์กฐ์์ ํ์ ๊ณ์ธต์ ํต์ฌ ์๋น์ค๋ฅผ ์ฒ๋ฆฌํ๊ณ , ์์ ๊ณ์ธต์ ์ํธ ์์กด ์์ด ํ์ ๊ณ์ธต์ ์์กดํฉ๋๋ค. ๊ฐ ๊ณ์ธต์ ์ ์ ์๋ ์ธํฐํ์ด์ค๋ฅผ ํตํด ํต์ ํ์ฌ ๋ช ํ์ฑ๊ณผ ๋ ๋ฆฝ์ฑ์ ๋ณด์ฅํฉ๋๋ค. ๊ณ์ธต ๋ถ๋ฆฌ๋ฅผ ๊ตฌํํ๋ฉด ํ๋ํ๊ฐ ์์ ํ๋ ๋ฟ๋ง ์๋๋ผ, ๊ตฌ์ฑ ์์๋ฅผ ๋ ๋ฆฝ์ ์ผ๋ก ๊ฒ์ฆํ ์ ์์ผ๋ฏ๋ก ํ ์คํธ ์ฉ์ด์ฑ๋ ํฅ์๋ฉ๋๋ค. ์์กด์ฑ ๋ฐฉํฅ์ ์๊ฐํํ๋ ๋๊ตฌ๋ฅผ ์ฌ์ฉํ๋ฉด ์๋ฐ ์ฌํญ์ ์กฐ๊ธฐ์ ์ฝ๊ฒ ๊ฐ์งํ ์ ์์ต๋๋ค. ๋ณธ ์ํ ๊ด๋ฆฌ ์์ ์ ์๋ ์ ๊ทผ ๋ฐฉ์ ์ ๊ณ์ธตํ ์์กด์ฑ ๊ฐ์ ๊ฐ ์์คํ ์ ์ํ์ ์ค์ฌ ํ๋ํ ํ์ด ์์ ํ๊ณ ์์ธก ๊ฐ๋ฅํ ๋ฐฉ์์ผ๋ก ๋ณํ์ ํ์ฅํ ์ ์๋๋ก ํ๋ค๋ ๊ฒ์ ๋ณด์ฌ์ค๋๋ค.
์ข ์์ฑ ์ญ์ ๋ฐ ์ธํฐํ์ด์ค ๋ถ๋ฆฌ ์๊ฐ
์์กด์ฑ ์ญ์ ์์น์ ์์ ์์ค ๋ชจ๋์ด ํ์ ์์ค ๊ตฌํ์ ์์กดํ๋ ๊ฒ์ด ์๋๋ผ ๊ณต์ ์ถ์ํ์ ์์กดํด์ผ ํ๋ค๋ ๊ฒ์ ์๋ฏธํฉ๋๋ค. ๋ฆฌํฉํ ๋ง ๊ณผ์ ์์ ์ด ๊ฐ๋ ์ ์ ์ฉํ๋ฉด ๋ชจ๋๋ค์ด ์๋ก์ ๋ก์ง์ ์ง์ ์ ์ดํ๋ โโ๊ฒ์ ๋ฐฉ์งํ ์ ์์ต๋๋ค. ๋์ , ๊ตฌํ ์ธ๋ถ ์ ๋ณด๋ฅผ ๋๋ฌ๋ด์ง ์๊ณ ๋์์ ์ ์ํ๋ ์ธํฐํ์ด์ค๋ฅผ ํตํด ํต์ ํ๊ฒ ๋ฉ๋๋ค. ์ด๋ฌํ ๋ถ๋ฆฌ๋ฅผ ํตํด ํ์ ๊ตฌ์ฑ ์์๋ฅผ ๋ ๋ฆฝ์ ์ผ๋ก ๊ต์ฒดํ๊ฑฐ๋ ์์ ํ ์ ์์ด ์ ์ฐ์ฑ๊ณผ ํ ์คํธ ์ฉ์ด์ฑ์ ํฅ์์ํฌ ์ ์์ต๋๋ค. ์ธํฐํ์ด์ค ๋ถ๋ฆฌ๋ ํด๋์ค๋ ๋ชจ๋์ด ์ฌ์ฉํ์ง ์๋ ๋ฉ์๋์ ์์กดํ์ง ์๋๋ก ๋ณด์ฅํจ์ผ๋ก์จ ์ด ์์น์ ๋ณด์ํฉ๋๋ค. ์๊ณ ์ง์ค๋ ์ธํฐํ์ด์ค๋ ์์คํ ์ ๋ณํ ์ ์์ฑ์ ๋์ฌ์ค๋๋ค. ์ด๋ฌํ ์์น๋ค์ ๊ฒฐํฉํ๋ฉด ์ํคํ ์ฒ์ ๊ท์จ์ ํ๋ฆฝํ๊ณ ์๊ฐ์ด ์ง๋จ์ ๋ฐ๋ผ ํ๋ํ์ ์ผ๊ด์ฑ์ ์ ์งํ ์ ์์ต๋๋ค. ์ด๋ ์๋ํ, ๊ฐ์ฌ ๋ฐ ๋ฆฌํฉํ ๋ง์ ์ต์ํ์ ์ํ์ผ๋ก ์งํํ ์ ์๋ ํ์ฅ ๊ฐ๋ฅํ ์ํคํ ์ฒ์ ๊ธฐ๋ฐ์ด ๋ฉ๋๋ค. ์ํํธ์จ์ด ๊ตฌ์ฑ ๋ถ์ ์ฐ๊ตฌ๋ ์ผ๊ด๋ ์ธํฐํ์ด์ค ๊ด๋ฆฌ๊ฐ ์์กด์ฑ ๋ณต์๋ ฅ์ ํฅ์์ํค๊ณ ํ๋ํ ์ฒ๋ฆฌ๋์ ๊ฐ์ํํ๋ค๋ ๊ฒ์ ๋ท๋ฐ์นจํฉ๋๋ค.
๋ฆฌํฉํ ๋ง ํ ์ข ์์ฑ ๊ทธ๋ํ ์ฌ๊ฒ์ฆ
๋ฆฌํฉํ ๋ง์ ํต์ฌ ํด๋์ค(God Class)๋ฅผ ๋ถํ ํ๋ ๊ฒ์ผ๋ก ๋๋๋ ๊ฒ์ด ์๋๋๋ค. ๋ชจ๋ ์ํคํ ์ฒ ๋ณ๊ฒฝ ์ฌํญ์ ์๋ก์ด ๋ชจ๋์ด ์์๋๋ก ์ํธ ์์ฉํ๋์ง ํ์ธํ๊ธฐ ์ํด ์ ๋ฐ์ดํธ๋ ์์กด์ฑ ๋ถ์์ ํตํด ๊ฒ์ฆ๋์ด์ผ ํฉ๋๋ค. ์ฌ๊ฒ์ฆ์ ์๋ก์ด ์์กด์ฑ ๊ทธ๋ํ๋ฅผ ์์ฑํ๊ณ ์ด๋ฅผ ์๋๋ ์ํคํ ์ฒ์ ๋น๊ตํ๋ ๊ณผ์ ์ ํฌํจํฉ๋๋ค. ์ด ๊ณผ์ ์ ํตํด ๊ฐ๋ฐ ์ค์ ๋ค์ ๋์ ๋ ์์กด ๊ฒฐํฉ, ์ค๋ณต ์ธํฐํ์ด์ค ๋๋ ์์กด์ฑ์ ํ์ ํ ์ ์์ต๋๋ค. ํ๋ํ ํ์ ์ด๋ฌํ ๋ฌธ์ ๊ฐ ํ์ฐ๋๊ธฐ ์ ์ ๊ตฌ์กฐ๋ฅผ ์กฐ์ ํ ์ ์์ต๋๋ค. ์ง์์ ์ธ ๊ฒ์ฆ์ ๋ํ ์๊ฐ์ด ์ง๋จ์ ๋ฐ๋ผ ์ํคํ ์ฒ์ ๊ฑด์ ์ฑ์ ์ ์งํ๋ ํผ๋๋ฐฑ ๋ฃจํ๋ฅผ ์ ๊ณตํฉ๋๋ค. ์์กด์ฑ ๊ฒ์ฌ๋ฅผ CI/CD ํ์ดํ๋ผ์ธ์ ํตํฉํ๋ฉด ๋ชจ๋ ๋ฆด๋ฆฌ์ค๊ฐ ๊ท์ ์ค์ ๋ฐ ํ๋ํ ํ์ค์ ๋ฐ๋ผ ๊ฒ์ฆ๋ฉ๋๋ค. ์๊ฐ์ด ์ง๋จ์ ๋ฐ๋ผ ์ด๋ฌํ ๊ทธ๋ํ๋ ์งํํ๋ ์์คํ ์ ๋ฌธ์ํํ๋ ๊ฑฐ๋ฒ๋์ค ์ํฐํฉํธ๊ฐ ๋ฉ๋๋ค. ์ํํธ์จ์ด ์ ์ง ๊ด๋ฆฌ ๊ฐ์น ์ ์ค๋ช ๋ ํ๋ ์์ํฌ ๋ ์ ๋ฐ์ดํธ๋ ์์กด์ฑ ๊ฐ์์ฑ์ ์ ์งํจ์ผ๋ก์จ ํ๋ํ๋ฅผ ๊ฐ๋ณ ํ๋ก์ ํธ์์ ์ง์์ ์ธ ์ธํ ๋ฆฌ์ ์ค๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํ๋ ์ง์์ ์ธ ์ํคํ ์ฒ ๊ฐ์ ์ผ๋ก ์ ํํ ์ ์์์ ๋ณด์ฌ์ค๋๋ค.
์ฑ๋ฅ ๋ฐ ์ ์ง ๊ด๋ฆฌ ์ด์
๊ฐ ํด๋์ค(God Class) ๋ฆฌํฉํ ๋ง์ ๋จ์ํ ๋ฏธ์ ๋๋ ์กฐ์ง์ ๊ฐ์ ๋ง์ ์๋ฏธํ์ง ์์ต๋๋ค. ์ ์ฒด ์ํํธ์จ์ด ์๋ช ์ฃผ๊ธฐ์ ๊ฑธ์ณ ์ธก์ ๊ฐ๋ฅํ ์ด์ ์ ์ ๊ณตํฉ๋๋ค. ๋ก์ง์ด ๋ชจ๋ํ๋๋ฉด ์์คํ ์ ์ง ๊ด๋ฆฌ, ํ ์คํธ ๋ฐ ํ์ฅ์ด ๋ ์ฌ์์ง๋๋ค. ์ง์ค๋ ์ ์ด๊ฐ ์ ๊ฑฐ๋จ์ ๋ฐ๋ผ ์ฒ๋ฆฌ ์ค๋ฒํค๋๊ฐ ๊ฐ์ํ๊ณ , ๋ฆฌ์์ค ํ์ฉ๋๊ฐ ํฅ์๋๋ฉฐ, ๊ฐ๋ฐ ํผ๋๋ฐฑ ์ฃผ๊ธฐ๊ฐ ๋จ์ถ๋ฉ๋๋ค. ํ์ ์ฑ๋ฅ ๋ฌธ์ ๋ฅผ ์ ์ํ๊ฒ ๊ฒฉ๋ฆฌํ ์ ์๊ฒ ๋๊ณ , ๋น์ฆ๋์ค ์ดํด๊ด๊ณ์๋ ์๋ก์ด ๊ธฐ๋ฅ์ ๋น ๋ฅธ ์ ๊ณต๊ณผ ์ด์ ์ฌ๊ณ ๊ฐ์๋ฅผ ๊ฒฝํํ ์ ์์ต๋๋ค.
์ ์ง๋ณด์์ฑ ํฅ์์ ์ฌ์ ์ , ์ด์์ ์ด์ ์ผ๋ก๋ ์ด์ด์ง๋๋ค. ๊ฐ ๊ตฌ์ฑ ์์๊ฐ ์๊ณ ์์ง๋ ฅ์ด ๊ฐํ๋ฉด ํ๊ท ํ ์คํธ์ ์์ธก ๊ฐ๋ฅ์ฑ์ด ๋์์ง๊ณ ๋ฆด๋ฆฌ์ค ์ฃผ๊ธฐ๊ฐ ๋จ์ถ๋ฉ๋๋ค. ํ๋ํ ๋ฆฌ๋๋ ํ๊ท ์๋ฆฌ ์๊ฐ(MTTR) ๋ฐ ๊ฒฐํจ ์ต์ ํจ์จ์ฑ๊ณผ ๊ฐ์ ์ ๋ํ ๊ฐ๋ฅํ ์งํ๋ฅผ ์ฌ์ฉํ์ฌ ์งํ ์ํฉ์ ๋ชจ๋ํฐ๋งํ ์ ์์ต๋๋ค. ์ด๋ฌํ ์ธก์ ๊ฐ๋ฅํ ๊ฒฐ๊ณผ๋ ๋ฆฌํฉํ ๋ง์ ๊ธฐ์ ์ ๊ณผ์ ์์ ์ ๋ต์ ํฌ์๋ก ์ ํํฉ๋๋ค. ์ฑ๋ฅ๊ณผ ์ ์ง๋ณด์์ฑ ํฅ์์ ์ฅ๊ธฐ์ ์ธ ๊ฐ์น๋ ํ๋ํ ๋ ธ๋ ฅ์ ์ ๋นํํ๋ฉฐ, ํนํ ๋น์ฆ๋์ค ํฌ๋ฆฌํฐ์ปฌ ์ด์์ ๊ธฐ๋ฐ์ด ๋๋ ๋๊ท๋ชจ ๋ ๊ฑฐ์ ์์คํ ์ ๊ฒฝ์ฐ ๋์ฑ ๊ทธ๋ ์ต๋๋ค.
๋น๋ ์๊ฐ ๋ฐ ์ปดํ์ผ ๋ณต์ก์ฑ ๊ฐ์
๋๊ท๋ชจ์ ๋จ์ผ ํด๋์ค๋ ์ปดํ์ผ๋ฌ๊ฐ ๋ฉ์๋ ํ๋๋ง ๋ณ๊ฒฝ๋๋๋ผ๋ ์ ์ฒด ์ฝ๋ ์ธ๊ทธ๋จผํธ๋ฅผ ๋ค์ ์ปดํ์ผํด์ผ ํ๋ฏ๋ก ๋น๋ ํ๋ก์ธ์ค ์๋๋ฅผ ์ ํ์ํต๋๋ค. ์ด๋ฌํ ๋จ์ผ ํด๋์ค๋ฅผ ๋ชจ๋์ ๊ตฌ์ฑ ์์๋ก ๋ถํ ํ๋ฉด ๊ฐ ๋น๋์ ๋ฒ์๊ฐ ์ ํ๋์ด ๋ฐ๋ณต ์๋๊ฐ ๋นจ๋ผ์ง๊ณ ๋ฆฌ์์ค ์ฌ์ฉ๋์ด ์ค์ด๋ญ๋๋ค. ๋น๋ ์์คํ ์ ๋ ์์ ์ฝ๋ ๋จ์๋ฅผ ๋ณ๋ ฌ๋ก ์ฒ๋ฆฌํ ์ ์์ผ๋ฏ๋ก ํ์ ๋ณ๊ฒฝ ์ฌํญ์ ๋ ์์ฃผ ๊ฒ์ฆํ ์ ์์ต๋๋ค. ์ด๋ฌํ ํจ์จ์ฑ์ ๊ฐ๋ฐ์ ์์ฐ์ฑ์ ํฅ์์ํค๊ณ ์์คํ ์๋ต์ฑ์ ์ ๋ฐ์ ์ผ๋ก ๊ฐ์ ํฉ๋๋ค. ๋ํ ์ข ์์ฑ์ด ์ง์ญํ๋๊ณ ๊ด๋ฆฌํ๊ธฐ ์ฌ์์ง์ ๋ฐ๋ผ ๋น๋ ์ค๋ฅ ๋ฐ์ ์ํ์ด ์ค์ด๋ญ๋๋ค. ์ด๋ฌํ ๊ตฌ์กฐ์ ๊ฐ์ ์ ์ง์์ ํตํฉ ํ๊ฒฝ์๋ ๋์์ด ๋๋ฉฐ, ์ปดํ์ผ ์๊ฐ ๋จ์ถ์ผ๋ก ๋ฐฐํฌ ์ฃผ๊ธฐ๊ฐ ๋นจ๋ผ์ง๋๋ค. ์๋ํ๋ ์ฝ๋ ๊ฒํ ๋ฅผ ํตํด ์ป์ ๊ด์ฐฐ ๊ฒฐ๊ณผ ์ ๋ฐ๋ฅด๋ฉด, ๋ ์๊ณ ๋ ๋ฆฝ์ ์ธ ์ฝ๋ ๋จ์๋ฅผ ์ ์งํ๋ฉด ๋ฆด๋ฆฌ์ค ํผ๋๋ฐฑ ๋ฃจํ๊ฐ ๋จ์ถ๋๊ณ ๊ธฐ์ ์ ๊ฐ๋ฐ ํ๋ก์ธ์ค์ ์ง์ฐ์ ๋ฐ์์ํค์ง ์๊ณ ๋ ๋๊ท๋ชจ ํ๋ํ๋ฅผ ๊ตฌํํ ์ ์์ต๋๋ค.
ํฅ์๋ ๋ณํ ์๋ ๋ฐ ํ ์คํธ ์ ๋ฐ๋
๋ชจ๋ ๋ถํด๋ฅผ ํตํด ํ ์คํธ๋ ๋์ฑ ์ง์ค์ ์ด๊ณ ์ ๋ขฐํ ์ ์๊ฒ ๋ฉ๋๋ค. ์์ ๋ชจ๋๋ค์ ์ฌ์ฉํ๋ฉด ์ ์ฒด ์ ํ๋ฆฌ์ผ์ด์ ์ ํ ๋ฒ์ ํ ์คํธํ๋ ๋์ ํน์ ๊ธฐ๋ฅ์ ๋์์ผ๋ก ํ๋ ๋จ์ ํ ์คํธ๋ฅผ ์ํํ ์ ์์ต๋๋ค. ์ด๋ฌํ ์ ๋ฐ์ฑ์ ํตํด ๊ฐ๋ฐํ์ ์ค๋ฅ๋ฅผ ์ ์ํ๊ฒ ์๋ณํ๊ณ ๊ฐ๋ณ ๋ชจ๋๋ก ๊ฒฉ๋ฆฌํ ์ ์์ต๋๋ค. ์๋ํ๋ ํ ์คํธ ํ๋ ์์ํฌ๋ ๊ฐ ๊ตฌ์ฑ ์์๋ฅผ ๋ ๋ฆฝ์ ์ผ๋ก ๋ฐฐํฌํ๊ณ ๊ฒ์ฆํ ์ ์์ผ๋ฏ๋ก ๋ชจ๋์ ์ค๊ณ์ ์ด์ ์ ํฌ๊ฒ ํ์ฉํฉ๋๋ค. ์ด๋ฌํ ๋ ๋ฆฝ์ฑ์ ๊ฐ ์ ๋ฐ์ดํธ์ ๋ํ ๊ฒ์ฆ ์๊ฐ์ ๋จ์ถํ์ฌ ๋ณ๊ฒฝ ์๋๋ฅผ ๋์ ๋๋ค. ๋ํ ํ์ ์ ์ง์ ์ธ ๋ฆฌํฉํ ๋ง์ ํตํด ํ๋ก๋์ ์์ ์ฑ์ ์ ์งํ๋ฉด์ ๊ฐ์ ์ฌํญ์ ๋จ๊ณ์ ์ผ๋ก ๋ฐฐํฌํ ์ ์์ต๋๋ค. ํ ์คํธ ๋ฒ์ ๋ฐ ๊ฒ์ฆ ํ๋ก์ธ์ค์ ํจ์จ์ฑ ํฅ์์ ํ๋ํ ์ฒ๋ฆฌ๋์ ์ง์ ์ ์ผ๋ก ํฅ์์ํต๋๋ค. ์ ์ ์ฝ๋ ๋ถ์๊ณผ ๋ ๊ฑฐ์ ์์คํ ์ฌ๋ก ๋ฅผ ํตํด ์ ์ ๋ถ์ ๊ธฐ๋ฐ ๋ชจ๋์ ํ ์คํธ๊ฐ ๋ ๋์ ์ ํ๋, ๋ ์งง์ ๋๋ฒ๊น ์ฃผ๊ธฐ, ๊ทธ๋ฆฌ๊ณ ๋ณํ ํจ์จ์ฑ์ ์ธก์ ๊ฐ๋ฅํ ์ฆ๊ฐ๋ฅผ ๊ฐ์ ธ์จ๋ค๋ ๊ฒ์ ์ ์ ์์ต๋๋ค.
์ฅ๊ธฐ ๊ฑฐ๋ฒ๋์ค ๋ฐ ์ฝ๋๋ฒ ์ด์ค ๊ด์ฐฐ์ฑ
๋ชจ๋๋ฆฌ์ ์ค๊ณ์์ ๋ชจ๋์ ์ค๊ณ๋ก ์ ํํ๋ฉด ์ฝ๋ ๊ฑฐ๋ฒ๋์ค๊ฐ ํฌ๊ฒ ํฅ์๋ฉ๋๋ค. ๊ด์ฐฐ ๋๊ตฌ๋ฅผ ์ฌ์ฉํ๋ฉด ๊ตฌ์ฑ ์์ ์์ค์์ ์ข ์์ฑ, ๋ฐ์ดํฐ ํ๋ฆ ๋ฐ ์คํ ์ฑ๋ฅ์ ์ถ์ ํ ์ ์์ต๋๋ค. ์ด๋ฌํ ๊ฐ์์ฑ์ ํตํด ํ๋ํ ํ์ ์ด์ ์งํ๋ฅผ ๊ฐ์งํ๊ณ , ์ ์ฑ ์ค์ ์ฌ๋ถ๋ฅผ ๊ฒ์ฆํ๊ณ , ๋ฆฌ์์ค ์ฌ์ฉ๋ฅ ์ ์ค์๊ฐ์ผ๋ก ๋ชจ๋ํฐ๋งํ ์ ์์ต๋๋ค. ์์คํ ์ด ๋ชจ๋ํ๋๋ฉด ๊ฐ ๊ตฌ์ฑ ์์์ ์งํ๋ฅผ ๋ ๋ฆฝ์ ์ผ๋ก ํ๊ฐํ ์ ์์ผ๋ฏ๋ก ์ฑ๋ฅ ํ๋์ด ๋์ฑ ์์ธก ๊ฐ๋ฅํด์ง๋๋ค. ์ง์์ ์ธ ๊ด์ฐฐ ๊ฐ๋ฅ์ฑ์ ์ฅ๊ธฐ์ ์ธ ์ํคํ ์ฒ ์ผ๊ด์ฑ์ ๋ณด์ฅํ๊ณ ์๋ก์ด ํต์ฌ ํด๋์ค(God Class)์ ์ ์ง์ ์ธ ์ฌ๊ตฌ์ถ์ ๋ฐฉ์งํฉ๋๋ค. ์กฐ์ง์ ์ ์ง ๊ด๋ฆฌ์ฑ, ๋ณต์ก์ฑ ๊ฐ์ ๋ฐ ํ๋ํ ์ํ ์งํ๋ฅผ ์ธก์ ํ๋ ๊ฑฐ๋ฒ๋์ค ๋์๋ณด๋๋ฅผ ๊ตฌ์ถํ ์ ์์ต๋๋ค. ์ด๋ฌํ ์งํ๋ ์คํ ๊ฐ๋ฅํ ์ธ์ฌ์ดํธ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์ง์์ ์ธ ๊ฐ์ ํผ๋๋ฐฑ ๋ฃจํ๋ฅผ ์์ฑํฉ๋๋ค. ๊ณ ๊ธ ์ํฐํ๋ผ์ด์ฆ ๊ฒ์ ํตํฉ ์ ์ค๋ช ๋ ๋ฐฉ๋ฒ๋ก ์ ๊ตฌ์กฐํ๋ ๊ฐ์์ฑ์ด ํ๋ํ ๊ฐ๋ ์ ๊ฐํํ๊ณ ์ํคํ ์ฒ๊ฐ ์ ์ฒด ์๋ช ์ฃผ๊ธฐ ๋์ ์ด์ ๋ชฉํ์ ๋ถํฉํ๋๋ก ์ ์งํ๋ค๋ ๊ฒ์ ์ ์ฆํฉ๋๋ค.
์ฐ์ ์ฌ๋ก ํจํด์ ์ ํด๋์ค ๋ถํด
๊ฐ ํด๋์ค ๋ฌธ์ ๋ ํน์ ์ฐ์ ์ด๋ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด์๋ง ๊ตญํ๋์ง ์์ต๋๋ค. ๋๊ท๋ชจ์ ๋ชจ๋๋ฆฌ์ ์์คํ ์ด ์ํคํ ์ฒ ํ๋ ์์ํฌ๋ณด๋ค ๋น ๋ฅด๊ฒ ์งํํ๋ ๋ชจ๋ ๊ณณ์์ ๋ฐ์ํฉ๋๋ค. ๊ฐ ์ฐ์ ์ ์ฌ์ ์ฐ์ ์์, ๊ท์ ์ ์ฝ, ๊ทธ๋ฆฌ๊ณ ๊ณผ๊ฑฐ ๊ธฐ์ ๊ฒฐ์ ์ ๋ฐ๋ผ ๋๋ ทํ ๊ณผ์ ์ฑ์ฅ ํจํด์ ๋ณด์ ๋๋ค. ์ด๋ฌํ ์ฐ์ ๋ณ ํน์ง์ ์ดํดํ๋ฉด ํ๋ํ ํ์ ๊ณ ์ ํ ์ด์ ์ํ๊ณผ ๋ฐ์ดํฐ ๊ฑฐ๋ฒ๋์ค ์๊ตฌ ์ฌํญ์ ํด๊ฒฐํ๋ ๋ง์ถคํ ๋ถํด ์ ๋ต์ ์๋ฆฝํ๋ ๋ฐ ๋์์ด ๋ฉ๋๋ค.
๊ธ์ต ๋ถ์ผ์์๋ ์ฌ๋ฌ ๋น์ฆ๋์ค ๊ท์น์ด ๋จ์ผ ๊ตฌ์ฑ ์์์ ๋์ ๋๋ ๊ฑฐ๋ ๋ฐ ๋ณด๊ณ ์์ง์์ God Class๊ฐ ์์ฃผ ๋ฑ์ฅํฉ๋๋ค. ์๋ฃ ๋ถ์ผ์์๋ ๊ท์ ์ค์ ๋ ผ๋ฆฌ์ ๋ฐ์ดํฐ ์ฒ๋ฆฌ๋ฅผ ๊ฒฐํฉํ๋ ๊ธฐ๋ก ๊ด๋ฆฌ ์์คํ ์์ God Class๊ฐ ์ฃผ๋ก ์ฌ์ฉ๋ฉ๋๋ค. ํต์ ๋ถ์ผ์์๋ ๋ฐฉ๋ํ ์ด๋ฒคํธ ๊ธฐ๋ฐ ํ๋ก์ธ์ค ๋คํธ์ํฌ๋ฅผ ๊ด๋ฆฌํ๋ ์๋น์ค ์ค์ผ์คํธ๋ ์ด์ ํ๋ซํผ์์ God Class๊ฐ ํํ ์ฌ์ฉ๋ฉ๋๋ค. ํ๋ํ ํ์ ์ด๋ฌํ ์ฌ๋ก ํจํด์ ๊ฒํ ํ์ฌ ๊ธฐ๋ฅ์ ์ ํ์ฑ๊ณผ ๊ท์ ์ค์ ๋ฌด๊ฒฐ์ฑ์ ์ ์งํ๋ฉด์ ํด๋น ๋ถ์ผ์ ๋ง๊ฒ ๋ถํด ๋ฐฉ๋ฒ์ ์ ์ฉํ ์ ์์ต๋๋ค.
๊ธ์ต ๋ฐ ์ํ์ : ๋ชจ๋๋ฆฌ์ ๊ณ์ข ์ฒ๋ฆฌ ์ฝ์ด
๊ธ์ต๊ธฐ๊ด์์ ํต์ฌ์ ์ธ ์ญํ ์ ํ๋ ํด๋์ค(God Class)๋ ๊ณ์ข ์ฒ๋ฆฌ๋ ์ด์ ๊ณ์ฐ ๋ชจ๋์์ ํํ ๋ํ๋ฉ๋๋ค. ์ด๋ฌํ ์์คํ ์ ์๊ฐ์ด ์ง๋จ์ ๋ฐ๋ผ ์ ์ ํ ๋ชจ๋ํ ์์ด ๊ท์ ์กฐ์ , ๊ฐ์ฌ ์๊ตฌ ์ฌํญ ๋ฐ ์ํ ๊ด๋ฆฌ ๊ธฐ๋ฅ์ ํก์ํ๊ฒ ๋ฉ๋๋ค. ๊ฐ ์ถ๊ฐ ์ฌํญ์ ์๋ก์ด ์ข ์์ฑ์ ์ ๋ฐํ์ฌ ๋ณต์ก์ฑ์ ์ฆ๊ฐ์ํต๋๋ค. ์ด๋ฌํ ํด๋์ค๋ฅผ ๋ถํดํ๋ ค๋ฉด ๋น์ฆ๋์ค ๊ท์น๊ณผ ๊ฑฐ๋ ์ค์ผ์คํธ๋ ์ด์ ์ ๋ถ๋ฆฌํด์ผ ํฉ๋๋ค. ๋ถ์ ํ๋ ์์ํฌ๋ ์ข ์์ฑ ๊ทธ๋ํ๋ฅผ ์ฌ์ฉํ์ฌ ์ด์ ๊ณ์ฐ, ์ ํจ์ฑ ๊ฒ์ฌ ๋ฐ ๋ณด๊ณ ์ ๊ฐ์ ์์ง๋ ฅ ์๋ ๋ถ๋ถ์ ๋ถ๋ฆฌํฉ๋๋ค. ๋ถ๋ฆฌ๋ ๋ชจ๋์ ๋ ๋ฆฝ์ ์ผ๋ก ๋ฐ์ ํ๊ณ ํ์คํ๋ ์ธํฐํ์ด์ค๋ฅผ ํตํด ๊ท์ ์ค์ ์์คํ ๊ณผ ํตํฉ๋ ์ ์์ต๋๋ค. ์ด๋ฌํ ๋ชจ๋ํ๋ ์ค์๊ฐ ๋ชจ๋ํฐ๋ง๊ณผ ๊ท์ ๋ณํ์ ๋ํ ์ ์ํ ์ ์์ ๊ฐ๋ฅํ๊ฒ ํฉ๋๋ค. ๋น์ฆ๋์ค์ฉ ๋ฉ์ธํ๋ ์ ํ๋ํ ๊ฒฝํ ์ ๋ฐ๋ฅด๋ฉด ๊ธ์ต ๊ธฐ๊ด์ ๋๊ท๋ชจ ๋ ๊ฑฐ์ ์ปจํธ๋กค๋ฌ๋ฅผ ์ถ์ ๊ฐ๋ฅํ ๊ฑฐ๋ฒ๋์ค ๊ฐ๋ ๊ธฐ๋ฅ์ ๊ฐ์ถ ๋ ์๊ณ ๊ท์น ๊ธฐ๋ฐ์ ์๋น์ค๋ก ์ฌ๊ตฌ์ฑํจ์ผ๋ก์จ ๋ฏผ์ฒฉ์ฑ๊ณผ ๊ฐ์ฌ ์ ๋ขฐ๋๋ฅผ ๋์ผ ์ ์์ต๋๋ค.
์๋ฃ: ์ค์ ๊ธฐ๋ก ์ปจํธ๋กค๋ฌ ๋ฐ ๊ท์ ์ค์ ๋ ผ๋ฆฌ
์๋ฃ ์์คํ ์์๋ ์ ์ ์๋ฃ ๊ธฐ๋ก ๊ด๋ฆฌ ์ ํ๋ฆฌ์ผ์ด์ ๋ด์ '๊ฐ ํด๋์ค(God Class)'๊ฐ ์ถ์ ๋๋ ๊ฒฝํฅ์ด ์์ต๋๋ค. ์ด๋ฌํ ํด๋์ค๋ ๋ฐ์ดํฐ ์ ํจ์ฑ ๊ฒ์ฌ, ์ ๊ทผ ์ ์ด ๋ฐ ๊ท์ ์ค์ ์ํ์ ํ๋์ ๊ตฌ์กฐ๋ก ํตํฉํฉ๋๋ค. ๊ฐ์ธ์ ๋ณด ๋ณดํธ ๊ท์ ์ด ๋ฐ์ ํจ์ ๋ฐ๋ผ ์ถ๊ฐ์ ์ธ ๋ณด์ ๋ฐ ๊ฐ์ฌ ์๊ตฌ ์ฌํญ์ด ์ถ๊ฐ๋์ด ํด๋์ค์ ๋ณต์ก์ฑ์ด ๋์ฑ ์ฆ๊ฐํฉ๋๋ค. ๋ฆฌํฉํ ๋ง์ ๋ฐ์ดํฐ ์ฒ๋ฆฌ์ ๊ท์ ์ค์ ๋ก์ง ๊ฐ์ ๊ฒฝ๊ณ๋ฅผ ์๋ณํ๋ ๊ฒ์์ ์์๋ฉ๋๋ค. ์ ๊ทผ ๊ด๋ฆฌ๋ ๋ณด์ ์๋น์ค๋ก ์ถ์ํํ๊ณ , ์ ํจ์ฑ ๊ฒ์ฌ ๋ฃจํด์ ๋ณ๋์ ์ ํธ๋ฆฌํฐ๋ก ๋ง์ด๊ทธ๋ ์ด์ ํ ์ ์์ต๋๋ค. ์๋ํ๋ ๋ฐ์ดํฐ ๊ณ๋ณด ๋ถ์์ ํตํด ๋ฆฌํฉํ ๋ง ๊ณผ์ ์์ ๋ชจ๋ ๋ชจ๋์ ๋ฐ์ดํฐ ์ผ๊ด์ฑ์ ์ ์งํ ์ ์์ต๋๋ค. ์ด๋ฌํ ๋ถ๋ฆฌ๋ ์ ์ง ๊ด๋ฆฌ๋ฅผ ๊ฐ์ํํ๊ณ , ํ์ ๋ฐ์ดํฐ ๊ฑฐ๋ฒ๋์ค๋ฅผ ๊ฐ์ ํ๋ฉฐ, ํฅํ ๊ท์ ์ค์ ์ ๋ฐ์ดํธ ๋น์ฉ์ ์ ๊ฐํฉ๋๋ค. ๋ฐ์ดํฐ ํ๋ํ ์ฌ๋ก ์ฐ๊ตฌ์ ๋ฐ๋ฅด๋ฉด ์๋ฃ ์๋น์ค ์ ๊ณต์๋ ์์คํ ๊ตฌ์กฐ๋ฅผ ๊ท์ ์ฑ ์ ๋ฐ ์ด์ ํฌ๋ช ์ฑ๊ณผ ์ผ์น์ํค๋ ๋ชจ๋์ ๋ฆฌํฉํ ๋ง์ ํตํด ๊ฐ์ฅ ํฐ ์ด์ ์ ์ป์ ์ ์์ต๋๋ค.
ํต์ ๋ฐ ๋ฌผ๋ฅ: ์ค์ผ์คํธ๋ ์ด์ ๊ณผ๋ถํ ๋ฐ ์ด๋ฒคํธ ์ฒ๋ฆฌ
ํต์ ๋ฐ ๋ฌผ๋ฅ ์์คํ ์ ์ข ์ข ์ค์ผ์คํธ๋ ์ด์ ๊ณผ๋ถํ ๋ฌธ์ ๋ฅผ ๊ฒช์ต๋๋ค. ๋จ์ผ ์ ์ด ๋ชจ๋์ด ๋ฉ์์ง ๋ผ์ฐํ , ์๊ธ ์ ๋ฐ์ดํธ, ๋คํธ์ํฌ ๊ตฌ์ฑ๊ณผ ๊ฐ์ ์ฌ๋ฌ ๋น๋๊ธฐ ํ๋ก์ธ์ค๋ฅผ ๊ด๋ฆฌํ๊ธฐ ๋๋ฌธ์ ๋๋ค. ์ด๋ฌํ ํ๋ก์ธ์ค ํด๋์ค๋ ์๋ก์ด ๊ธฐ์ ์ด ํตํฉ๋จ์ ๋ฐ๋ผ ํ์ฅ๋์ด ๊ฒฐ๊ตญ ์ค์ํ์ง๋ง ๊ด๋ฆฌํ๊ธฐ ์ด๋ ค์ด ์ ์ด ์ง์ ์ด ๋ฉ๋๋ค. ์ด๋ฌํ ์์คํ ์ ๋ถํดํ๋ ค๋ฉด ์ด๋ฒคํธ ์ฒ๋ฆฌ ๋ฃจํด์ ๋ถ๋ฆฌํ๊ณ ์ ๋ฌธํ๋ ๋ชจ๋ ๋๋ ๋ง์ดํฌ๋ก์๋น์ค์ ์ฌ๋ถ๋ฐฐํด์ผ ํฉ๋๋ค. ๋ถ๋ฆฌ๋ ๊ฐ ์๋น์ค๋ ๊ณ ์ ํ ์ด์ ํ๋ฆ์ ์ฒ๋ฆฌํ๊ณ ์ ์๋ ๋ฉ์์ง ํ ๋๋ API๋ฅผ ํตํด ํต์ ํฉ๋๋ค. ์ด๋ฌํ ๊ตฌ์กฐ๋ ์ ์ฒด ํ๋ซํผ์ ์ฌ์์ฑํ์ง ์๊ณ ๋ ์ง์ฐ ์๊ฐ์ ์ค์ด๊ณ ์ํ์ ํ์ฅ์ฑ์ ํฅ์์ํต๋๋ค. ๋ํ ๋ฆฌํฉํ ๋ง์ ํตํด ๋๊ท๋ชจ ์ด์์ ํ์์ ์ธ ์์ธก ๋ชจ๋ํฐ๋ง ๋ฐ ์ค์๊ฐ ์ค๋ฅ ๊ฒฉ๋ฆฌ๊ฐ ๊ฐ๋ฅํด์ง๋๋ค. ์ค์ผ์คํธ๋ ์ด์ ๊ณผ ์๋ํ ๋น๊ต ๋ถ์์ ํตํด ๋ชจ๋ํ ์ค์ผ์คํธ๋ ์ด์ ๊ณผ ์ข ์์ฑ ์๊ฐํ๊ฐ ํต์ ๋ฐ ๋ฌผ๋ฅ ๊ธฐ์ ์ด ํต์ฌ ์ธํ๋ผ๋ฅผ ํ๋ํํ๋ ๋์์ ์ฑ๋ฅ ์์ ์ฑ์ ์ ์งํ๋ ๋ฐ ๋์์ด ๋๋ค๋ ๊ฒ์ ์ ์ ์์ต๋๋ค.
๋ถํด ๊ณํ์ ์ํ ์ญ๊ณตํ
์์คํ ์ด God Classes๊ฐ ์ํคํ ์ฒ๋ฅผ ์ง๋ฐฐํ๋ ์ง์ ์ ๋๋ฌํ๋ฉด, ์ฌ์ ๋ถ์ ์์ด ์ง์ ๋ฆฌํฉํ ๋งํ๋ ๊ฒ์ ์ํํด์ง๋๋ค. ํต์ ๋ ํ๋ํ๋ฅผ ํฅํ ์ฒซ ๋จ๊ณ๋ ๋ฆฌ๋ฒ์ค ์์ง๋์ด๋ง์ ๋๋ค. ๋ฆฌ๋ฒ์ค ์์ง๋์ด๋ง์ ๊ธฐ์กด ์ฝ๋์์ ๊ตฌ์กฐ, ์ข ์์ฑ, ๊ทธ๋ฆฌ๊ณ ์๋๋ฅผ ์ฌ๊ตฌ์ฑํ๋ ๊ณผ์ ์ ๋๋ค. ๋ฆฌ๋ฒ์ค ์์ง๋์ด๋ง์ ๊ธฐ๋ฅ์ ๋ณ๊ฒฝํ๋ ๊ฒ์ด ์๋๋ผ ์์คํ ์ ์ฒด์์ ๋ก์ง๊ณผ ๋ฐ์ดํฐ๊ฐ ์ด๋ป๊ฒ ์ํธ ์์ฉํ๋์ง ๋ณด์ฌ์ค๋๋ค. ์ด๋ฌํ ํต์ฐฐ๋ ฅ์ ํตํด ํ์ ๋ช ํํ๊ณ ์ ๋ฐํ๊ฒ ๋ถํด ์ ๋ต์ ๊ณํํ์ฌ ํ๋ํ ๊ฒฐ์ ์ด ๊ฐ์ ์ด ์๋ ์ฆ๊ฑฐ์ ๊ธฐ๋ฐํ๋๋ก ํ ์ ์์ต๋๋ค.
๋ง์ ๋ ๊ฑฐ์ ํ๊ฒฝ์์ ๋ฌธ์๋ ๋ถ์์ ํ๊ฑฐ๋ ์ค๋๋์์ต๋๋ค. ๊ฒฐ๊ณผ์ ์ผ๋ก ์ฝ๋ ์์ฒด๊ฐ ์ ์ผํ๊ฒ ์ ๋ขฐํ ์ ์๋ ์ง์ค์ ์์ฒ์ด ๋ฉ๋๋ค. ๋ฆฌ๋ฒ์ค ์์ง๋์ด๋ง์ ์ด๋ฌํ ์ง์์ ์ฒด๊ณ์ ์ผ๋ก ์ถ์ถํฉ๋๋ค. ํด๋์ค ๊ด๊ณ, ํธ์ถ ๊ณ์ธต ๊ตฌ์กฐ, ๋ฐ์ดํฐ ํ๋ฆ์ ์๊ฐํํจ์ผ๋ก์จ ํ์ ๊ณผ๋ํ ์์ ํจํด์ ํ์ ํ๊ณ ๊ฐ ํด๋์ค(God Class)์ ์ด๋ค ๋ถ๋ถ์ ์์ ํ๊ฒ ๋ถ๋ฆฌํ ์ ์๋์ง ํ๋จํ ์ ์์ต๋๋ค. ๊ทธ ๊ฒฐ๊ณผ๋ ๊ฒฝ๊ณ, ์ข ์์ฑ, ๋ฆฌํฉํ ๋ง ์์๋ฅผ ์ ์ํ๋ ํ๋ํ ์ฒญ์ฌ์ง์ด ๋ฉ๋๋ค.
๋ฌธ์ํ๋์ง ์์ ํด๋์ค์์ ์ํคํ ์ฒ ๋ณต๊ตฌ
๋ฌธ์ํ๊ฐ ๋ฏธํกํ ์์คํ ์ ๊ฐ๋ฐ์๊ฐ ๋ฆฌํฉํ ๋ง ์ ์ ์๋๋ฅผ ํ์ ํด์ผ ํ๋ฏ๋ก ํ๋ํ์ ์๋นํ ์ฅ์ ๋ฌผ์ด ๋ฉ๋๋ค. ๋ฆฌ๋ฒ์ค ์์ง๋์ด๋ง์ ์ฝ๋๋ฒ ์ด์ค์ ๋ ผ๋ฆฌ์ ๊ตฌ์ฑ์ ๋ณด์ฌ์ฃผ๋ ์ํคํ ์ฒ ๋ค์ด์ด๊ทธ๋จ์ ์ฌ๊ตฌ์ฑํ์ฌ ์ด๋ฌํ ๊ฒฉ์ฐจ๋ฅผ ํด์ํฉ๋๋ค. ๋ถ์๊ฐ๋ ์ ์ ๋ฐ ๋์ ์ถ์ ์ ์ฌ์ฉํ์ฌ ํด๋์ค ๊ฐ ์ํธ ์์ฉ ๋ฐฉ์๊ณผ ๊ตฌ์ฑ ์์ ๊ฐ ๋ฐ์ดํฐ ํ๋ฆ์ ํ์ ํฉ๋๋ค. ์ฌ๊ตฌ์ฑ๋ ์ํคํ ์ฒ๋ ๋ถํด๋ฅผ ๋ฐฉํดํ๋ ์ค๋ณต์ฑ, ๊ณ์ธต ๊ฐ ์ข ์์ฑ ๋ฐ ์ํ ๊ตฌ์กฐ๋ฅผ ๋๋ฌ๋ ๋๋ค. ์ด๋ฌํ ๊ด๊ณ๊ฐ ํ์ ๋๋ฉด ํ๋ํ ํ์ ์ต์ํ์ ๋ณ๊ฒฝ๋ง ํ์ํ ์์ ์ ์ธ ๋ถ๋ถ์ ๋ถ๋ฆฌํ๊ณ ์ฌ์ธต ๋ถ์์ด ํ์ํ ๊ณ ์ํ ์์ญ์ ํ์ํ ์ ์์ต๋๋ค. ์ด๋ฌํ ์ ๋ณด๋ ๋ฆฌํฉํ ๋ง ์ค์ ์ค์ํ ํ๋ก์ธ์ค๊ฐ ์๋์น ์๊ฒ ์ค๋จ๋๋ ๊ฒ์ ๋ฐฉ์งํฉ๋๋ค. ์ด๋ฌํ ๋ถ์์ ํตํด ์์ฑ๋ ์๋ํ๋ ๋ฌธ์๋ ๊ฑฐ๋ฒ๋์ค ๋ฐ ๊ฐ์ฌ ์ค๋น์ ๊ธฐ๋ฐ์ด ๋ฉ๋๋ค. ์ ์ ์์ค ์ฝ๋ ๋ถ์ ์ฐ๊ตฌ์ ๋ฐ๋ฅด๋ฉด ๋ฆฌ๋ฒ์ค ์์ง๋์ด๋ง์ ํตํ ์ํคํ ์ฒ ์ฌ๊ตฌ์ฑ์ ์๋ ์ฝ๋ ๊ฒ์ฌ๋ฅผ ์ ๋ขฐํ ์ ์๋ ๊ตฌ์กฐ์ ์ ๋ณด๋ก ๋์ฒดํจ์ผ๋ก์จ ํ๋ํ ์๋๋ฅผ ๋์ ๋๋ค.
ํด๋์ค ๊ฐ ์ข ์์ฑ์ ์๊ฐ์ ์ผ๋ก ๋งคํ
์๊ฐ์ ์์กด์ฑ ๋งคํ์ ๋ณต์กํ ํด๋์ค ๊ด๊ณ๋ฅผ ํด์ ๊ฐ๋ฅํ ๊ตฌ์กฐ๋ก ๋ณํํฉ๋๋ค. ํนํ '๊ฐ ํด๋์ค(God Class)'์ ๊ฐ์ ํต์ฌ ํด๋์ค๋ฅผ ๋ค๋ฃฐ ๋, ์๊ฐํ๋ฅผ ํตํด ํด๋น ํด๋์ค๊ฐ ๋ค๋ฅธ ํด๋์ค์ ์ผ๋ง๋ ๊น์ด ์ฐ๊ฒฐ๋์ด ์๋์ง, ๊ทธ๋ฆฌ๊ณ ์ด๋ค ๋ชจ๋์ด ํด๋น ํด๋์ค์ ๊ธฐ๋ฅ์ ์์กดํ๋์ง ํ์ ํ ์ ์์ต๋๋ค. ์์กด์ฑ ๊ทธ๋ํ์ ๊ฐ ๋ ธ๋๋ ํด๋์ค๋ฅผ ๋ํ๋ด๊ณ , ์ฃ์ง๋ ์ํธ ์์ฉ ๋๋ ๋ฐ์ดํฐ ๊ตํ์ ๋ํ๋ ๋๋ค. ๋ถ์๊ฐ๋ ์ฐ๊ฒฐ ๋ฐ๋๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ๊ฐ์ฅ ์ค์ํ ๋ ธ๋๋ฅผ ์๋ณํ์ฌ ๋ถํด๋ฅผ ์์ํด์ผ ํ ์ง์ ์ ๊ฒฐ์ ํ ์ ์์ต๋๋ค. ๋ํ ์๊ฐํ๋ ์ํ๋๊ฐ ๋ฎ์ ๊ตฌ์ฑ ์์๋ฅผ ๋์์ ์ฌ๊ตฌ์ฑํ ์ ์๋ ๋ณ๋ ฌ ๋ฆฌํฉํ ๋ง ๊ธฐํ๋ฅผ ๋ณด์ฌ์ค๋๋ค. ํ๋ํ ํ์ ์ด๋ฌํ ์๊ฐ์ ๋งต์ ํ์ฉํ์ฌ ๋ฆฌํฉํ ๋ง ์์๋ฅผ ๊ณํํ๊ณ ๋ฆฌ์์ค๋ฅผ ํจ์จ์ ์ผ๋ก ํ ๋นํฉ๋๋ค. ์ฝ๋ ์๊ฐํ ์์ ์ค๋ช ํ๋ ๋ฐฉ๋ฒ ์ ๊ทธ๋ํฝ ํํ์ด ์ดํด๋๋ฅผ ํฅ์์ํฌ ๋ฟ๋ง ์๋๋ผ ์ํคํ ์ฒ์ ๋ณต์ก์ฑ์ ์ธก์ ๊ฐ๋ฅํ๊ณ ํฌ๋ช ํ๊ฒ ๋ณด์ฌ์ค์ผ๋ก์จ ๊ธฐ์ ๋ถ์๊ณผ ๋น์ฆ๋์ค ๊ณํ์ ์ฐ๊ณํ๋ ๋ฐ ๋์์ด ๋๋ค๋ ๊ฒ์ ๋ณด์ฌ์ค๋๋ค.
๋ฆฌํฉํ ๋ง ์ ํ๋ํ ์ฒญ์ฌ์ง ๊ตฌ์ถ
์ญ์ค๊ณ๋ ์ต์ข ์ ์ผ๋ก ์๋๋ ๋ณํ ๊ฒฝ๋ก๋ฅผ ๋ฌธ์ํํ๋ ํ๋ํ ์ฒญ์ฌ์ง์ ์์ฑํ๋ ๊ฒ์ผ๋ก ๋ง๋ฌด๋ฆฌ๋ฉ๋๋ค. ์ด ์ฒญ์ฌ์ง์ ํต์ฌ ํด๋์ค์ ๊ฐ ์น์ ์ด ์ด๋ป๊ฒ ๋ถํด๋ ์ง, ์ข ์์ฑ์ด ์ด๋ป๊ฒ ์ฌ๊ตฌ์ฑ๋ ์ง, ๊ทธ๋ฆฌ๊ณ ์๋ก์ด ๋ชจ๋ ๊ฐ์ ํต์ ์ ์ด๋ค ์ธํฐํ์ด์ค๊ฐ ๊ด์ฅํ ์ง๋ฅผ ๋ช ์ํฉ๋๋ค. ์ ์ค๊ณ๋ ์ฒญ์ฌ์ง์ ์ํ ์๊ณ๊ฐ, ์ฑ๊ณต ์งํ ๋ฐ ๊ฒ์ฆ ์ง์ ์ ์ ์ํ์ฌ ๊ธฐ์ ์คํ๊ณผ ๋น์ฆ๋์ค ๋ชฉํ๋ฅผ ์ผ์น์ํต๋๋ค. ๋ํ ๋ชจ๋ ํ๋ํ ๊ฒฐ์ ์ ๋ํ ์ถ์ ์ฑ์ ํ๋ฆฝํ์ฌ ๊ฐ์ฌ ๊ฐ๋ฅ์ฑ๊ณผ ๊ท์ ์ค์๋ฅผ ๋ณด์ฅํฉ๋๋ค. ์๋ํ ๋๊ตฌ๋ ์ข ์์ฑ ๋ฐ์ดํฐ์์ ์ง์ ์ด๋ฌํ ๊ณํ์ ์์ฑํ์ฌ ๋ชจํธ์ฑ์ ์ ๊ฑฐํ๊ณ ์ธ์ ์ค๋ฅ๋ฅผ ์ค์ ๋๋ค. ์ต์ข ํ์ ๋ ์ฒญ์ฌ์ง์ ์ง์์ ์ธ ํ๋ํ์ ํจ๊ป ์งํํ๋ ์ด์์๋ ์ฐ๋ฌผ์ ๋๋ค. " ๋งต ์ ํฌ ๋ง์คํฐ ์(Map It to Master It)" ์ฐ๊ตฌ ๊ฒฐ๊ณผ๋ ์ฒด๊ณ์ ์ธ ์ฒญ์ฌ์ง ์์ฑ์ด ๋ฐ๊ฒฌ๊ณผ ๊ตฌํ ์ฌ์ด์ ๊ฐ๊ทน์ ๋ฉ์ฐ๊ณ , ๋ฐ์ดํฐ ๊ธฐ๋ฐ ๊ณํ์ ์ํด ์ง์๋๋ ํต์ ๋ ์์ง๋์ด๋ง ๋ถ์ผ๋ก ํ๋ํ๋ฅผ ๋ณํ์ํจ๋ค๋ ๊ฒ์ ๋ณด์ฌ์ค๋๋ค.
์๋ ๊ฐ์ง ๋ฐ ๊ฑฐ๋ฒ๋์ค์ Smart TS XL
๋๊ท๋ชจ ํ๋ํ์๋ ์๋ ๋ถ์๋ณด๋ค ์ํคํ ์ฒ ๋ณต์ก์ฑ์ ๋ ๋น ๋ฅด๊ณ ์ ํํ๊ฒ ํด์ํ ์ ์๋ ๋๊ตฌ๊ฐ ํ์ํฉ๋๋ค. Smart TS XL์ ์ ์ ์ฝ๋ ๋ถ์, ์ข ์์ฑ ์๊ฐํ, ๊ฑฐ๋ฒ๋์ค ์ธํ ๋ฆฌ์ ์ค๋ฅผ ๋จ์ผ ํตํฉ ํ๋ซํผ์ ๊ฒฐํฉํ์ฌ ์ด๋ฌํ ์ญํ ์ ์ํํฉ๋๋ค. ๊ฐ ํด๋์ค(God Classes)๋ฅผ ์์ฑํ๋ ์จ๊ฒจ์ง ๊ตฌ์กฐ๋ฅผ ํ์ ํ๊ณ ์ด๋ฌํ ๊ตฌ์กฐ๊ฐ ์์คํ ์ ๋ฐ์์ ์ด๋ป๊ฒ ์ํธ ์์ฉํ๋์ง ๋งคํํฉ๋๋ค. Smart TS XL์ ๊ฒ์ ํ๋ก์ธ์ค๋ฅผ ์๋ํํ์ฌ ์กฐ์ง์ด ๋ถํฌ๋ช ํ ๋ ๊ฑฐ์ ์ฝ๋๋ฒ ์ด์ค๋ฅผ ์ ์ด๋ ๋ฆฌํฉํ ๋ง์ ์ ํฉํ ํฌ๋ช ํ ๋ฐ์ดํฐ ๊ธฐ๋ฐ ์ํคํ ์ฒ๋ก ์ ํํ ์ ์๋๋ก ์ง์ํฉ๋๋ค.
Smart TS XL์ ๊ธฐ์ ๋ฐ ๊ฑฐ๋ฒ๋์ค ๋ ๋ฒจ ๋ชจ๋์์ ์๋ํฉ๋๋ค. ์ ํ๋ฆฌ์ผ์ด์ , ๋ฐ์ดํฐ, ์ค์ผ์คํธ๋ ์ด์ ๋ฑ ์ฌ๋ฌ ๊ณ์ธต์ ์ข ์์ฑ์ ๋ถ์ํ์ฌ ๋ก์ง์ด ์ด๋ป๊ฒ ๋ถ์ฐ๋๊ณ ์ด๋์์ ๊ณผ๋ํ ์ง์ค์ด ๋ฐ์ํ๋์ง ํ์ ํฉ๋๋ค. ์ด ํ๋ซํผ์ ๊ธฐ์ ์ ๊ด์ฐฐ ๊ฒฐ๊ณผ๋ฅผ ํ๋ํ ์ ๋ต๊ณผ ์ฐ๊ฒฐํ๋ ์ถ์ ๊ฐ๋ฅํ ์ธ์ฌ์ดํธ๋ฅผ ์์ฑํ์ฌ ๊ฐ ๋ฆฌํฉํ ๋ง ๋จ๊ณ๊ฐ ๊ธฐ์ ๊ท์ ์ค์ ๋ฐ ์ฑ๊ณผ ๋ชฉํ์ ๋ถํฉํ๋๋ก ๋ณด์ฅํฉ๋๋ค. ์ฝ๋ ์ธํ ๋ฆฌ์ ์ค์ ๊ฑฐ๋ฒ๋์ค ๊ฐ์์ฑ์ ์ด๋ฌํ ์ตํฉ์ ํ๋ํ๋ฅผ ๋จ์ํ ํ์์ ํ๋์์ ์์ธก ๊ฐ๋ฅํ๊ณ ๊ฐ์ฌ ๊ฐ๋ฅํ ํ๋ก์ธ์ค๋ก ์ ํํฉ๋๋ค.
์ข ์์ฑ ํด๋ฌ์คํฐ๋ง์ ํตํ ์ ํด๋์ค ๊ฐ์ง
Smart TS XL์ ์ผ๋ฐ์ ์ธ ๊ตฌ์กฐ์ ์๊ณ๊ฐ์ ์ด๊ณผํ๋ ์์กด์ฑ ํด๋ฌ์คํฐ๋ฅผ ๊ฐ์งํ์ฌ '๊ฐ ํด๋์ค(God Class)'๋ฅผ ์๋์ผ๋ก ์๋ณํฉ๋๋ค. ๊ฒฐํฉ๋, ์์ง๋, ๊ต์ฐจ ์ฐธ์กฐ ๋ฐ๋์ ๊ฐ์ ์งํ๋ฅผ ํ๊ฐํ์ฌ ์ํคํ ์ฒ ์ ์ด ์ผํฐ ์ญํ ์ ํ๋ ํด๋์ค๋ฅผ ํ์ ํฉ๋๋ค. ๊ฐ์ง๋ ํด๋ฌ์คํฐ๋ ๋ชจ๋ ๊ฐ์ ๊ด๊ณ์ ์์คํ ๋ด ๋ฐ์ดํฐ ํ๋ฆ์ ๋ณด์ฌ์ฃผ๋ ๋ํํ ๋งต์ผ๋ก ์๊ฐํ๋ฉ๋๋ค. ์ด๋ฌํ ๋ช ํ์ฑ์ ํตํด ํ๋ํ ํ์ ์๋ ๊ฒ์ฌ์ ์์กดํ์ง ์๊ณ ๋ถํดํด์ผ ํ ๊ฐ์ฅ ์ค์ํ ์์ญ์ ์ ํํ ์ฐพ์๋ผ ์ ์์ต๋๋ค. ๊ฒฐ๊ณผ๋ก ์์ฑ๋ ์์กด์ฑ ํด๋ฌ์คํฐ๋ ๋๋ฉ์ธ ๋๋ ํ์ ์์คํ ๋ณ๋ก ํํฐ๋งํ ์ ์์ด ๋จ๊ณ๋ณ ํ๋ํ๊ฐ ๊ฐ๋ฅํฉ๋๋ค. ๊ฐ ํด๋ฌ์คํฐ๋ ์ค๋ณต์ด๋ ์ถฉ๋์ ์ต์ํํ๋ฉด์ ์ฒ๋ฆฌํ ์ ์์ผ๋ฏ๋ก ์ด๋ฌํ ์ ํ์ฑ์ ์ํ์ ํฌ๊ฒ ์ค์ฌ์ค๋๋ค. ํ๋ฐํธ์๋ ์ฝ๋์์ XSS ์ทจ์ฝ์ ์ ๊ฐ์งํ ์ฌ๋ก๋ฅผ ํตํด ํจํด ๊ธฐ๋ฐ ํด๋ฌ์คํฐ๋ง์ด ๊ตฌ์กฐ์ ์ด์์ ์กฐ๊ธฐ์ ๊ฐ์งํ๊ณ ๋๊ท๋ชจ ์์คํ ์ ๋ฐ์ ๊ฑธ์ณ ํ๋ํ ์์ธก ๊ฐ๋ฅ์ฑ์ ๊ฐํํ๋ค๋ ๊ฒ์ ํ์ธํ ์ ์์ต๋๋ค.
๋งคํ ๋ฐฉ๋ฒ ์์ ๊ถ ๋ฐ ๋ฐ์ดํฐ ํ๋ฆ ๊ฐ์์ฑ
Smart TS XL์ ๊ตฌ์กฐ์ ๋ถ์์ ๋์ด ๋ณต์กํ ์ฝ๋๋ฒ ์ด์ค์์ ๋ฐ์ดํฐ๊ฐ ์ด๋ป๊ฒ ์ด๋ํ๋์ง ์๋ฒฝํ๊ฒ ํ์ ํ ์ ์๋๋ก ์ง์ํฉ๋๋ค. ์ํธ ์ฐ๊ฒฐ๋ ํ๋ก๊ทธ๋จ ์ ๋ฐ์ ๊ฑธ์ณ ๋ณ์ ์ ์, ๋ณํ, ๋ฉ์๋ ํธ์ถ์ ์ถ์ ํ์ฌ ๋ฐ์ดํฐ ๊ณ๋ณด์ ์ ์ฒด ์ง๋๋ฅผ ๊ตฌ์ถํฉ๋๋ค. ์ด ๊ธฐ๋ฅ์ ๋น์ฆ๋์ค ๋ก์ง๊ณผ ๋ฐ์ดํฐ ์กฐ์์ด ๊ฒฐํฉ๋ '๊ฐ ํด๋์ค(God Class)'๋ฅผ ๋ถํดํ ๋ ํนํ ์ ์ฉํฉ๋๋ค. ๋ฉ์๋ ์์ ๊ถ์ ์๊ฐํํจ์ผ๋ก์จ ํ์ ํด๋์ค์ ์ด๋ค ๋ถ๋ถ์ด ํน์ ์ฑ ์์ ๋ด๋นํ๊ณ ๋ก์ง์ด ์ด๋์์ ์ค๋ณต๋๋์ง ํ์ ํ ์ ์์ต๋๋ค. Smart TS XL์ ์ด๋ฌํ ๋ถ์ ๊ฒฐ๊ณผ๋ฅผ ์๋์ผ๋ก ๋ฌธ์์ ํตํฉํ์ฌ ์์คํ ์งํ ๊ณผ์ ์ ์ง์์ ์ผ๋ก ๊ธฐ๋กํฉ๋๋ค. ์ด๋ฌํ ์๋ํ๋ ์ธ์ฌ์ดํธ๋ ์ค๋ณต์ ๋ฐฉ์งํ๊ณ ํ๋ํ ๋จ๊ณ ์ ๋ฐ์ ๊ฑธ์ณ ๋ฐ์ดํฐ ์ผ๊ด์ฑ์ ๋ณด์ฅํฉ๋๋ค. ์คํ ์์ด ๋ก์ง์ ์ถ์ ํ๋ ๋ฐ ์ฌ์ฉ๋๋ ๊ฒ๊ณผ ์ ์ฌํ ๋ถ์ ์ํฌํ๋ก๋ฅผ ํตํด ๊ณ ๊ธ ๋ฐ์ดํฐ ํ๋ฆ ์ถ์ ์ด ๋ถํด ์ ํ๋์ ์ํคํ ์ฒ ๊ท์ ์ค์๋ฅผ ๋ชจ๋ ํฅ์์ํจ๋ค๋ ๊ฒ์ ํ์ธํ ์ ์์ต๋๋ค.
๊ฑฐ๋ฒ๋์ค ๋ฐ ๊ฐ์ฌ ํตํฉ
Smart TS XL์ ๊ฐ์ฅ ํฐ ์ฅ์ ์ค ํ๋๋ ๊ฑฐ๋ฒ๋์ค ํตํฉ์ ๋๋ค. ๋ชจ๋ ๋ถ์, ์ข ์์ฑ ๋งต, ์ฝ๋ ๋ณ๊ฒฝ ์ฌํญ์ ์ถ์ ๊ฐ๋ฅํ ๊ฐ์ฌ ๊ธฐ๋ก์ ํฌํจ๋ฉ๋๋ค. ์ด๋ฌํ ํฌ๋ช ์ฑ์ ํตํด ํ๋ํ ๊ฒฐ์ ์ ๋ํ ๊ฒํ , ๊ฒ์ฆ, ๊ธฐ์ ํ์ค ์ค์ ์ฌ๋ถ๋ฅผ ํ์ธํ ์ ์์ต๋๋ค. ํ๋ซํผ์ ํ๋ํ ์งํ ์ํฉ, ๋ณต์ก์ฑ ๊ฐ์, ๊ตฌ์กฐ์ ๊ฐ์ ์ฌํญ์ ๋ณด์ฌ์ฃผ๋ ์ค์๊ฐ ๋์๋ณด๋๋ฅผ ์ ๊ณตํฉ๋๋ค. ๊ฑฐ๋ฒ๋์ค ํ์ ๋ถํด ๊ณผ์ ์ด ์น์ธ๋ ์์๋ฅผ ๋ฐ๋ฅด๋์ง, ๋ชจ๋ ๋ณ๊ฒฝ ์ฌํญ์ด ์ํฅ ๋ชจ๋ธ์ ๋ฐ๋ผ ๊ฒ์ฆ๋์๋์ง ๋ชจ๋ํฐ๋งํ ์ ์์ต๋๋ค. ์ด๋ฌํ ์ง์์ ์ธ ๊ฐ๋ ์ ๊ท์ ์ค์ ์ํ์ ์ค์ด๋ ๋์์ ํ๋ํ ๊ฒฐ๊ณผ์ ๋ํ ์ ๋ขฐ๋๋ฅผ ๋์ ๋๋ค. ๊ธฐ์ ์ ์ด๋ฌํ ์ธ์ฌ์ดํธ๋ฅผ ํ์ฉํ์ฌ ๊ท์ ๊ฐ์ฌ ๋๋ ์ ํ ๊ฒํ ๊ณผ์ ์์ ์ฑ ์์ฑ์ ์ ์ฆํ ์ ์์ต๋๋ค. ์ํํธ์จ์ด ์ธํ ๋ฆฌ์ ์ค ์ฐ๊ตฌ์ ๋ฐ๋ฅด๋ฉด ํ๋ํ ๋๊ตฌ๊ฐ ๋ถ์ ํ์ดํ๋ผ์ธ์ ๊ฑฐ๋ฒ๋์ค๋ฅผ ์ง์ ํตํฉํ ๊ฒฝ์ฐ ๊ธฐ์ ์ ๊ธฐ์ ์ ์ ํ์ฑ๊ณผ ์ ํ ๊ฒฐ๊ณผ์ ๋ํ ๊ธฐ๊ด์ ์ ๋ขฐ๋ฅผ ๋ชจ๋ ํ๋ณดํ ์ ์์ต๋๋ค.
๋ชจ๋๋ฆฌ์ค์์ ๋ชจ๋ํ ์ ๋ฐ์ฑ์ผ๋ก
๊ฐ ํด๋์ค(God Class)๋ฅผ ๋ฆฌํฉํ ๋งํ๋ ๊ฒ์ ๋จ์ํ ์์ง๋์ด๋ง ์์ ์ด ์๋๋ผ ์ํคํ ์ฒ ๊ท์จ์ ํ๋ณต์ ๋๋ค. ๊ฐ๊ฐ์ ๊ฑฐ๋ํ ๊ตฌ์กฐ๋ ์์คํ ์๋๋ฅผ ๋ชจํธํ๊ฒ ๋ง๋ ์๋ ๊ฐ์ ์ ์ง์ ์ธ ์ ์ ๊ณผ์ ์ ๋ํ๋ ๋๋ค. ๋ก์ง์ ์ ์ ์๋ ๋ชจ๋๋ก ๋ถํดํ๊ณ ์ฌ๋ฐฐํฌํจ์ผ๋ก์จ ๊ธฐ์ ์ ๋ณต์ก์ฑ์ ๋ํ ํต์ ๋ ฅ์ ๋์ฐพ๊ณ ๊ธฐ๋ฅ์ฑ๊ณผ ์ ์ง๋ณด์์ฑ ๊ฐ์ ๊ท ํ์ ํ๋ณตํฉ๋๋ค. ์ด๋ฌํ ๋ณํ๋ ์ข ์์ฑ์ ๊ฐ์ํํ๊ณ , ํจ์จ์ ์ธ ํ ์คํธ๋ฅผ ์ํํ๋ฉฐ, ์ํ์ ์ด๋ํ์ง ์๊ณ ํ์ฅ์ฑ์ ๋์ผ ์ ์๋ ์ํคํ ์ฒ๋ฅผ ๋ค์ ์์ธก ๊ฐ๋ฅํ๊ฒ ๋ง๋ญ๋๋ค.
์ด ๊ณผ์ ์ ์ดํด์ ์ธก์ ์ผ๋ก ์์๋ฉ๋๋ค. ์ ์ ๋ถ์๊ณผ ์ข ์์ฑ ์๊ฐํ๋ ์ ํด๋์ค(God Class)๋ฅผ ํ์ฑํ๋ ๊ตฌ์กฐ์ ํ์ ๋๋ฌ๋ด๋ ๋ฐ๋ฉด, ์ญ๊ณตํ์ ์์ญ ๋ ๊ฐ ๋ฌธ์ํ๋์ง ์์ ๋ณํ๋ก ์ธํด ์์ค๋ ์ง์์ ์ฌ๊ตฌ์ฑํฉ๋๋ค. ์ด๋ฌํ ๊ธฐ๋ฒ๋ค์ ์ง๊ด์ ์ด์ง ์๊ณ ํฉ๋ฆฌ์ ์ผ๋ก ํ๋ํ๋ฅผ ๊ณํํ๋ ๋ฐ ํ์ํ ์ฌ์ค์ ๊ธฐ๋ฐ์ ์ ๊ณตํฉ๋๋ค. ๊ฐ์์ฑ์ด ํ๋ณด๋๋ฉด ๋ถํด ์ ๋ต์ ์ ๋ฐํ๊ฒ ์คํํ์ฌ ๋ถํ์ค์ฑ์ ์ค์ด๊ณ ํ๋ํ ๋จ๊ณ ์ ๋ฐ์ ๊ฑธ์ณ ์ง์์ ์ธ ๋ฐฐํฌ๋ฅผ ์ ์งํ ์ ์์ต๋๋ค.
์ข
์์ฑ ์ ์ด๋ ์งํ ์ํฉ์ด ์๋ก์ด ๋ชจ๋๋ฆฌ์ค๋ก ์ ๋ฝํ์ง ์๋๋ก ๋ณด์ฅํฉ๋๋ค. ์ธํฐํ์ด์ค ๋ถ๋ฆฌ, ๊ณ์ธต์ ๊ฒฝ๊ณ, ๊ทธ๋ฆฌ๊ณ ์ญ์ ์์น์ ๋์
ํจ์ผ๋ก์จ ํ๋ํ ํ์ ๋ชจ๋์ ๋ฌด๊ฒฐ์ฑ์ ์ ์งํ๊ณ ์๋ก์ด ์ํคํ
์ฒ ๋ถ์ฑ์ ๋์ ์ ๋ฐฉ์งํฉ๋๋ค. ์ด๋ฌํ ๊ดํ์ด ์๋ํ๋ ๋ถ์ ํ์ดํ๋ผ์ธ์ ํตํฉ๋๋ฉด ํ๋ํ๋ ๋จ์ํ ์ผํ์ฑ ์ด๋ฒคํธ๊ฐ ์๋๋ผ ๊ฑฐ๋ฒ๋์ค ๋ฐ ๊ท์ ์ค์ ๊ฐ๋
์ ํตํด ๋ท๋ฐ์นจ๋๋ ๋ฐ๋ณต ๊ฐ๋ฅํ ์์น์ด ๋ฉ๋๋ค. ์ด๋ฌํ ํ์ ์ ์ฑ๊ณตํ๋ ์กฐ์ง์ ๊ตฌ์กฐ์ ๋ช
ํ์ฑ ๊ทธ ์ด์์ ๋ฌ์ฑํฉ๋๋ค. ๋ฏผ์ฒฉ์ฑ, ๊ฐ์ฌ ๊ฐ๋ฅ์ฑ, ๊ทธ๋ฆฌ๊ณ ํ์ฅ์ฑ์ด ๊ณต์กดํ๋ ์ํ๊ณ๋ฅผ ๊ตฌ์ถํฉ๋๋ค. ๊ทธ ๊ฒฐ๊ณผ, ๊ธฐ์ ์ ์ธ ํ์ง ์ ํ ์์ด ๋น์ฆ๋์ค ๋ณํ์ ์ ์ํ ์ ์๋ ์ํคํ
์ฒ๋ฅผ ๊ตฌ์ถํฉ๋๋ค.
์์ ํ ๊ฐ์์ฑ, ์ถ์ ์ฑ ๋ฐ ํ๋ํ ํ์ ์ ์ป์ผ๋ ค๋ฉด ๋ค์์ ์ฌ์ฉํ์ญ์์ค. ์ค๋งํธ TS XL์ข
์์ฑ ํต์ฐฐ๋ ฅ์ ํตํฉํ๊ณ , ๊ฑฐ๋ฒ๋์ค ๋ถ์์ ์๋ํํ๊ณ , ์ธก์ ๊ฐ๋ฅํ ์ ์ด๋ฅผ ํตํด ๋ณต์กํ ์์คํ
์ ๋ชจ๋์ ์ ๋ฐ๋๋ก ๋ฆฌํฉํ ๋งํ ์ ์๋ ์ญ๋์ ๊ธฐ์
์ ์ ๊ณตํ๋ ์ง๋ฅํ ํ๋ซํผ์
๋๋ค.


