์ฝ๋๋ฒ ์ด์ค์์ ๋ ์ด์ ์ฌ์ฉ๋์ง ์๋ ํจ์๋ฅผ ์ ๊ฑฐํ๋ ๊ฒ์ ๊ฐ๋ ์ ์ผ๋ก ๊ฐ๋ฐ์๊ฐ ํ ์ ์๋ ๊ฐ์ฅ ๊ฐ๋จํ ์์ ์ค ํ๋์ ๋๋ค. ํจ์ ์ ์๋ฅผ ์ญ์ ํ๊ณ , ํด๋น ํจ์๋ฅผ ์ฌ์ฉํ๋ ๋ค๋ฅธ ์ฝ๋๊ฐ ์๋์ง ํ์ธํ ํ, ์ปค๋ฐํ๋ฉด ๋ฉ๋๋ค. ํ์ง๋ง ์ค์ ๋ก๋ ์ค๋ซ๋์ ์ฌ์ฉ๋์ด ๋ ์ด์ ์ฌ์ฉ๋์ง ์๋ ํจ์์ ๊ฒฝ์ฐ, "์๋ฌด๋ ์ฌ์ฉํ์ง ์๋์ง ํ์ธํ๋" ๋จ๊ณ์์ ๋ฌธ์ ๊ฐ ๋ฐ์ํฉ๋๋ค. ํด๋น ํจ์๋ ๋ช ๋ ์ ์ ํ์ ์๋ ์ฌ๋์ด ์์ฑํ ์ฝ๋์์ ํธ์ถ๋ ์๋ ์๊ณ , ๋ณ๊ฒฝ ๋น๋๊ฐ ๋ฎ์ ์ ์ฅ์์์ ํธ์ถ๋ ์๋ ์์ผ๋ฉฐ, ํ์ฌ ํ์ด ์์ ํ์ง ์์ ์ธ์ด๋ ํ๋ ์์ํฌ์์ ํธ์ถ๋ ์๋ ์์ต๋๋ค. ๋ํผ๋ฅผ ํตํด ๊ฐ์ ์ ์ผ๋ก ํธ์ถ๋๊ฑฐ๋, ๋ฆฌํ๋ ์ ์ ํตํด ํธ์ถ๋๊ฑฐ๋, ์ ์ ํธ์ถ ๊ทธ๋ํ์ ๋ํ๋์ง ์๋ ๋ฐํ์ ๋์คํจ์น ๋ฉ์ปค๋์ฆ์ ํตํด ํธ์ถ๋ ์๋ ์์ต๋๋ค. ์์ฑ๋ ์ฝ๋, ํ ์คํธ ์ค์บํด๋ฉ, ๋๋ ํจ์ ์ด๋ฆ์ ์ฌ์ฉํ์ฌ ํธ์ถํ๋ ๊ตฌ์ฑ ํ์ผ์์ ์ฐธ์กฐ๋ ์๋ ์์ต๋๋ค. ํด๋น ํจ์๋ฅผ ๋ ์ด์ ์ฌ์ฉ๋์ง ์๋ ๊ฒ์ผ๋ก ํ์ํ๋ ๊ฐ๋ฐ์์ ์ต์ข ์ ์ผ๋ก ์ ๊ฑฐํ๋ ๊ฐ๋ฐ์๋ ์ ์ฅ์ ์ ์ฒด์ ํธ์ถ์ ๋ชฉ๋ก์ ๊ตฌ์ถํ ์ ์๋ ๋๊ตฌ๊ฐ ์์ด๋ ์ด๋ฌํ ๋ชจ๋ ์ ๋ณด๋ฅผ ์ ์ ์์ ์๋ ์์ต๋๋ค.
์ญ์ ํ๊ธฐ ์ ์ ๋ชจ๋ ๋ฐ์ ์๋ฅผ ํ์ธํ์ธ์
SMART TS XL ๋ณ๊ฒฝ ์์ ์ ์ํํ๊ธฐ ์ ์ ๋ชจ๋ ํจ์์ ํธ์ถ์๋ฅผ ์๋ณํ๋ ์ธ์ด ๊ฐ ํธ์ถ ๊ทธ๋ํ๋ฅผ ๊ตฌ์ถํฉ๋๋ค.
Click Here์ด ๋ฌธ์ ๋ฅผ ์๋ชป ์ฒ๋ฆฌํ์ ๋ ๋ฐ์ํ๋ ๋น์ฉ์ ์ฆ๊ฐ์ ์ด๊ณ ๊ตฌ์ฒด์ ์ ๋๋ค. ํธ์ถ์๋ฅผ ์์ ํ ํ์ ํ์ง ๋ชปํ ์ฑ ํจ์๊ฐ ์ ๊ฑฐ๋๋ฉด ํด๋น ํจ์์ ์ฌ์ ํ ์์กดํ๋ ์์คํ ์์ ๋ฐํ์ ์ค๋ฅ๊ฐ ๋ฐ์ํฉ๋๋ค. ๋จ์ผ ๋ฐฐํฌ ๋ฐฉ์์ ๋ชจ๋๋ฆฌ์ ์์คํ ์์๋ ์ค๋ฅ ๋ฐ์ ๊ฐ๋ฅ์ฑ์ด ์ ํ์ ์ ๋๋ค. ํ์ง๋ง ์ฌ๋ฌ ์๋น์ค๊ฐ ๊ฐ๊ฐ ๋ ๋ฆฝ์ ์ผ๋ก ๋ฐฐํฌ๋๋ ๋ถ์ฐ ์์คํ ์์๋ ์ค๋ฅ๊ฐ ์ฐ์์ ์ผ๋ก ๋ฐ์ํฉ๋๋ค. ํจ์๋ฅผ ์ ๊ณตํ๋ ์๋น์ค๋ ์ ๋ฐ์ดํธ๋์ง๋ง, ํด๋น ํจ์๋ฅผ ์ฌ์ฉํ๋ ์๋น์ค๋ ์ ๋ฐ์ดํธ๋์ง ์์ ์๋ก ๋ค๋ฅธ ํ์ด ์์ ํ ํ๋ก๋์ ์์คํ ์ ๋ฐํ์์ ๋ฌธ์ ๊ฐ ๋ฐ์ํ ์ ์์ต๋๋ค. COBOL ํ๋ก๊ทธ๋จ์ด ๊ณต์ ์ ํธ๋ฆฌํฐ ๋จ๋ฝ์ ์ด๋ฆ์ผ๋ก ํธ์ถํ๋ ๋ฉ์ธํ๋ ์ ํ๊ฒฝ์์๋ ํน์ ๋ฐฐ์น ์์ (๋งค์ฃผ ๋๋ ๋งค์ ์คํ๋ ์ ์์)์ด ์คํ๋ ๋๊น์ง ์ค๋ฅ๊ฐ ๋ํ๋์ง ์์ ์ ์์ผ๋ฏ๋ก ์ผ๋ฐ์ ์ธ ํ ์คํธ ์ฃผ๊ธฐ ๋์์๋ ๋๋ฝ๋ ์ฐธ์กฐ๋ฅผ ๋ฐ๊ฒฌํ ์ ์์ต๋๋ค. ๋ ๋์ ๋งฅ๋ฝ์์, ์ฆ ๋ ์ด์ ์ฌ์ฉ๋์ง ์๋ ์ฝ๋๋ฅผ ๊ด๋ฆฌํ๋ ๊ด์ ์์ ๋ณด๋ฉด ์ํ์ ์๊ฐ์ด ์ง๋จ์ ๋ฐ๋ผ ๋์ ๋ฉ๋๋ค. ๋ถ์์ ํ๊ฒ ์ ๊ฑฐ๋ ๋ ์ด์ ์ฌ์ฉ๋์ง ์๋ ์ฝ๋๋ ๊ทธ๋๋ก ๋จ๊ฒจ์ง ์ฝ๋๋ณด๋ค ๋ ์ํํฉ๋๋ค. ์ ๊ฑฐ๋ก ์ธํด ๋ชจ๋ ๊ฒ์ด ์๋ฃ๋ ๊ฒ์ฒ๋ผ ๋ณด์ด์ง๋ง, ๋จ์ ์๋ ํธ์ถ์๋ ๋ ์ด์ ์กด์ฌํ์ง ์๋ ์ ์๋ฅผ ๊ณ์ํด์ ์ฌ์ฉํ๊ธฐ ๋๋ฌธ์ ๋๋ค.
์ด ๊ธ์ ํจ์ ์ ๊ฑฐ ์ ํธ์ถ์ ํ์ ์ ๋ํ ์ค์ฉ์ ์ธ ๊ฐ์ด๋์ ๋๋ค. ์์ ํ ํธ์ถ์ ๋ชฉ๋ก์ ์์ฑํ๋ ๋ฐ ํ์ํ ์์, ๊ฐ๋ฐ์๋ค์ด ๊ฐ์ฅ ๋จผ์ ์ฌ์ฉํ๋ ๋๊ตฌ๋ค์ด ๊ตฌ์กฐ์ ์ผ๋ก ๋ถ์ถฉ๋ถํ ์ด์ , ๋ค์ํ ์ ํ์ ํธ์ถ ๊ด๊ณ์ ๋ฐ๋ผ ์๊ตฌ๋๋ ๋ถ์ ์ ๊ทผ ๋ฐฉ์์ ์ฐจ์ด, ๊ทธ๋ฆฌ๊ณ ์ฌ๋ฌ ์ธ์ด, ํ๋ซํผ, ์ ์ฅ์๊ฐ ํผํฉ๋ ์ํฐํ๋ผ์ด์ฆ ๊ท๋ชจ ์ฝ๋๋ฒ ์ด์ค์์ ์ง์ ํ ์์คํ ๊ฐ ํธ์ถ์ ์ด๊ฑฐ๊ฐ ์ด๋ป๊ฒ ์ด๋ฃจ์ด์ง๋์ง๋ฅผ ๋ค๋ฃน๋๋ค.
๋ฐ์ ์ ์ ๋ณด ํ์ ์ด ์๊ฐ๋ณด๋ค ์ด๋ ค์ด ์ด์
ํธ์ถ์ ๊ฒ์์ ํ๋ฉด์ ์ธ ๋ฒ์ ์ ๋ชจ๋ ๊ฐ๋ฐ์์๊ฒ ์ต์ํฉ๋๋ค. IDE์์ ํจ์ ์ด๋ฆ์ ๋ง์ฐ์ค ์ค๋ฅธ์ชฝ ๋ฒํผ์ผ๋ก ํด๋ฆญํ๊ณ "๋ชจ๋ ์ฐธ์กฐ ์ฐพ๊ธฐ" ๋๋ "ํธ์ถ ๊ณ์ธต ๊ตฌ์กฐ ํ์"๋ฅผ ์ ํํ ๋ค์ ๊ฒฐ๊ณผ๋ฅผ ๊ฒํ ํ๋ ๊ฒ์ ๋๋ค. ์ด ๋ฐฉ๋ฒ์ ๋จ์ผ IDE ์ธ์คํด์ค์ ๋ก๋๋ ๋จ์ผ ํ๋ก์ ํธ ๋ฒ์ ๋ด์์๋ ์์ ์ ์ผ๋ก ์๋ํฉ๋๋ค. ๊ทธ๋ฌ๋ ์ฝ๋๋ฒ ์ด์ค๊ฐ ์ด ๋ฒ์๋ฅผ ๋ฒ์ด๋๋ฉด ์ถ๋ ฅ์ ๋ํ๋์ง ์๋ ๋ฐฉ์์ผ๋ก ๊ฒฐ๊ณผ๊ฐ ๋ถ์์ ํด์ง๋๋ค. IDE๋ ํด๋น ํธ์ถ์๊ฐ ํฌํจ๋ ์ ์ฅ์๋ฅผ ์ธ๋ฑ์ฑํ์ง ์์ ์ฐพ์ง ๋ชปํ ํธ์ถ์๋ฅผ ํ์ํ์ง ์์ต๋๋ค. ๊ฐ๋ฐ์๋ ๊ฒฐ๊ณผ๊ฐ ์์ ํด ๋ณด์ด๋ ๊ฒ์ ๋ณด๊ณ ๊ทธ์ ๋ฐ๋ผ ์์ ์ ์งํํฉ๋๋ค.
๋๊ท๋ชจ ํ๊ฒฝ์์ ํธ์ถ์ ๊ฒ์์ ๋ด์ฌ๋ ๊ตฌ์กฐ์ ๋ฌธ์ ๋ ๋ฐ๋ก ์ด๊ฒ์ ๋๋ค. ๊ฐ๋ฐ์๋ค์ด ๊ฐ์ฅ ๋ฅ์ํ๊ฒ ์ฌ์ฉํ๋ ๋๊ตฌ๋ ์ธ๋ฑ์ฑ ๋ฒ์์ ์ ์ฝ์ ๋ฐ๋๋ฐ, ๋๊ท๋ชจ ๋ถ์ฐํ ๋ค๊ตญ์ด ์์คํ ์์๋ ๊ทธ ๋ฒ์๊ฐ ํน์ ํจ์๊ฐ ํธ์ถ๋ ์ ์๋ ์์น์ ๊ทนํ ์ผ๋ถ๋ง์ ํฌ๊ดํ๋ค๋ ๊ฒ์ ๋๋ค. ๊ฒ์ ๊ฒฐ๊ณผ์ ์์ ์ฑ์ ๋ํ ๊ฐ๋ฐ์์ ์ ๋ขฐ๋๋ ์ค์ ๊ฒ์์ ์์ ์ฑ์ ๋ฐ๋น๋กํฉ๋๋ค. ์๊ท๋ชจ ๋จ์ผ ์ธ์ด ์ฝ๋๋ฒ ์ด์ค์์๋ IDE์ ํธ์ถ ๊ณ์ธต ๊ตฌ์กฐ๊ฐ ๋งค์ฐ ์ ๋ขฐํ ๋งํฉ๋๋ค. ํ์ง๋ง ์ฌ๋ฌ ์ ์ฅ์, ์ธ์ด, ๋ฐฐํฌ ํ๊ฒฝ์ ๊ฑธ์ณ ์๋ ์ํฐํ๋ผ์ด์ฆ ์์คํ ์์๋ ์ฒด๊ณ์ ์ผ๋ก ์๋ชป๋ ์ ๋ณด๋ฅผ ์ ๊ณตํฉ๋๋ค. ์ฝ๋ ์ํธ๋กํผ์ ๋ฆฌํฉํ ๋ง ์ํ ์ ๊ด์ ์์ ๋ถ์ํด ๋ณด๋ฉด , ๋ ๊ฑฐ์ ๋ชจ๋์ ๋ ์ด์ ์ฌ์ฉ๋์ง ์๋ ์ธํฐํ์ด์ค์ ์์กดํ ์ ์๊ณ , ์ต์ ์๋น์ค๋ ์ฌ์ ํ ์ด์ ํ๊ฒฝ์ ์ํด ์ค๊ณ๋ ๋ฃจํด์ ํธ์ถํ ์ ์์ต๋๋ค. ์ด๋ฌํ ์์คํ ๊ฐ ํธ์ถ ๊ด๊ณ๋ IDE์ ํ์ ๋ ๊ฒ์์ผ๋ก๋ ํ์ ํ ์ ์๋ ๋ถ๋ถ์ ๋๋ค.
๋ฐ์ ์ ํ์ธ์ด ์คํจํ๋ ๊ตฌ์ฒด์ ์ธ ์ด์ ๋ฅผ ํ์ ํ๋ ค๋ฉด ์ฃผ์ ํตํ ์ ํ(์ง์ ํตํ, ๊ฐ์ ํตํ, ๋ค๊ตญ์ด ํตํ, ๋์ ๋ฐฐ์ฐจ)์ ๊ฐ๊ฐ ๊ฒํ ํด์ผ ํฉ๋๋ค. ๊ฐ ์ ํ์ ์คํจ ์์ธ์ด ๋ค๋ฅด๋ฉฐ, ์ ํํ ํด๊ฒฐ์ ์ํด์๋ ์๋ก ๋ค๋ฅธ ๋ถ์ ๊ธฐ๋ฒ์ด ํ์ํฉ๋๋ค.
์ ์ฅ์ ๊ฒฝ๊ณ๋ฅผ ๋๋ ์ง์ ํธ์ถ
์ง์ ํธ์ถ์ ๊ฐ์ฅ ๊ฐ๋จํ ํธ์ถ ์ ํ์ ๋๋ค. ์ฆ, ํ ํจ์๊ฐ ๋ค๋ฅธ ํจ์๋ฅผ ์ด๋ฆ์ผ๋ก ๋ช ์์ ์ผ๋ก ํธ์ถํ๋ ๊ฒ์ ๋๋ค. ๋จ์ผ ์ ์ฅ์ ๋ด์์๋ IDE๊ฐ ์ด๋ฌํ ํธ์ถ์ ์์ ์ ์ผ๋ก ์ฒ๋ฆฌํฉ๋๋ค. ํ์ง๋ง ์ ์ฅ์ ๊ฒฝ๊ณ๋ฅผ ๋์ด์๋ ๊ฒฝ์ฐ์๋ IDE์ ์ธ๋ฑ์ฑ์ด ๊ฒฝ๊ณ๋ฅผ ๋๋๋ค์ง ์๊ธฐ ๋๋ฌธ์ ๋ถ์์ด ์คํจํฉ๋๋ค. ์๋ฅผ ๋ค์ด ์ ์ฅ์ A์์ ๊ณต์ ์ ํธ๋ฆฌํฐ ํจ์๋ฅผ ์ ์ํ๊ณ ์ ์ฅ์ B, C, D์์ ๊ฐ๊ฐ ํด๋น ํจ์๋ฅผ ๊ฐ์ ธ์ ํธ์ถํ๋ ๊ฒฝ์ฐ, ๊ฐ ์ ์ฅ์์ IDE๋ ์์ฒด ์ธ๋ฑ์ฑ ๋ฒ์ ๋ด์ ํธ์ถ๋ง ์ธ์ํฉ๋๋ค.
์ด๋ฌํ ๋ค์ค ์ ์ฅ์ ํธ์ถ ํจํด์ ๊ณต์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๊ฐ ํจํค์ง๋ก ๊ฒ์๋๊ณ ์์ญ ๊ฐ์ ์๋น์ค์์ ์ฌ์ฉ๋๋ ๋ง์ดํฌ๋ก์๋น์ค ์ํคํ ์ฒ์์ ์์ธ๊ฐ ์๋ ์ผ๋ฐ์ ์ธ ํ์์ ๋๋ค. ๊ณต์ ํจํค์ง์์ ํจ์๋ฅผ ๋ ์ด์ ์ฌ์ฉํ์ง ์๋๋ก ์ง์ ํ๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ๊ด๋ฆฌ์๋ ์ด๋ค ์๋น์ค๊ฐ ์ฌ์ ํ ํด๋น ํจ์๋ฅผ ํธ์ถํ๋์ง ์์์ผ ํฉ๋๋ค. ํ์ง๋ง IDE๋ ์๋น์์ ๋ํ ์ ๋ณด๋ฅผ ์ ํ ์์ง ๋ชปํฉ๋๋ค. ํจํค์ง ๊ด๋ฆฌ์๋ ์ด๋ค ์๋น์ค๊ฐ ํจํค์ง์ ์์กดํ๋์ง๋ ์์ง๋ง, ๊ฐ ์๋น์ค๊ฐ ํจํค์ง ๋ด์ ์ด๋ค ํน์ ํจ์๋ฅผ ํธ์ถํ๋์ง๋ ์์ง ๋ชปํฉ๋๋ค. "์ด ์๋น์ค๋ ์ด ํจํค์ง์ ๋ฒ์ X๋ฅผ ์ฌ์ฉํฉ๋๋ค"๋ผ๋ ์ ๋ณด๋ฅผ "์ด ์๋น์ค๋ ์ด ํน์ ์ฌ์ฉ ์ค๋จ๋ ํจ์๋ฅผ ํธ์ถํฉ๋๋ค"๋ก ๋งคํํ๋ ค๋ฉด ๋ชจ๋ ์๋น์์ ์์ค ์ฝ๋๋ฅผ ์ธ๋ฑ์ฑํ๊ณ ํด๋น ํธ์ถ์ ํน์ ํจ์ ์ ์๋ก ํด์ํด์ผ ํฉ๋๋ค.
๊ฐ์ ํธ์ถ: ๋ํผ, ๋ธ๋ฆฌ๊ฒ์ดํธ ๋ฐ ํ์ฌ๋
ํจ์๋ ํด๋น ํจ์๋ฅผ ์ฌ์ฉํ๋ ์ฃผ์ฒด์ ์ํด ์ง์ ํธ์ถ๋ ์ ์์ต๋๋ค. ์ถ๊ฐ์ ์ธ ๋ก๊น , ์ค๋ฅ ์ฒ๋ฆฌ ๋๋ ๋งค๊ฐ๋ณ์ ๋ณํ์ ์ ๊ณตํ๋ ๋ํผ ํจ์๋ฅผ โโํตํด ํธ์ถ๋ ์ ์์ต๋๋ค. ๋ํ, ๋ธ๋ฆฌ๊ฒ์ดํธ ๋๋ ํจ์ ํฌ์ธํฐ์ ํ ๋น๋์ด ๋ธ๋ฆฌ๊ฒ์ดํธ๋ฅผ ํตํด ํธ์ถ๋ ์๋ ์์ต๋๋ค. ์๋น์ค ๋ ์ง์คํธ๋ฆฌ ๋๋ ํ๋ฌ๊ทธ์ธ ํ๋ ์์ํฌ์ ๋ฑ๋ก๋์ด ๋์คํจ์น ๋ฉ์ปค๋์ฆ์ ํตํด ์ด๋ฆ์ผ๋ก ํธ์ถ๋ ์๋ ์์ต๋๋ค. ์ด๋ฌํ ๋ชจ๋ ๊ฒฝ์ฐ์, ์ฌ์ฉ์ด ์ค๋จ๋ ํจ์์ ๋ํ ์ง์ ํธ์ถ ๊ฒ์์ ๋ถ์์ ํ ๊ฒฐ๊ณผ๋ฅผ ๋ฐํํฉ๋๋ค. ์ค์ ํธ์ถ์๋ ์ฌ์ฉ์ด ์ค๋จ๋ ํจ์ ์์ฒด๊ฐ ์๋๋ผ ๋ํผ ํจ์ ๋๋ ๋์คํจ์ฒ๋ฅผ ํธ์ถํ๊ธฐ ๋๋ฌธ์ ๋๋ค.
๋ํผ๋ฅผ ํตํ ํธ์ถ์ ๋ก๊น , ๊ถํ ๋ถ์ฌ, ์ฌ์๋ ๋ก์ง๊ณผ ๊ฐ์ ํก๋จ ๊ด์ฌ์ฌ๊ฐ ๋ํผ ํจํด์ ํตํด ํต์ฌ ํจ์ ์ฃผ๋ณ์ ๊ณ์ธตํ๋๋ ๋๊ท๋ชจ ์ฝ๋๋ฒ ์ด์ค์์ ํนํ ํํ ๋ฐ์ํฉ๋๋ค. ๋ก๊น ์ ํธ๋ฆฌํฐ๋ก ๋ํ๋ ์ฌ์ฉ๋์ง ์๋ ํจ์๋ ํด๋น ํจ์์ ์ด๋ฆ์ ํฌํจํ๋ ์ฝ๋๊ฐ ์๋๋ผ ๋ํผ๋ฅผ ํธ์ถํ๋ ๋ชจ๋ ์ฝ๋์์ ์ฌ์ค์ ํธ์ถ๋ฉ๋๋ค. ์ด๋ฌํ ํธ์ถ์๋ฅผ ์๋ณํ๋ ค๋ฉด ๋ํผ๋ฅผ ๋ฐ๋ผ ์ถ์ ํด์ผ ํฉ๋๋ค. ๋ก๊น ์ ํธ๋ฆฌํฐ๋ ์ฌ์ฉ๋์ง ์๋ ํจ์๋ฅผ ํธ์ถํ๋ฏ๋ก ๋ก๊น ์ ํธ๋ฆฌํฐ๋ฅผ ํธ์ถํ๋ ๋ชจ๋ ์ฝ๋๋ ์ฌ์ฉ๋์ง ์๋ ํจ์๋ฅผ ๊ฐ์ ์ ์ผ๋ก ํธ์ถํ๋ ๊ฒ์ ๋๋ค. ์ด๋ฌํ ์ฌ๊ท์ ํธ์ถ ๊ทธ๋ํ ํ์์ ํ๋ฉด์ ์ธ ์ฐธ์กฐ ๊ฒ์๊ณผ ์ฒ ์ ํ ํธ์ถ์ ๋ชฉ๋ก์ ๊ตฌ๋ถํ๋ ํต์ฌ ์์์ ๋๋ค.
์์ ๊ณ์ธต์ ํตํด ๋ ์ด์ ์ฌ์ฉ๋์ง ์๋ ๋ฉ์๋์ ์ ๊ทผํ๋ ๋ํ์ ์ธ Java ์์ ๋ฅผ ์ดํด๋ณด๊ฒ ์ต๋๋ค.
์๋ฐ
// Deprecated in the core service
@Deprecated
public BillingResult calculateLegacyFee(Account account) {
// original implementation
}
// Facade that delegates; not visible as a direct caller in a simple reference search
public BillingResult computeFee(Account account) {
return calculateLegacyFee(account); // indirect caller
}
// Actual consumer; calls computeFee, unaware of the underlying deprecated method
public void processMonthlyBilling(List<Account> accounts) {
accounts.forEach(a -> computeFee(a)); // two hops from the deprecated function
}
"๋ชจ๋ ์ฐธ์กฐ ์ฐพ๊ธฐ" ๊ฒ์ calculateLegacyFee ๋ฐํ computeFee ์ ์ผํ ๋ฐ์ ์๋ก์. ์๋ตํ์ง ์์ต๋๋ค. processMonthlyBilling์ด๋ ๋ ์ด์ ์ฌ์ฉ๋์ง ์๋ ๋์์ ์ค์ ์๋น์์
๋๋ค. ์์ ํ ๋ฐ์ ์ ๋ชฉ๋ก์ ์ป์ผ๋ ค๋ฉด ํตํ ๊ทธ๋ํ๋ฅผ ๋ฐ๋ผ ์๋ฅ๋ก ์ด๋ํด์ผ ํฉ๋๋ค. computeFee ๋ ์ด์ ์ฌ์ฉ๋์ง ์๋ ๋ฉ์๋๋ฅผ ํธ์ถํ๋ ๋ชจ๋ ๊ฒฝ๋ก๋ฅผ ์๋ณํฉ๋๋ค.
๋ค๊ตญ์ด ๊ธฐ๋๋ฌธ
์ธ์ด ๊ฐ ํธ์ถ์ ํ์ค ํธ์ถ์ ๊ฒ์ ๋๊ตฌ๊ฐ ๊ฐ์ฅ ์ฌ๊ฐํ๊ฒ ์คํจํ๋ ๋ฒ์ฃผ์ ๋๋ค. Java ์๋น์ค๊ฐ ๋ฏธ๋ค์จ์ด ๊ณ์ธต์ ํตํด COBOL ํ๋ก๊ทธ๋จ์ ์ด๋ฆ์ผ๋ก ํธ์ถํ๊ฑฐ๋, Python ์คํฌ๋ฆฝํธ๊ฐ ๋ ์ด์ ์ฌ์ฉ๋์ง ์๋ ํจ์๋ฅผ ๋ํํ๋ ์ ์ฅ ํ๋ก์์ ๋ฅผ ํธ์ถํ๊ฑฐ๋, JCL ์์ ์ด ๋ด๋ถ์ ์ผ๋ก ๋ ์ด์ ์ฌ์ฉ๋์ง ์๋ ๋จ๋ฝ์ ํธ์ถํ๋ ํ๋ก๊ทธ๋จ์ PROGNAME์ผ๋ก ํธ์ถํ๋ ๊ฒฝ์ฐ, ์ด๋ฌํ ๊ด๊ณ๋ ์ด๋ค ๋จ์ผ ์ธ์ด์ ํธ์ถ ๊ทธ๋ํ์๋ ๋ํ๋์ง ์์ต๋๋ค. ๊ฐ ์ธ์ด์ ๋๊ตฌ๋ ํธ์ถ์ ์์ฌ ์ธก๋ง ์ธ์ํฉ๋๋ค.
๋ฉ์ธํ๋ ์ ํ๊ฒฝ์์ ์ธ์ด ๊ฐ ํธ์ถ์ ๊ตฌ์กฐ์ ์ด๊ณ ๊ด๋ฒ์ํ๊ฒ ๋ํ๋ฉ๋๋ค. JCL ์์ ์คํธ๋ฆผ์ ์คํํ COBOL ํ๋ก๊ทธ๋จ์ ์ด๋ฆ์ ์ง์ ํฉ๋๋ค. COBOL ํ๋ก๊ทธ๋จ์ ์ด๋ฆ์ผ๋ก ๋จ๋ฝ๊ณผ ์๋ธํ๋ก๊ทธ๋จ์ ํธ์ถํฉ๋๋ค. ๋ณต์ฌ ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ ์ ์๋ ์ ํธ๋ฆฌํฐ ๋จ๋ฝ์ ์ฌ๋ฌ ํ๋ก๊ทธ๋จ์์ ๊ณต์ ๋ฉ๋๋ค. ๋ณต์ฌ ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ ๋จ๋ฝ์ด ๋ ์ด์ ์ฌ์ฉ๋์ง ์๊ฒ ๋๋ฉด, ๋ชจ๋ ํธ์ถ์๋ฅผ ์ฐพ์ผ๋ ค๋ฉด COBOL ํธ์ถ ๊ด๊ณ(๋ณต์ฌ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ํฌํจํ๋ ํ๋ก๊ทธ๋จ๊ณผ ํด๋น ๋จ๋ฝ์ ํธ์ถํ๋ ํ๋ก๊ทธ๋จ), JCL ํธ์ถ ๊ด๊ณ(์ด๋ค ์์ ์ด ํด๋น ํ๋ก๊ทธ๋จ์ ํธ์ถํ๋์ง), ๊ทธ๋ฆฌ๊ณ ์ธ์ด ๊ฐ ์ธํฐํ์ด์ค(ํด๋น ํ๋ก๊ทธ๋จ๊ณผ ์ํธ ์์ฉํ๋ Java ๋๋ SQL)๋ฅผ ๋ชจ๋ ์ดํดํด์ผ ํฉ๋๋ค. ์ด๋ฌํ ๋ชจ๋ ๊ด๊ณ๋ฅผ ํฌ๊ดํ๋ ๋จ์ผ ๋๊ตฌ๋ ์์ต๋๋ค. ๋ ๊ฑฐ์ ์์คํ ์ ๋ํ ์ ์ ๋ถ์์์ ์ดํด๋ณธ ๋ฐ์ ๊ฐ์ด , ์ต์ ํ๊ฒฝ์ ์ํด ๊ฐ๋ฐ๋ ์ ์ ๋ถ์ ๋๊ตฌ๋ ํธ์ถ ๊ด๊ณ๊ฐ JCL, COBOL, ๊ทธ๋ฆฌ๊ณ ์์คํ ๊ฐ ์ธํฐํ์ด์ค์ ๊ฑธ์ณ ๋์์ ์กด์ฌํ ๋ ๋ ๊ฑฐ์ ํ๋ก๊ทธ๋จ์ด ์ด๋ป๊ฒ ํธ๋ฆฌ๊ฑฐ๋๊ณ , ํธ์ถ๋๊ณ , ์ํธ ์ฐ๊ฒฐ๋๋์ง์ ๋ํ ์ ์ฒด์ ์ธ ๊ทธ๋ฆผ์ ํ์ ํ ์ ์์ต๋๋ค.
๋์ ๋ฐฐ์ฐจ ๋ฐ ๋ฐ์ฌ
์ผ๋ถ ํธ์ถ์๋ ์์ค ์ฝ๋์ ์๋ ํจ์์ ์ค์ ์ด๋ฆ์ด ์๋๋ผ ๋ฐํ์์ ํจ์๋ฅผ ํด์ํ๋ ๋ฉ์ปค๋์ฆ(์: Java ๋๋ .NET์ ๋ฆฌํ๋ ์
)์ ํตํด ํจ์๋ฅผ ํธ์ถํฉ๋๋ค. getattr/__call__ Python์์ COBOL์ ๋ฆ์ ๋ฐ์ธ๋ฉ์ ํตํด CALL identifier๋คํ์ฑ์ ํตํ ๋์ ๋์คํจ์น ๋๋ ํ๋ฌ๊ทธ์ธ ํ๋ ์์ํฌ ๋ฐ ๊ตฌ์ฑ ๊ธฐ๋ฐ ์์คํ
์์ ๋ฌธ์์ด์ ํตํ ํธ์ถ ๋ฑ์ด ๊ทธ ์์
๋๋ค. ์ด๋ฌํ ํธ์ถ์๋ ์ ์ ๋ถ์์ผ๋ก ํ์คํ๊ฒ ๊ฐ์งํ ์ ์๋ ์ด๋ค ํํ๋ก๋ ๋ ์ด์ ์ฌ์ฉ๋์ง ์๋ ํจ์์ ์ด๋ฆ์ ํฌํจํ์ง ์์ต๋๋ค.
ํจ์ ์ด๋ฆ์ ๋ฌธ์์ด๋ก ์ง์ ํ๊ณ ๋ฐํ์์ ๋ก๋๋์ด ๋ฆฌํ๋ ์ ์ ํตํด ํจ์๋ฅผ ํธ์ถํ๋ ๊ตฌ์ฑ ํ์ผ์ ์์ค ์ฝ๋ ๋ถ์์์ ์ ํ ๋ํ๋์ง ์๋ ํธ์ถ์์ ๋๋ค. ์ธํฐํ์ด์ค๋ฅผ ํตํด ๋ฑ๋ก๋ ํธ๋ค๋ฌ๋ฅผ ๊ฒ์ํ๊ณ ํธ์ถํ๋ ํ๋ฌ๊ทธ์ธ ํ๋ ์์ํฌ๋ ํธ์ถ ๊ทธ๋ํ์์ ํน์ ํธ๋ค๋ฌ ํธ์ถ์ด ์๋ ๋์คํจ์น ๋ฉ์ปค๋์ฆ ํธ์ถ๋ก๋ง ๋ํ๋๋ ํธ์ถ์์ ๋๋ค. ์ด๋ฌํ ํธ์ถ์๋ฅผ ์๋ณํ๋ ค๋ฉด ๋์ ๋์คํจ์น ํจํด์ ์ฐพ๊ธฐ ์ํ ์ ์ ๋ถ์, ์ค์ ํธ์ถ์ ๊ด์ฐฐํ๊ธฐ ์ํ ๋ฐํ์ ์ถ์ , ๊ทธ๋ฆฌ๊ณ ์ด๋ค ํจ์๊ฐ ๋์คํจ์น๋๋์ง๋ฅผ ๊ฒฐ์ ํ๋ ๊ตฌ์ฑ ๋ฐ ๋ฑ๋ก ๋ก์ง์ ๋ํ ์๋ ๊ฒ์ฌ๋ฅผ ์กฐํฉํด์ผ ํฉ๋๋ค. ๋๋ ํ๋๊ณ ์์ฑ๋ ์ฝ๋์ ๋ํ ์ ์ ๋ถ์ ๊ฒํ ์์ ๋ ผ์ํ๋ฏ์ด , ์คํ ๊ฒฝ๋ก๊ฐ ์์ค ์ฝ๋์ ์ง์ ํํ๋์ง ์์ ๊ฒฝ์ฐ ์ ์ ๋ถ์์ ์ง์ ์ ์ธ ํ ์คํธ ์ฐธ์กฐ๊ฐ ์๋ ๊ตฌ์กฐ์ ํจํด์์ ๊ฐ๋ฅํ ๊ฒฝ๋ก๋ฅผ ์ฌ๊ตฌ์ฑํด์ผ ํ๋ฉฐ, ์ด๋ฌํ ์ฌ๊ตฌ์ฑ์๋ ๋์คํจ์น ๋ฉ์ปค๋์ฆ ์์ฒด์ ๋ํ ์ธ์ด ์ธ์ ๋ถ์์ด ํ์ํฉ๋๋ค.
๊ฐ๋ฐ์๋ค์ด ๊ฐ์ฅ ๋จผ์ ์ฐพ๋ ๋๊ตฌ์ ๊ทธ๋ค์ด ๋ฉ์ถ๋ ์ง์ ์ ์ด๋์ผ๊น์?
๊ฐ๋ฐ์๋ค์ด ๋ฐ์ ์ ์ ๋ณด๋ฅผ ํ์ ํ๊ธฐ ์ํด ์ฌ์ฉํ๋ ๋๊ตฌ๋ค์ ์์๋ ์์ธก ๊ฐ๋ฅํ๋ฉฐ, ๊ฐ ๋๊ตฌ๊ฐ ๋ ์ด์ ์ ๋ขฐํ ๋งํ ๊ฒฐ๊ณผ๋ฅผ ์ ๊ณตํ์ง ๋ชปํ๋ ์์ ๋ํ ์์ธก ๊ฐ๋ฅํฉ๋๋ค. ์ด๋ฌํ ์์๋ฅผ ์ดํดํ๋ ๊ฒ์ ์ค์ํฉ๋๋ค. ์๋ํ๋ฉด ๊ฐ ๋๊ตฌ์ ์ถ๋ ฅ ๊ฒฐ๊ณผ๊ฐ ์๋ฒฝํด ๋ณด์ผ์ง๋ผ๋ ์ค์ ๋ก๋ ๊ทธ๋ ์ง ์๊ธฐ ๋๋ฌธ์ ๋๋ค.
IDE ํธ์ถ ๊ณ์ธต ๊ตฌ์กฐ: ๋จ์ผ ํ๋ก์ ํธ ๋ด์์ ์์ ์ ์ธ ์๋
IDE์ ํจ์ ํธ์ถ ๊ณ์ธต ๊ตฌ์กฐ ๊ธฐ๋ฅ์ ํ์ฉํ๋ ๊ฒ์ด ๊ฐ์ฅ ์์ฐ์ค๋ฌ์ด ์ฒซ๊ฑธ์์ ๋๋ค. IntelliJ IDEA, Visual Studio, VS Code, Eclipse๋ ๋ชจ๋ ํ์ฌ ํ๋ก์ ํธ ๋๋ ์์ ์์ญ์ ์ธ๋ฑ์ฑ๋ ๋ฒ์ ๋ด์์ ์ ํํ ํจ์์ ํธ์ถ์๋ฅผ ์ฌ๊ท์ ์ผ๋ก ์ด๊ฑฐํ๋ "๋ชจ๋ ํธ์ถ์ ์ฐพ๊ธฐ" ๋๋ "ํธ์ถ ๊ณ์ธต ๊ตฌ์กฐ ํ์" ๊ธฐ๋ฅ์ ์ ๊ณตํฉ๋๋ค. ํน์ ์ ์ฅ์์ ํน์ ์ธ์ด ๋ด์์๋ง ์ฌ์ฉ๋๋ ํจ์๋ผ๋ฉด ์ด๋ฌํ ๊ธฐ๋ฅ๋ง์ผ๋ก๋ ์ถฉ๋ถํ๊ณ ์ ํํฉ๋๋ค.
๊ฒ์ ๋ฒ์์ ๋ํ ์ ํ ์ฌํญ์ "์ธ๋ฑ์ฑ๋ ๋ฒ์ ๋ด"๋ผ๋ ๋ช ์์ ์ธ ๋ฒ์ ์ง์ ์ ์์ต๋๋ค. ๋ค๋ฅธ ์ ์ฅ์, ๋ค๋ฅธ ์ธ์ด ๋ฐํ์ ๋๋ ํจํค์ง ๊ด๋ฆฌ์๋ฅผ ํตํด ์ด ์ฝ๋์ ์์กดํ๋ ์๋น์ค์์ ํธ์ถํ๋ ๊ฒฝ์ฐ๋ ๊ฒ์ ๋ฒ์ ๋ฐ์ ์์ต๋๋ค. IDE๋ ๊ฒ์ํ์ง ์์ ํญ๋ชฉ์ ํ์ํ์ง ์์ต๋๋ค. ๊ฐ๋ฐ์๋ ๊ฒฐ๊ณผ ์งํฉ์ ๋ฐ์ง๋ง ์ธ๋ฑ์ฑ๋์ง ์์ ์ถ๊ฐ ์ ์ฅ์๊ฐ ๋ช ๊ฐ์ธ์ง, ๊ทธ์ค์์ ๋ ์ด์ ์ฌ์ฉ๋์ง ์๋ ํจ์๋ฅผ ์ฌ์ฉํ๋ ์ ์ฅ์๊ฐ ๋ช ๊ฐ์ธ์ง, ๋๋ "ํธ์ถ์ ์์" ๊ฒฐ๊ณผ๊ฐ ์ค์ ๋ก ํธ์ถ์๊ฐ ์๋ค๋ ์๋ฏธ์ธ์ง ์๋๋ฉด "์ด ๋๊ตฌ๊ฐ ๋ณผ ์ ์๋ ์์คํ ์์ญ ๋ด์์ ํธ์ถ์๊ฐ ์๋ค๋ ์๋ฏธ"์ธ์ง ์ ์ ์์ต๋๋ค.
grep๊ณผ ํ ์คํธ ๊ฒ์: ๊ด๋ฒ์ํ์ง๋ง ๊ตฌ์กฐ๋ ๊ณ ๋ คํ์ง ์์
IDE ๊ฒ์์ด ๋ถ์์ ํ๋ค๊ณ ์์ฌ๋ ๊ฒฝ์ฐ, ๋ค์ ๋จ๊ณ๋ ์ผ๋ฐ์ ์ผ๋ก ํ ์คํธ ๊ฒ์์ ๋๋ค. ์ฌ์ฉ ๊ฐ๋ฅํ ์์ค ๋๋ ํฐ๋ฆฌ์์ grep์ ์ฌ์ฉํ๊ฑฐ๋ GitHub ๋๋ GitLab ์ฝ๋ ๊ฒ์์ ํตํด ํ๋ซํผ ๊ฒ์์ ์ํํฉ๋๋ค. ์ด๋ ๊ฒ ํ๋ฉด ๊ฒ์ ๋ฒ์๊ฐ ์๋นํ ๋์ด์ง๊ณ , ์ ๊ทผ ๊ฐ๋ฅํ ๋ค๋ฅธ ์ ์ฅ์์ ์๋ ํจ์ ํธ์ถ์๋ ์ฐพ์ ์ ์์ต๋๋ค. ํ์ง๋ง ๊ตฌ์กฐ์ ์ธ ๋ฌธ์ ๋ ํ ์คํธ ๊ฒ์์ด ํจ์ ํธ์ถ์ด ์๋ ๋ฌธ์์ด์ ์ฐพ๋๋ค๋ ์ ์ ๋๋ค. ํ ์คํธ ๊ฒ์์ ํจ์ ์ด๋ฆ์ด ํฌํจ๋ ๋ชจ๋ ์์น๋ฅผ ๋ฐํํ๋๋ฐ, ์ฌ๊ธฐ์๋ ํจ์๋ฅผ ์ธ๊ธํ๋ ์ฃผ์, ๋ฌธ์ ๋ฌธ์์ด, ๋๋ฒ๊น ๋ชฉ์ ์ผ๋ก ํจ์ ์ด๋ฆ์ ๋ช ์ํ๋ ๋ก๊ทธ ๋ฉ์์ง, ํจ์ ์ด๋ฆ์ ํฌํจํ์ง๋ง ์ง์ ํธ์ถํ์ง ์๋ ๋ฌธ์์ด ๋ฆฌํฐ๋ด ๋ฑ์ด ํฌํจ๋ฉ๋๋ค. ๋ํ ํจ์ ์ด๋ฆ์ด ๊ฒ์ ๋ฌธ์์ด๊ณผ ๋ค๋ฅธ ๊ฒฝ์ฐ, ์ฆ ๋ณ์นญ์ ํตํ ํธ์ถ, COBOL์์ ์ด๋ฆ์ด ์ถ์ฝ๋ ๊ฒฝ์ฐ์ฒ๋ผ ๋ถ๋ถ์ ์ผ๋ก ์ผ์นํ๋ ์ด๋ฆ์ ํตํ ํธ์ถ, ๋๋ ๋ฐํ์์ ์ด๋ฆ์ด ์์ฑ๋๋ ๋์ ํธ์ถ์ ํตํ ํธ์ถ์ ๋๋ฝ๋ฉ๋๋ค.
ํ ์คํธ ๊ฒ์ ๊ฒฐ๊ณผ๋ ์ค์ ํตํ ๊ธฐ๋ก, ๋ฌธ์ ์ฐธ์กฐ, ๋ฌธ์์ด ์ถฉ๋๋ก ์ธํ ์คํ์ ๊ตฌ๋ถํ๊ธฐ ์ํด ์๋ ํํฐ๋ง์ด ํ์ํฉ๋๋ค. ๋๊ท๋ชจ ์์คํ ์์๋ ์ด๋ฌํ ํํฐ๋ง ์์ ์์ฒด๊ฐ ์๋นํ ๋ ธ๋ ฅ์ด ํ์ํ๋ฉฐ, ํํฐ๋ง ๊ณผ์ ๋ง์ผ๋ก๋ ์์ ์ฑ์ ๊ฒ์ฆํ ์ ์์ต๋๋ค. ์๋ฅผ ๋ค์ด, ๋ฐ์ ์๊ฐ ๋ค๋ฅธ ์ด๋ฆ์ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ ๋๋ฝ๋์์ ๋ ํํฐ๋ง๋ ๊ฒฐ๊ณผ ์งํฉ์๋ ๋๋ฝ์ ๋ํ ํ์๊ฐ ์์ต๋๋ค.
์ปดํ์ผ๋ฌ ๊ฒฝ๊ณ ๋ฐ @Deprecated ์ฃผ์
์ต์ ์ธ์ด์ ํด์ฒด์ธ์ ๋ โโ์ด์ ์ฌ์ฉ๋์ง ์๋ ํจ์๊ฐ ํธ์ถ๋ ๋ ๊ฒฝ๊ณ ๋ฅผ ์์ฑํ๋ ์ฌ์ฉ ์ค๋จ ์ฃผ์ ๋ฉ์ปค๋์ฆ์ ์ ๊ณตํฉ๋๋ค. ์๋ฐ์ ๊ฒฝ์ฐ @Deprecated ์ฃผ์๊ณผ ๊ฒฐํฉ๋จ -Xlint:deprecation ํธ์ถ ์ง์ ์์ ์ปดํ์ผ ์๊ฐ ๊ฒฝ๊ณ ๋ฅผ ๋ฐ์์ํต๋๋ค. C#์ [Obsolete] `deprecated` ์์ฑ์ ๋น๋ ์์ ์ ๊ฒฝ๊ณ ๋ฅผ ์์ฑํฉ๋๋ค. Go ์ธ์ด์์๋ ์ฌ์ฉ๋์ง ์๋ ํจ์์ ์ด๋ฆ์ ์ง์ ํ๊ณ godoc์ ๋ฌธ์ํํ๋ ๊ท์น์ ๋ฐ๋ฅด์ง๋ง, ์ด๋ฌํ ๊ท์น์ ์๋์ผ๋ก ๊ฒฝ๊ณ ๋ฅผ ์์ฑํ์ง ์์ต๋๋ค. ์ด๋ฌํ ๋ฉ์ปค๋์ฆ์ ์ ์ฉํ์ง๋ง ํน์ ๋ฐฉ์์ผ๋ก ์ ํ๋ฉ๋๋ค. ์ฆ, ์ฌ์ฉ๋์ง ์์์ ์๋ฆฌ๋ ์ฃผ์์ด ๋ฌ๋ฆฐ ์ฝ๋๋ฒ ์ด์ค๋ฅผ ๋์์ผ๋ก ์ปดํ์ผํ๋ ํธ์ถ์์๊ฒ๋ง ์ ์ฉ๋ฉ๋๋ค.
๋ผ์ด๋ธ๋ฌ๋ฆฌ์ ์ด์ ๋ฒ์ ์ ์ฌ์ฉํ๋ ๋ฐ์ ์, ์ฆ ํด๋น ๋ฒ์ ์ด ์ถ์๋๊ธฐ ์ด์ ๋ฒ์ ์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ฌ์ฉํ๋ ๋ฐ์ ์ @Deprecated ์ด๋
ธํ
์ด์
์ ์ฌ์ฉํ๋ ํธ์ถ์๋ ๊ฒฝ๊ณ ๋ฅผ ๋ฐ์ง ์์ต๋๋ค. ์์ค ์ฝ๋์์ ์ปดํ์ผํ๋ ๋์ ๋ฐ์ด๋๋ฆฌ ์ํฐํฉํธ๋ฅผ ์ฌ์ฉํ๋ ํธ์ถ์๋ ๊ฒฝ๊ณ ๋ฅผ ๋ฐ์ง ์์ต๋๋ค. ๋ค๋ฅธ ์ธ์ด๋ก ์์ฑ๋ ํธ์ถ์๊ฐ ํฌ๋ก์ค ์ธ์ด ์ธํฐํ์ด์ค๋ฅผ ํตํด ํธ์ถํ๋ ๊ฒฝ์ฐ์๋ ๊ฒฝ๊ณ ๋ฅผ ๋ฐ์ง ์์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ค์ํ ๊ฒ์ ์ปดํ์ผ ์ค์ ๋ฐ์ํ๋ ๊ฒฝ๊ณ ๋ ์ปดํ์ผ๋ฌ์ ๊ด์ ์๋ง ๊ตญํ๋๋ค๋ ์ ์
๋๋ค. ์ฆ, ์ปดํ์ผ๋ฌ๊ฐ ์ธ์ํ๋ ํธ์ถ์ ๋ํ ๊ฒฝ๊ณ ์ผ ๋ฟ, ๋ณ๋๋ก ์ปดํ์ผ๋๋ ๋ค๋ฅธ ์ ์ฅ์์ ํธ์ถ์ ๋ํ ๊ฒฝ๊ณ ๋ ์๋๋๋ค. ๋ค์ค ์๋น์ค ์์คํ
์์ ํธ์ถ์ ๊ฒ์์ ์ ์ผํ ๋ฉ์ปค๋์ฆ์ผ๋ก ์ปดํ์ผ๋ฌ ๊ฒฝ๊ณ ๋ง ์ฌ์ฉํ๋ ๊ฒ์ ๋
๋ฆฝ์ ์ผ๋ก ์ปดํ์ผ๋๋ ๋ชจ๋ ํธ์ถ์๋ฅผ ๋์น๊ฒ ๋๋๋ฐ, ์ด๋ ๋ง์ดํฌ๋ก์๋น์ค ์ํคํ
์ฒ์์ ์ผ๋ฐ์ ์ธ ์ํฉ์
๋๋ค.
์ ์ ๋ถ์ ๋๊ตฌ: ๋ ๋์์ก์ง๋ง, ๋ฒ์๊ฐ ์ ํ์ ์ ๋๋ค.
ํน์ ์ธ์ด์ ํนํ๋ ์ ์ ๋ถ์ ๋๊ตฌ๋ ํด๋น ์ธ์ด์ IDE๋ณด๋ค ๋ ์ ํํ ํธ์ถ์ ์ด๊ฑฐ ๊ธฐ๋ฅ์ ์ ๊ณตํ๋ฉฐ, ์ฌ๋ฌ ์ฝ๋๋ฒ ์ด์ค๋ฅผ ์ธ๋ฑ์ฑํ๋๋ก ๊ตฌ์ฑํ๋ฉด ์ ์ฅ์ ๊ฒฝ๊ณ๋ฅผ ๋๋๋ค๋ฉฐ ๋ถ์ํ ์ ์์ต๋๋ค. ์ด๋ฌํ ๋๊ตฌ๋ ํ ์คํธ ์ผ์น์ ์์กดํ๋ ๋์ ์ ํํ ํธ์ถ ๊ทธ๋ํ๋ฅผ ๊ตฌ์ถํ๊ณ , IDE ๊ฒ์๋ณด๋ค ๋ณ์นญ ๋ฐ ๊ฐ์ ํธ์ถ์ ๋ ํจ๊ณผ์ ์ผ๋ก ์ฒ๋ฆฌํ๋ฉฐ, CI ํ์ดํ๋ผ์ธ์์ ์คํํ์ฌ ์๋ก์ด ํธ์ถ์๊ฐ ์ถ๊ฐ๋ ๋๋ง๋ค ์ด๋ฅผ ํฌ์ฐฉํ ์ ์์ต๋๋ค. ์ด๋ ํ์ฌ ์ฌ์ฉ ๊ฐ๋ฅํ ๋จ์ผ ์ธ์ด ๋ถ์ ๋ฐฉ๋ฒ ์ค ๊ฐ์ฅ ๋ฐ์ด๋ ์ฑ๋ฅ์ ์๋ํฉ๋๋ค.
์ด๋ฌํ ์ ์ฝ์ IDE๋ฅผ ์ ํํ๋ ๊ฒ๊ณผ ๋์ผํ ๋ฒ์ ๊ฒฝ๊ณ์์ ๋น๋กฏ๋์ง๋ง, ์ด์ ๋ ๋๊ตฌ ์์ค์์ ๋ฐ์ํฉ๋๋ค. Java ์ ์ ๋ถ์ ๋๊ตฌ๋ COBOL ํ๋ก๊ทธ๋จ์ ์ธ๋ฑ์ฑํ์ง ์๊ณ , COBOL ๋ถ์ ๋๊ตฌ๋ Java ์๋น์ค๋ฅผ ์ธ๋ฑ์ฑํ์ง ์์ผ๋ฉฐ, JCL ์์ ์คํธ๋ฆผ๋ ์ธ๋ฑ์ฑํ์ง ์์ต๋๋ค. ์ฌ์ฉ์ด ์ค๋จ๋ ํจ์๊ฐ JCL ์์ ์์ ํธ์ถ๋๊ณ ๋ฐ์ดํฐ ์ถ๋ ฅ์ด Java ์๋น์ค์์ ์๋น๋๋ COBOL ํ๋ก๊ทธ๋จ์์ ํธ์ถ๋๋ COBOL ์ ํธ๋ฆฌํฐ์ธ ์์คํ ์์ ๊ฐ ์ ์ ๋ถ์ ๋๊ตฌ๋ ํธ์ถ ๊ด๊ณ์ ์ผ๋ถ๋ง ๋ณผ ์ ์์ต๋๋ค. ํ์์ ์ธ ๋ฆฌํฉํ ๋ง ๊ธฐ๋ฒ ์ ๋งฅ๋ฝ์์ ์ดํด๋ณด๋ฉด , ๋๋ฌธ ์ค๋ฅ ์กฐ๊ฑด๊ณผ ๋์ฒด ๋ถ๊ธฐ๋ฅผ ํฌํจํ์ฌ ํน์ ์ฝ๋ ์น์ ์ ๋ํ ๋ชจ๋ ์คํ ๊ฒฝ๋ก๋ฅผ ์๋ณํ๋ ค๋ฉด ๋จ์ผ ์ธ์ด ๋๊ตฌ๋ก๋ ์ธ์ด ๊ฒฝ๊ณ๋ฅผ ๋์ด ๊ตฌ์ถํ ์ ์๋ ์์ ํ ํธ์ถ ๊ทธ๋ํ ๋งคํ์ด ํ์ํฉ๋๋ค.
์๋ฒฝํ ๋ฐ์ ์ ๋ชฉ๋ก ์์ฑ์ ์ํด ์ค์ ๋ก ํ์ํ ๊ฒ
๊ธฐ์ ์์คํ ์์ ๋ ์ด์ ์ฌ์ฉ๋์ง ์๋ ํจ์์ ๋ํ ์์ ํ ํธ์ถ์ ๋ชฉ๋ก์ ๊ฒ์ ๊ฒฐ๊ณผ๊ฐ ์๋๋๋ค. ์ด๋ ์ง์ ๊ฒฝ๋ก, ๊ฐ์ ๊ฒฝ๋ก, ์ธ์ด ๊ฐ ๊ฒฝ๋ก, ๋์ ๋์คํจ์นญ ๊ฒฝ๋ก๋ฅผ ํฌํจํ์ฌ ํด๋น ํจ์์ ๋๋ฌํ ์ ์๋ ๋ชจ๋ ์คํ ๊ฒฝ๋ก๋ฅผ ๊ตฌ์กฐ์ ์ผ๋ก ์ด๊ฑฐํ ๊ฒ์ ๋๋ค. ์ด๋ฌํ ์ด๊ฑฐ๋ฅผ ๊ตฌ์ถํ๋ ค๋ฉด ์ฌ๋ฌ ๊ฐ์ง ๊ธฐ๋ฅ์ด ํ์ํ๋ฐ, ํ์ค ๋๊ตฌ ํ๋๋ก๋ ์ด๋ฌํ ๊ธฐ๋ฅ์ ๋ชจ๋ ์ ๊ณตํ ์ ์์ต๋๋ค.
ํตํฉ๋ ์ธ์ด ๊ฐ ํธ์ถ ๊ทธ๋ํ. ์ด ํธ์ถ ๊ทธ๋ํ๋ ์์คํ ๋ด ๋ชจ๋ ์ธ์ด๋ฅผ ํฌ๊ดํด์ผ ํฉ๋๋ค. JCL ํ๋ก์์ ์์ COBOL ํ๋ก๊ทธ๋จ์ผ๋ก์ ํธ์ถ, COBOL ํ๋ก๊ทธ๋จ์์ ๊ณต์ ์ ํธ๋ฆฌํฐ ๋จ๋ฝ์ผ๋ก์ ํธ์ถ, ๊ทธ๋ฆฌ๊ณ ๋ฏธ๋ค์จ์ด ์ธํฐํ์ด์ค๋ฅผ ํตํด Java ์๋น์ค์์ ๋์ผํ COBOL ํ๋ก๊ทธ๋จ์ผ๋ก์ ํธ์ถ์ ๋ชจ๋ ๋์ผํ ๊ทธ๋ํ์ ๋ ธ๋์ ์์ง๊ฐ ๋์ด์ผ ํฉ๋๋ค. ์ฌ์ฉ์ด ์ค๋จ๋ ํจ์๋ ์ด ๊ทธ๋ํ์ ๋ ธ๋์ด๋ฉฐ, ํธ์ถ์ ์ด๊ฑฐ๋ ์์ ์ธ์ด์ ๊ด๊ณ์์ด ๋ชจ๋ ์ง์ ๋ฐ ๊ฐ์ ์์ง๋ฅผ ์ํํ๋ ๊ฒ์ ๋๋ค.
์ ์ฒด ํธ์ถ ๊ทธ๋ํ๋ฅผ ์ฌ๊ท์ ์ผ๋ก ํ์ํฉ๋๋ค. ์ง์ ํธ์ถ์๋ ์ฒซ ๋ฒ์งธ ๊ณ์ธต์ผ ๋ฟ์ ๋๋ค. ์์ ํ ๋ชฉ๋ก์ ์์ฑํ๋ ค๋ฉด ๊ฐ์ ํธ์ถ์, ๋ํผ ํจ์, ํผ์ฌ๋ ๊ณ์ธต์ ๊ฑฐ์ณ ํธ์ถ ๊ทธ๋ํ๋ฅผ ๋ฐ๋ผ ์๋ฅ๋ก ์ด๋ํด์ผ ํฉ๋๋ค. ํ์์ด ์์ฒด์ ์ผ๋ก ํธ์ถ์๊ฐ ์๋ ํจ์, ์ฆ ํธ์ถ ์ฒด์ธ์ ์ง์ ํ ์ง์ ์ ์ ๋๋ฌํ ๋๊น์ง ๊ณ์ํด์ผ ํฉ๋๋ค. ์ฌ์ฉ์ด ์ค๋จ๋ ํจ์๋ก ๋๋๋ ๊ฒฝ๋ก์ ๋ชจ๋ ํจ์๋ ๊ด๋ จ ์๋ฏธ์์ ํธ์ถ์์ ๋๋ค. ์ฌ์ฉ์ด ์ค๋จ๋ ํจ์๋ฅผ ์ ๊ฑฐํ๋ฉด ํด๋น ํจ์๋ฅผ ํต๊ณผํ๋ ๋ชจ๋ ๊ฒฝ๋ก๊ฐ ์๋ํ์ง ์๊ฒ ๋ฉ๋๋ค.
์ ์ฅ์ ๊ฐ ์ธ๋ฑ์ฑ. ํธ์ถ ๊ทธ๋ํ์๋ ํด๋น ํจ์๋ฅผ ํธ์ถํ ๊ฐ๋ฅ์ฑ์ด ์๋ ๋ชจ๋ ์ ์ฅ์์ ์ฝ๋๊ฐ ํฌํจ๋์ด์ผ ํ๋ฉฐ, ๊ณต์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ๋๋ ํจํค์ง๋ฅผ ํตํด ํด๋น ํจ์์ ์์กดํ๋ ์ ์ฅ์์ ์ฝ๋๋ ํฌํจ๋ฉ๋๋ค. ์ด๋ฅผ ์ํด์๋ ๋ชจ๋ ์ ์ฅ์๋ฅผ ๋์์ ์ธ๋ฑ์ฑํ๊ณ ์ ์ฅ์ ๊ฐ ๊ฐ์ ธ์ค๊ธฐ ๊ด๊ณ๋ฅผ ํด๊ฒฐํ์ฌ ํ ์ ์ฅ์์ ํธ์ถ์ ๋ค๋ฅธ ์ ์ฅ์์ ์ ์์ ์ฐ๊ฒฐํด์ผ ํฉ๋๋ค.
๊ฐ์ ํธ์ถ ํจํด ํ์ง. ๋ถ์์ ๋ฆฌํ๋ ์ , ๋์ ๋์คํจ์น, ํจ์ ํฌ์ธํฐ, ๋ธ๋ฆฌ๊ฒ์ดํธ ๋ฐ ๊ตฌ์ฑ ํ์ผ์ ๋ฌธ์์ด ๊ธฐ๋ฐ ํธ์ถ์ ํตํด ์ด๋ฃจ์ด์ง๋ ํธ์ถ์ ์๋ณํด์ผ ํฉ๋๋ค. ์ด๋ฌํ ํธ์ถ์ ์ง์ ์ ์ธ ํธ์ถ ๊ฒฝ๊ณ ํด๊ฒฐ๋ณด๋ค๋ ํจํด ๊ธฐ๋ฐ ํ์ง๊ฐ ํ์ํฉ๋๋ค. ์ฆ, ์ฝ๋์์ ๋์ ๋์คํจ์น ๋ฉ์ปค๋์ฆ์ ์ฐพ์ ์ด๋ค ์กฐ๊ฑด์์ ์ด๋ค ํจ์๋ก ๋์คํจ์น๋ ์ ์๋์ง๋ฅผ ํ์ ํด์ผ ํฉ๋๋ค.
ํ์ฑ ํธ์ถ์์ ํ ์คํธ ์ ์ฉ ๋๋ ๋นํ์ฑ ํธ์ถ์๋ฅผ ๊ตฌ๋ถํด์ผ ํฉ๋๋ค. ๋ชจ๋ ํธ์ถ์๊ฐ ๋์ผํ ๋์์ ํ์๋ก ํ๋ ๊ฒ์ ์๋๋๋ค. ์ฌ์ฉ์ด ์ค๋จ๋ ํจ์ ์์ฒด์ ๋ํ ํ ์คํธ ํฝ์ค์ฒ์๋ง ์กด์ฌํ๋ ํธ์ถ์๋ ๋ง์ด๊ทธ๋ ์ด์ ์ด ์๋ ์ ๋ฆฌ ์์ ์ ์ผํ์ผ๋ก ์ ๊ฑฐํด์ผ ํฉ๋๋ค. ์ฌ์ฉ ๋ถ์์ ํตํด ๋นํ์ฑ ์ฝ๋๋ก ์๋ณ๋ ์ฝ๋ ๋ด์ ํธ์ถ์๋ ํจ์ ์ ๊ฑฐ๋ฅผ ๋ง๋ ์์ธ์ด ์๋๋๋ค. ์ด๋ฌํ ๊ตฌ๋ถ์ ์ดํดํ๋ ค๋ฉด ํธ์ถ์ ์ด๊ฑฐ์ ์ค์ ๋ก ํ์ฑํ๋ ์ฝ๋ ๊ฒฝ๋ก์ ๋ํ ์ ๋ณด๋ฅผ ๊ฒฐํฉํด์ผ ํฉ๋๋ค. ์ ์ ๋ถ์์ ํตํ ๋นํ์ฑ ์ฝ๋ ํ์ง ๊ฒํ ์์ ์์ธํ ์ค๋ช ํ๋ฏ์ด , ๋ถ์์ ํ ๋ฌธ์ํ ๋๋ ๊ณผ๊ฑฐ ์ข ์์ฑ์ ๋ํ ๋ถํ์ค์ฑ์ผ๋ก ์ธํด ๋๋ฌํ ์ ์๋ ์ฝ๋์ ์ฌ์ฉ๋์ง ์๋ ํจ์๊ฐ ๋ฏธ์ ํฌ๋ฆฌํฐ์ปฌ ์์คํ ์์ ์๋ ๋์ ๋จ์ ์์ ์ ์์ผ๋ฏ๋ก, ์ฌ์ฉ์ด ์ค๋จ๋ ํจ์์ ํธ์ถ์ ๋ชฉ๋ก์์๋ ํ์ฑ ํธ์ถ์์ ๋นํ์ฑ ํธ์ถ์๋ฅผ ๊ตฌ๋ถํด์ผ ํฉ๋๋ค.
์ฌ์ฉ ์ค๋จ์์ ์ญ์ ๋ก ์ด์ด์ง๋ ํ๋ก์ธ์ค: ์ฒด๊ณ์ ์ธ ์ ๊ทผ ๋ฐฉ์
๋ ์ด์ ์ฌ์ฉ๋์ง ์๋ ํจ์์ ์ ๊ฑฐ๋ฅผ ๊ตฌ์กฐํ๋ ํ๋ก์ธ์ค๊ฐ ์๋ ๋จ์ผ ์ด๋ฒคํธ๋ก ์ฒ๋ฆฌํ๋ ๊ฒ์ด ๋๋ถ๋ถ์ ํธ์ถ์ ๋ฐ๊ฒฌ ์คํจ์ ์์ธ์ ๋๋ค. ์ฌ๋ฐ๋ฅธ ์ ๊ทผ ๋ฐฉ์์ ์ ๊ฑฐ๋ฅผ ์ฝ๋ ์ญ์ ํจ์ฌ ์ด์ ์ ์์๋๋ ๋ค๋จ๊ณ ํ๋ก์ธ์ค์ ์ต์ข ๋จ๊ณ๋ก ๊ฐ์ฃผํ๋ ๊ฒ์ ๋๋ค.
1๋จ๊ณ: ํ์ ๋ฐ ์ธก์
์ฒซ ๋ฒ์งธ ๋จ๊ณ๋ ์ธ์ด์ ๋ด์ฅ ๋ฉ์ปค๋์ฆ์ ์ฌ์ฉํ์ฌ ํด๋น ํจ์๋ฅผ ๋ ์ด์ ์ฌ์ฉํ์ง ์๋ ํจ์๋ก ํ์ํ๋ ๊ฒ์
๋๋ค.@Deprecated ์๋ฐ์์, [Obsolete] C#์์, #[deprecated] Rust ๋๋ ๊ทธ์ ์์ํ๋ ์ธ์ด๋ก ์์ฑ๋ ํด๋น ํจ์๋ฅผ ์ฐพ์ ๊ธฐ์ค ํธ์ถ ํ์๋ฅผ ์ค์ ํฉ๋๋ค. ์ด ๊ธฐ์ค์ ๋จ์ผ ๊ฒ์์ ๊ฒฐ๊ณผ๊ฐ ์๋๋ผ, ํด๋น ํจ์๋ฅผ ํธ์ถํ ๊ฐ๋ฅ์ฑ์ด ์๋ ๋ชจ๋ ์๋ ค์ง ์ฝ๋๋ฒ ์ด์ค๋ฅผ ์ธ๋ฑ์ฑํ๊ณ ๊ฒฐ๊ณผ๋ฅผ ๊ณ์ฐํ ๊ฒฐ๊ณผ์
๋๋ค. ์ด ๊ธฐ์ค์ ๋ ๊ฐ์ง ๋ชฉ์ ์ ์ํํฉ๋๋ค. ์ฒซ์งธ, ๋ง์ด๊ทธ๋ ์ด์
๋ฒ์๋ฅผ ์ ๋ํํ๊ณ , ๋์งธ, ํธ์ถ์๊ฐ ๋ง์ด๊ทธ๋ ์ด์
๋จ์ ๋ฐ๋ผ ์งํ ์ํฉ์ ์ธก์ ํ ์ ์๋ ๊ธฐ์ค์ ์ ๊ณตํฉ๋๋ค.
๊ธฐ์ค์ ์ ๋ฐ์ ์ ์ ํ ๋ฐ ์์น๋ณ๋ก ์ ๋ฆฌ๋์ด์ผ ํฉ๋๋ค.
| ๋ฐ์ ์ ์นดํ ๊ณ ๋ฆฌ | ์นด์ดํธ | ์ฐ์ | ๋ํ์ด์ฌ |
|---|---|---|---|
| ๋์ผ ์ ์ฅ์์ ์ง์ ํธ์ถ์ | N | ๋์ | ํ์ฌ ํ |
| ์ข ์ ์๋น์ค ๋ถ์ผ์ ์ง์ ๋ฐ์ ์ | N | ๋์ | ์๋น์ค ์์ ์ |
| ๋ํผ ํจ์๋ฅผ โโํตํ ํธ์ถ | N | ์ค๊ธ | ๋ํผ ์์ ์ |
| ์์ฑ๋ ์ฝ๋ ๋๋ ํ๋ ์์ํฌ ์ฝ๋์ ํธ์ถ์ | N | ์ค๊ธ | ํ๋ ์์ํฌ ํ |
| ํ ์คํธ ์ ์ฉ ์ฝ๋์ ํธ์ถ์ | N | ๋์ | ํ์ฌ ํ |
| ํตํ๊ฐ ๋๊ธด ์ํ์ ๋๋ค. | N | ์ฒญ์๋ง | ํ์ฌ ํ |
2๋จ๊ณ: ์๋ฆผ ๋ฐ ๋ง์ด๊ทธ๋ ์ด์
์๋ฒฝํ ๋ฐ์ ์ ๋ชฉ๋ก์ ํ๋ณดํ๋ฉด ๋ง์ด๊ทธ๋ ์ด์
์ ์ฌํ ๋์์ด ์๋ ์ฒด๊ณ์ ์ธ ์์
์ด ๋ฉ๋๋ค. ๊ฐ ๋ฐ์ ์ ๋ด๋น์๋ "์ด ํจ์๋ฅผ ํธ์ถํ ์ ์์ต๋๋ค"๊ฐ ์๋๋ผ "์ด ํจ์๋ 247๋ฒ์งธ ์ค์์ ํธ์ถ๋ฉ๋๋ค"์ ๊ฐ์ด ๊ตฌ์ฒด์ ์ธ ํธ์ถ ์์น๋ฅผ ์๋ฆผ์ผ๋ก ๋ฐ๊ฒ ๋ฉ๋๋ค. BillingService.java, 82๋ฒ์งธ ์ค AccountProcessor.java๊ทธ๋ฆฌ๊ณ ํตํฉ ํ
์คํธ์ 14๋ฒ์งธ ์ค์์ BillingServiceTest.java"์ด์ฒ๋ผ ๊ตฌ์ฒด์ ์ธ ์ ๋ณด๋ ๋ฐ์ ์ ๋ชฉ๋ก์ ํตํด ์ป์ ์ ์๋ ๊ฒ์ด๋ฉฐ, ์ผ๋ฐ์ ์ธ ์๋น์ค ์ค๋จ ๊ฒฝ๊ณ ๋ก๋ ์ ๊ณตํ ์ ์๋ ๊ฒ์
๋๋ค."
์๋ฆผ๊ณผ ํจ๊ป ๋ง์ด๊ทธ๋ ์ด์ ๊ฒฝ๋ก๋ฅผ ์ ๊ณตํ๋ ๊ฒ์ ํ์์ ์ ๋๋ค. ์ฌ์ฉ ์ค๋จ ๊ณต์ง์๋ ๋์ฒด ๊ธฐ๋ฅ์ ๋ํ ๋ฌธ์, ๊ธฐ์กด ๊ตฌํ๊ณผ ์ ๊ตฌํ ๊ฐ์ ๋์ ์ฐจ์ด์ ๋ํ ์ค๋ช , ๊ทธ๋ฆฌ๊ณ ๋ณ๊ฒฝ ์ฌํญ์ด ์ฌ์ํ์ง ์์ ๊ฒฝ์ฐ ๋ณ๊ฒฝ ์ ํ๋ฅผ ๋ณด์ฌ์ฃผ๋ ์ฝ๋ ์์ ๊ฐ ํฌํจ๋์ด์ผ ํฉ๋๋ค. ๋ค๋ฅธ ํ์ ์ฝ๋๋ฒ ์ด์ค๋ฅผ ์ฐธ์กฐํ๋ ๊ฒฝ์ฐ, ํด๋น ํ๋ค์ด ๊ฐ์์ ์ฐ์ ์์์ ๋ฉ๊ธฐ ์ผ์ ์ ๊ฐ์ง๊ณ ์์ผ๋ฏ๋ก ๋ง์ด๊ทธ๋ ์ด์ ์ผ์ ์ ์ผ๋ฐฉ์ ์ผ๋ก ๋ฐํํ๊ธฐ๋ณด๋ค๋ ๋ช ์์ ์ผ๋ก ํ์ํด์ผ ํฉ๋๋ค. ์ข ์ ์์คํ ์ ๋ฐ์ ๊ฑธ์น ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ฆฌํฉํ ๋ง ์ฌ๋ก์์ ์ดํด๋ณธ ๋ฐ์ ๊ฐ์ด , ๊ธฐ์กด ๊ตฌ์กฐ๋ฅผ ์ฌ์ฉ ์ค๋จํ๊ธฐ ์ ์ ์๋ก์ด ๊ตฌ์กฐ๋ฅผ ์ฌ์ฉํ๋ ๋ถ๋ถ์ ๋จ๊ณ์ ์ผ๋ก ๋์ ํ๋ ๊ฒ์ด ํธํ์ฑ์ ๊นจ๋จ๋ฆฌ๋ ๋ณ๊ฒฝ ์ฌํญ์ด ์๊ธฐ์น ์์ ๋ฌธ์ ๋ก ๋ํ๋๋ ๊ฒ์ ๋ฐฉ์งํ๋ ํจ๊ณผ์ ์ธ ๋ฐฉ๋ฒ์ ๋๋ค.
3๋จ๊ณ: ํตํ๋ ๋ชจ๋ํฐ๋ง
๊ธฐ์ค ์ธก์ ์์ ๊ณผ ์์ ๋ ์ ๊ฑฐ ์์ ์ฌ์ด์ ํธ์ถ์ ์๋ฅผ ์ง์์ ์ผ๋ก ๋ชจ๋ํฐ๋งํด์ผ ํฉ๋๋ค. ํธ์ถ์๊ฐ ๋์ฒด ํจ์๋ก ์ด๋ํ ๋๋ง๋ค ํธ์ถ์ ์๋ ๊ฐ์ํฉ๋๋ค. ํ์ฑ ํธ์ถ์์ ์๊ฐ 0์ด ๋๋ฉด ์ ๊ฑฐ ์์ ์ ๋๋ฌํ ๊ฒ์ผ๋ก ๊ฐ์ฃผํฉ๋๋ค(ํ ์คํธ ์ ์ฉ ํธ์ถ์ ๋ฐ ์ฌ์ฉ๋์ง ์๋ ์ฝ๋ ํธ์ถ์๋ ํจ์ ์์ฒด์ ๋์์ ์ ๊ฑฐ๋ ์ ์์ต๋๋ค). ์ง์์ ์ธ ๋ชจ๋ํฐ๋ง์ ์ํด์๋ ์ฝ๋ ๋ณ๊ฒฝ์ ๋ฐ๋ผ ์ต์ ์ ๋ณด๊ฐ ์๋๊ฒ ๋๋ ์ผํ์ฑ ์ธ๋ฒคํ ๋ฆฌ ๋ฐฉ์์ด ์๋, CI ํ์ดํ๋ผ์ธ์ ์ผ๋ถ๋ก ์ ๊ธฐ์ ์ผ๋ก ํธ์ถ์ ์ด๊ฑฐ๋ฅผ ์คํํด์ผ ํฉ๋๋ค.
๋ชจ๋ํฐ๋ง ์์คํ ์ ์ฌ์ฉ ์ค๋จ ๊ธฐ๊ฐ ๋์ ์ถ๊ฐ๋๋ ์๋ก์ด ํธ์ถ์๋ ๊ฐ์งํฉ๋๋ค. ๋๊ท๋ชจ ์กฐ์ง์์๋ ๊ฐ๋ฐ์๊ฐ ์ฌ์ฉ ์ค๋จ ์ฌ์ค์ ์ธ์งํ์ง ๋ชปํ๊ฑฐ๋, ์ฝ๋ ๊ฒํ ์์ ๋๋ฝ๋์๊ฑฐ๋, ์๋ํ๋ ์ฝ๋ ์์ฑ๊ธฐ๊ฐ ์ฌ์ฉ ์ค๋จ๋ ํจ์๋ฅผ ํธ์ถํ๋ ์ฝ๋๋ฅผ ์์ฑํ๋ ๋ฑ ๋ค์ํ ์ด์ ๋ก ๋ง์ด๊ทธ๋ ์ด์ ๊ธฐ๊ฐ ๋์ ์ฌ์ฉ ์ค๋จ๋ ํจ์๋ฅผ ํธ์ถํ๋ ์๋ก์ด ์ฝ๋๊ฐ ์์ฑ๋๋ ๊ฒฝ์ฐ๊ฐ ํํฉ๋๋ค. ์๋ก์ด ํธ์ถ ์ฌ์ดํธ์์ ์ค๋ฅ๊ฐ ๋ฐ์ํ๋๋ก ๊ตฌ์ฑ๋ CI ์์ค์ ์ฌ์ฉ ์ค๋จ๋ ํจ์ ํธ์ถ์ ๊ฐ์ง ๊ธฐ๋ฅ์ ํตํด ๋ง์ด๊ทธ๋ ์ด์ ์ด ์งํ๋๋ ๋์ ํธ์ถ์ ์๊ฐ ์ฆ๊ฐํ๋ ๊ฒ์ ๋ฐฉ์งํ ์ ์์ต๋๋ค.
4๋จ๊ณ: ์ ๊ฑฐ ์ ์์ ์ฑ ํ์ธ
ํด๋น ํจ์๋ฅผ ์ ๊ฑฐํ๊ธฐ ์ง์ ์, ์๋ ค์ง ๋ชจ๋ ์ฝ๋๋ฒ ์ด์ค์ ์ ์ฒด ๋ฒ์๋ฅผ ๋์์ผ๋ก ํธ์ถ์ ์ด๊ฑฐ๋ฅผ ์ต์ข ์ ์ผ๋ก ํ ๋ฒ ๋ ์คํํด์ผ ํฉ๋๋ค. ์ด ์ต์ข ๊ฒ์ฌ๋ ์์ ์ฅ์น ์ญํ ์ ํ๋ฉฐ, ํ์ฑ ํธ์ถ์์ ์๊ฐ 0์ ๋๋ฌํ๋์ง ํ์ธํ๊ณ CI ๋ชจ๋ํฐ๋ง์์ ํฌ์ฐฉ๋์ง ์์ ํ๊ธฐ ๋จ๊ณ์ ์ถ๊ฐ ์ฌํญ์ ์๋ณํฉ๋๋ค. ์ด ์์ ์์ ๋์ ํธ์ถ์๊ฐ ์๋์ง๋ ํ์ธํด์ผ ํฉ๋๋ค. ์ฆ, ๋ฌธ์์ด๋ก ํจ์๋ฅผ ์ฐธ์กฐํ๋ ๊ตฌ์ฑ ํ์ผ, ๋ฆฌํ๋ ์ ๊ธฐ๋ฐ ๋ฑ๋ก, ๊ทธ๋ฆฌ๊ณ ์ด๊ธฐ ๋ถ์์์ ํ์ธ๋ ๊ธฐํ ๊ฐ์ ํธ์ถ ๋ฉ์ปค๋์ฆ์ด ์๋์ง ํ์ธํด์ผ ํฉ๋๋ค.
๊ฒ์ฆ์ ๋ ์ด์ ์ฌ์ฉ๋์ง ์๋ ํจ์๋ฅผ ๋ ธ์ถํ๋ ๋ชจ๋ ๊ณต์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ๋๋ ํจํค์ง์ ์์กด์ฑ ๊ทธ๋ํ๊น์ง ํ์ฅ๋์ด์ผ ํฉ๋๋ค. ํด๋น ํจ์๊ฐ ์ธ๋ถ์์ ์ฌ์ฉํ๋ ๊ณต๊ฐ API์ ์ผ๋ถ์ธ ๊ฒฝ์ฐ, ์ ๊ฑฐ ์ผ์ ์๋ ๋ด๋ถ ์ฝ๋ ๋ถ์์ ํตํด ์ ๊ทผํ ์ ์๋ ์ธ๋ถ ์ฌ์ฉ์๊น์ง ๊ณ ๋ คํด์ผ ํฉ๋๋ค. ๋ด๋ถ ์์คํ ์ ๊ฒฝ์ฐ, ๊ฒ์ฆ์ ์์ธํ๋ ๋ชจ๋ ์ฝ๋๋ฒ ์ด์ค๋ฅผ ๋์์ผ๋ก ํฉ๋๋ค. ๊ณต๊ฐ์ ์ผ๋ก ๊ฒ์๋ API์ ๊ฒฝ์ฐ, ๊ฒ์ฆ์ ์๋ ค์ง ์ฌ์ฉ์ ์งํฉ๊ณผ ์ธ๋ถ ์ฌ์ฉ์๊ฐ ๋ง์ด๊ทธ๋ ์ด์ ํด์ผ ํ๋ ํน์ ์ ์ ๊ธฐ๊ฐ์ ํฌํจํ์ฌ ์งํ๋ฉ๋๋ค.
๋ ๊ฑฐ์ ์์คํ ๊ณผ ๋ฉ์ธํ๋ ์ ํ๊ฒฝ์์ ๋ฐ์ ์ ์ ๋ณด ๊ฒ์ ๋ฐฉ์์ด ๋ค๋ฅธ ์ด์
์์ ์ค๋ช ๋ ๋ฌธ์ ์ ๋ค์ ๋ชจ๋ ๋๊ท๋ชจ ์ํํธ์จ์ด ์์คํ ์ ์ ์ฉ๋์ง๋ง, ํนํ ๋ฉ์ธํ๋ ์ ๋ฐ ๋ ๊ฑฐ์ ํ๊ฒฝ์์๋ ๋์ฑ ์ฌ๊ฐํฉ๋๋ค. ์๋ํ๋ฉด ์ด๋ฌํ ํ๊ฒฝ์์์ ํธ์ถ ๊ด๊ณ๋ ์ต์ ํธ์ถ์ ๊ฒ์ ๋๊ตฌ๊ฐ ๋ถ์ํ๋๋ก ์ค๊ณ๋์ง ์์ ๋ฉ์ปค๋์ฆ์ ํตํด ํํ๋๊ธฐ ๋๋ฌธ์ ๋๋ค.
COBOL ํ๊ฒฝ์์ ํจ์๋ CALL ๋ฌธ์ ํตํด ํธ์ถ๋๋ฉฐ, ํธ์ถ ๋์์ ๋ฌธ์์ด ๋ฆฌํฐ๋ด, ํ๋ก๊ทธ๋จ ์ด๋ฆ์ด ํฌํจ๋ ๋ฐ์ดํฐ ํญ๋ชฉ, ๋๋ ํ๋ก์์ ํฌ์ธํฐ๋ก ์ฐธ์กฐ๋ ์ ์์ต๋๋ค. ๋ฌธ์์ด ๋ฆฌํฐ๋ด์ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ๋ ์ ์ ๋ถ์์ ํตํด ํด๊ฒฐํ ์ ์์ง๋ง, ๋ฐ์ดํฐ ํญ๋ชฉ์ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ๋ ํธ์ถ ์์ ์ ๋ฐ์ดํฐ ํญ๋ชฉ์ด ์ด๋ค ๊ฐ์ ๊ฐ์ง๊ณ ์๋์ง ํ์ ํ๊ธฐ ์ํด ๋ฐ์ดํฐ ํ๋ฆ ๋ถ์์ด ํ์ํ๊ณ , ํ๋ก์์ ํฌ์ธํฐ๋ฅผ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ๋ ํฌ์ธํฐ์ ํ ๋น ๋ฐฉ์์ ์ถ์ ํด์ผ ํฉ๋๋ค. ์ด๋ฌํ ํธ์ถ ๋ฉ์ปค๋์ฆ์ ์์ค ์ฝ๋์์ ๊ฐ๊ฐ ๋ค๋ฅธ ํํ๋ก ๋ํ๋๋ฉฐ, ํด๊ฒฐ์ ์ํด ํ์ํ ๋ถ์ ๋ฐฉ๋ฒ๋ ๋ค๋ฆ ๋๋ค.
JCL ํ๊ฒฝ์์ ํ๋ก๊ทธ๋จ์ EXEC PGM= ๋ฌธ์์ ์ด๋ฆ์ผ๋ก ํธ์ถ๋ฉ๋๋ค. ํ๋ก๊ทธ๋จ ์ด๋ฆ์ ๋ก๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ ์ปดํ์ผ๋ ๋ชจ๋์ ๋งคํ๋๋ ๋ฌธ์์ด์ ๋๋ค. JCL์ ํตํด COBOL ํ๋ก๊ทธ๋จ์ ํธ์ถ์๋ฅผ ์ถ์ ํ๋ ค๋ฉด JCL์ ํ์ฑํ์ฌ ํ๋ก๊ทธ๋จ ์ด๋ฆ์ ์ถ์ถํ๊ณ , ํด๋น ์ด๋ฆ์ ๊ตฌํํ๋ ์ปดํ์ผ๋ COBOL ํ๋ก๊ทธ๋จ์ ๋งคํํ๊ณ , ํด๋น ํ๋ก๊ทธ๋จ ๋ด์์ ์ด๋ค COBOL ๋จ๋ฝ์ด ๋ ์ด์ ์ฌ์ฉ๋์ง ์๋ ์ ํธ๋ฆฌํฐ๋ฅผ ํธ์ถํ๋์ง ํ์ธํด์ผ ํฉ๋๋ค. ์ด๋ฌํ ๋ค๋จ๊ณ ํด๊ฒฐ ๊ณผ์ ์ COBOL ๋ถ์๊ธฐ๋ JCL ๋ถ์๊ธฐ๊ฐ ๋จ๋ ์ผ๋ก ์ํํ ์ ์๋ ๋ฒ์๋ฅผ ์์ ํ ๋ฒ์ด๋ฉ๋๋ค.
๊ณต์ ์นดํผ๋ถ์ COBOL ํ๊ฒฝ์์ ํนํ ์ค์ํ ๋ฌธ์ ์ ๋๋ค. ์นดํผ๋ถ์ ์ ์๋ ๋ ์ด์ ์ฌ์ฉ๋์ง ์๋ ๋จ๋ฝ์ด COPY ๋ฌธ์ ํตํด ์ฌ๋ฌ ํ๋ก๊ทธ๋จ์ ํฌํจ๋ ์ ์์ต๋๋ค. ์ด ๋จ๋ฝ์ ๊ฐ ํ๋ก๊ทธ๋จ์ ๋ฌผ๋ฆฌ์ ์ผ๋ก ๋ณต์ ๋๋ ๊ฒ์ด ์๋๋ผ ์ปดํ์ผ ์์ ์ ํฌํจ๋ฉ๋๋ค. ์นดํผ๋ถ ํฌํจ ์ฌ๋ถ๋ฅผ ๊ณ ๋ คํ์ง ์๊ณ ์์ค ํ์ผ์์ ๋จ๋ฝ ์ด๋ฆ์ ๋ฐ์ ํ์๋ฅผ ์ธ๋ ๋ถ์์ ์นดํผ๋ถ ์์ฒด์์ ๋จ๋ฝ ์ ์๋ฅผ ์ฐพ์ ๊ณผ๋ ๊ณ์ฐํ๊ฑฐ๋, ์นดํผ๋ถ์ ํฌํจํ๋ ๋ชจ๋ ํ๋ก๊ทธ๋จ์ด ํด๋น ๋จ๋ฝ์ ์ ๊ทผํ ์ ์๋ค๋ ์ฌ์ค์ ๋์ณ ๊ณผ์ ๊ณ์ฐํ๋ ๋ ๊ฐ์ง ์ค๋ฅ๋ฅผ ๋ชจ๋ ๋ฐ์์ํต๋๋ค. ์ ํํ ํธ์ถ์ ํ์ ์ ์ํด์๋ ์ด๋ค ํ๋ก๊ทธ๋จ์ด ์ด๋ค ์นดํผ๋ถ์ ํฌํจํ๊ณ , ํด๋น ์นดํผ๋ถ ๋ด์ ์ด๋ค ๋จ๋ฝ์ ์ค์ ๋ก ํธ์ถํ๋์ง ์ดํดํด์ผ ํฉ๋๋ค. ํ๋์ฝ๋ฉ๋ ์ฐธ์กฐ์ ๊ทธ ํ์ ํ๋ก๊ทธ๋จ ๊ฐ์ ๊ด๊ณ๋ ๊ตฌ์กฐ์ ๋ณ๊ฒฝ ์ ์ ์ด๋ฌํ ํ๋ก๊ทธ๋จ ์์ค์ ํธ์ถ ๊ด๊ณ๋ฅผ ํ์ ํ๋ ๊ฒ์ด ์ ์ค์ํ์ง ๋ณด์ฌ์ค๋๋ค. ๋จ์ํด ๋ณด์ด๋ ๋ฌธ์์ด ์ฐธ์กฐ๊ฐ ์์ญ ๊ฐ์ ํ๋ก๊ทธ๋จ์ด ํต์ฌ ๊ธฐ๋ฅ์ ์ํํ๋ ์ ์ผํ ๋ฉ์ปค๋์ฆ์ผ ์ ์๊ธฐ ๋๋ฌธ์ ๋๋ค.
๋ฐฉ๋ฒ SMART TS XL ๋ฐ์ ์ ์ ๋ณด ์ ์ฒด๋ฅผ ๊ตฌ์ถํฉ๋๋ค.
SMART TS XL ์ธ๋ฑ์ฑ๋ ํ๊ฒฝ ๋ด์ ๋ชจ๋ ์ธ์ด, ํ๋ซํผ ๋ฐ ์ ์ฅ์์ ๊ฑธ์ณ ํตํฉ๋ ํธ์ถ ๊ทธ๋ํ๋ฅผ ๊ตฌ์ถํฉ๋๋ค. COBOL ํ๋ก๊ทธ๋จ, JCL ์์ ์คํธ๋ฆผ, Java ์๋น์ค, .NET ์ ํ๋ฆฌ์ผ์ด์ , SQL ์ ์ฅ ํ๋ก์์ , Python ์คํฌ๋ฆฝํธ ๋ฐ ๊ธฐํ ์์ค ์ํฐํฉํธ๋ ๋ชจ๋ ์ธ์ด๋ณ ๋ถ์์ ์ฌ์ฉํ์ฌ ๊ณตํต ์ํธ ์ฐธ์กฐ ๊ทธ๋ํ๋ก ํ์ฑ๋ฉ๋๋ค. ๊ฐ ํจ์, ๋จ๋ฝ, ํ๋ก์์ , ๋ฉ์๋ ๋ฐ ํ๋ก๊ทธ๋จ ๋จ์๋ ํด๋น ๊ทธ๋ํ์ ๋ ธ๋์ ๋๋ค. COBOL CALL ๋ฌธ, Java ๋ฉ์๋ ํธ์ถ, JCL EXEC PGM ๋๋ SQL EXEC์ ๊ฐ์ ๊ฐ ํธ์ถ ๊ด๊ณ๋ ์ ํ์ด ์ง์ ๋ ์์ง์ ๋๋ค. ์ด ๊ทธ๋ํ๋ ์ธ์ด๋ณ ๋ถ๋ถ์ ์ธ ๋ณด๊ธฐ๊ฐ ์๋ ์์คํ ์ ์ ์ฒด ํธ์ถ ํ ํด๋ก์ง๋ฅผ ๋ํ๋ ๋๋ค.
ํจ์๊ฐ ์ญ์ ๋์์ผ๋ก ํ์๋๋ฉด, SMART TS XLํธ์ถ์ ์ด๊ฑฐ๋ ๋์ ํจ์ ๋ ธ๋์์ ๋ค์ด์ค๋ ํธ์ถ ๊ทธ๋ํ๋ฅผ ์ํํ๋ฉฐ ํธ์ถ ๊ณ์ธต ๊ตฌ์กฐ์ ๋ชจ๋ ๋ ๋ฒจ์ ์๋ ๋ชจ๋ ํธ์ถ์๋ฅผ ์์งํฉ๋๋ค. ์ด ์ํ๋ ์ฌ๊ท์ ์ผ๋ก ์ด๋ฃจ์ด์ง๋ฉฐ, ๋ํผ ํจ์, ํผ์ฌ๋ ๋ ์ด์ด, ์ค๊ฐ ์ ํธ๋ฆฌํฐ๋ฅผ ๊ฑฐ์ณ ํธ์ถ์๊ฐ ์๋ ํจ์, ์ฆ ํธ์ถ ์ฒด์ธ์ ์ค์ ์ง์ ์ ์ ๋๋ฌํ ๋๊น์ง ๊ทธ๋ํ๋ฅผ ๋ฐ๋ผ๊ฐ๋๋ค. ๊ฒฐ๊ณผ๋ ์ธ์ด, ์ ์ฅ์, ํธ์ถ์ ์ ํ ๋ฐ ํธ์ถ ๊น์ด๋ณ๋ก ์ ๋ฆฌ๋์ด ํ์๊ฒ ์ง์ ํธ์ถ์์ ๊ฐ์ ํธ์ถ์, ํ์ฑ ํธ์ถ์์ ๋นํ์ฑ ํธ์ถ์๋ฅผ ๊ตฌ๋ถํ๋ ๊ตฌ์กฐํ๋ ๋ชฉ๋ก์ ์ ๊ณตํฉ๋๋ค.
ํ๋ซํผ์ ์ํฅ ๋ถ์ ๊ธฐ๋ฅ์ ์ด๋ฅผ ๊ตฌ์กฐํ๋ ๋ณ๊ฒฝ ์ํฅ ๋ณด๊ณ ์๋ก ํ์ฅํฉ๋๋ค. ์ด ๋ณด๊ณ ์๋ ๋จ์ํ ์ด๋ค ํจ์๊ฐ ๋ ์ด์ ์ฌ์ฉ๋์ง ์๋ ํจ์๋ฅผ ํธ์ถํ๋์ง๋ฟ๋ง ์๋๋ผ, ์ข ์์ฑ ์ฒด์ธ์ ๋ชจ๋ ์์ค์์ ์ด๋ค ํ๋ก๊ทธ๋จ, ์๋น์ค, ๋ฐฐ์น ์์ ๋ฐ JCL ํ๋ก์์ ๊ฐ ์ํฅ์ ๋ฐ๋์ง๊น์ง ๋ณด์ฌ์ค๋๋ค. ์ด ๋ณด๊ณ ์๋ ์ฌ์ฉ ์ค๋จ์์ ์ ๊ฑฐ๋ก์ ์ ํ ํ๋ก์ธ์ค๋ฅผ ์คํ ๊ฐ๋ฅํ๊ฒ ๋ง๋๋ ํต์ฌ ์๋ฃ์ ๋๋ค. ๋ณด๊ณ ์์๋ ๋ด๋น์ ์ด๋ฆ, ํน์ ํธ์ถ ์์น, ๊ทธ๋ฆฌ๊ณ ์ ๊ฑฐ๋ฅผ ์์ ํ๊ฒ ์งํํ๊ธฐ ์ ์ ํ์ํ ๋ง์ด๊ทธ๋ ์ด์ ๋ฒ์๊ฐ ๋ช ์๋์ด ์์ต๋๋ค. ๊ธฐ์ ๋ณ๊ฒฝ ๊ด๋ฆฌ์ ์ํฅ ๋ถ์ ์ ๋ํ ์์ธํ ๋ด์ฉ์์ ์ดํด๋ณด์๋ฏ์ด , ๊ตฌ์กฐ์ ๋ณ๊ฒฝ์ ์ํํ๊ธฐ ์ ์ ์ํฅ์ ๋ฐ๋ ๊ตฌ์ฑ ์์๋ฅผ ์ด๊ฑฐํ๋ ๋ฅ๋ ฅ์ ๋ณต์กํ๊ณ ์ํธ ์ฐ๊ฒฐ๋ ๊ธฐ์ ์์คํ ์ ์์ ํ ์ด์์ ์ํ ํ์์ ์ธ ์๊ตฌ ์ฌํญ์ ๋๋ค.
SMART TS XL ๋ํ, ์ฌ์ฉ ์ค๋จ ํ๋ก์ธ์ค์ ์ง์์ ์ธ ๋ชจ๋ํฐ๋ง ๋จ๊ณ๋ ์ง์ํฉ๋๋ค. ์์ค ์ฝ๋ ๋ณ๊ฒฝ ์ฌํญ์ด ์ธ๋ฑ์ฑ๋จ์ ๋ฐ๋ผ ์ํธ ์ฐธ์กฐ ๊ทธ๋ํ๊ฐ ์ง์์ ์ผ๋ก ์ ๋ฐ์ดํธ๋๋ฏ๋ก, ์ฌ์ฉ ์ค๋จ๋ ํจ์์ ํธ์ถ ํ์๋ ํญ์ ์ต์ ์ํ๋ก ์ ์ง๋ฉ๋๋ค. CI ํ์ดํ๋ผ์ธ ํตํฉ์ ํตํด ์๋ํ๋ ๊ฒ์ฌ๊ฐ ์ฌ์ฉ ์ค๋จ๋ ํจ์์ ๋ํ ์๋ก์ด ํธ์ถ์ ์คํจ๋ก ์ฒ๋ฆฌํ์ฌ, ์ฌํ์ ์๋ฐ ์ฌํญ์ ๋ฐ๊ฒฌํ๋ ๋์ ์ ์ฝ๋๊ฐ ๋์ ๋๋ ์์ ์ ๋ง์ด๊ทธ๋ ์ด์ ๊ท์ ์ ์ค์ํ๋๋ก ํฉ๋๋ค. ์ด๋ฌํ ์ด๊ธฐ ์ด๊ฑฐ, ๋ง์ด๊ทธ๋ ์ด์ ์ง์นจ ๋ฐ ์ง์์ ์ธ ๋ชจ๋ํฐ๋ง์ ์กฐํฉ์ ์ด๋ ธํ ์ด์ ์ถ๊ฐ๋ถํฐ ์์ ํ ์ ๊ฑฐ์ ์ด๋ฅด๊ธฐ๊น์ง ์ฌ์ฉ ์ค๋จ๋ ํจ์์ ์ ์ฒด ์๋ช ์ฃผ๊ธฐ๋ฅผ ํฌ๊ดํฉ๋๋ค.
๊ธฐ๋ฅ ์ญ์ , ํํ ์์ด
ํจ์ ์ ๊ฑฐ๊ฐ ์ํํ๊ฒ ์งํ๋๋ ๊ฒฝ์ฐ์ ์ด์ ํ๊ฒฝ์์ ์ค๋ฅ๋ฅผ ๋ฐ์์ํค๋ ๊ฒฝ์ฐ์ ์ฐจ์ด๋ ๊ฑฐ์ ํญ์ ํธ์ถ์ ์ ๋ณด ์์ง์ ์์ฑ๋ ์ฐจ์ด์์ ๋น๋กฏ๋ฉ๋๋ค. ์ ๊ฑฐ ์์ฒด๋ ๊ฐ๋จํฉ๋๋ค. ์ ์๋ฅผ ์ญ์ ํ๊ณ ๋ฐฐํฌํ๋ฉด ๋ฉ๋๋ค. ํ์ง๋ง ์ค๋น ๊ณผ์ ์์ ์ด๋ ค์์ด ๋ฐ์ํ๋ฉฐ, ์ด ์ค๋น๋ ํธ์ถ์ ์ธ๋ฒคํ ๋ฆฌ์ ์ ํ์ฑ์ ๋ฐ๋ผ ๊ฒฐ๊ณผ๊ฐ ์ข์ฐ๋ฉ๋๋ค.
ํธ์ถ ๊ทธ๋ํ๊ฐ ๋จ์ํ๊ณ , ๋จ์ผ ์ธ์ด๋ก ์์ฑ๋์์ผ๋ฉฐ, ๋จ์ผ ์ ์ฅ์ ๋ด์ ํฌํจ๋ ์์คํ ์์๋ IDE์ ํธ์ถ ๊ณ์ธต ๊ตฌ์กฐ์ ์ปดํ์ผ๋ฌ ๊ฒฝ๊ณ ๋ง์ผ๋ก๋ ์ถฉ๋ถํ ์ค๋น๊ฐ ๋ฉ๋๋ค. ํ์ง๋ง ํธ์ถ ๊ทธ๋ํ๊ฐ ์ฌ๋ฌ ์ธ์ด, ์ฌ๋ฌ ์ ์ฅ์, ์ฌ๋ฌ ํ๋ซํผ, ๊ทธ๋ฆฌ๊ณ ์ ์ฌ์ ์ผ๋ก ์์ญ ๋ ์ ๊ฑธ์น ์ฝ๋์ ๊ฑธ์ณ ์๋ ์์คํ ์์๋ ์ด๋ฌํ ๋๊ตฌ๋ค์ด ์ค์ ํธ์ถ์์ ๊ทนํ ์ผ๋ถ๋ถ๋ง์ ํ์ ํ ์ ์์ ๋ฟ์ ๋๋ค. ์ด๋ฌํ ๋๊ตฌ๋ค์ด ๋ฐํํ๋ ๊ฐ๊ณผ ์ค์ ๋ก ํจ์๋ฅผ ํธ์ถํ๋ ์ฝ๋ ์ฌ์ด์ ๊ฐ๊ทน์ด ๋ฐ๋ก ํ๋ก๋์ ํ๊ฒฝ์์์ ์ค๋ฅ ๋ฐ์ ์์ธ์ด ๋ฉ๋๋ค.
ํน์ ๋ชฉ์ ์ ๋ง๊ฒ ์ค๊ณ๋ ์ธ์ด ๋ฐ ์ ์ฅ์ ๊ฐ ํธ์ถ์ ์ด๊ฑฐ๋ ํจ์ ์ ๊ฑฐ๋ฅผ ์ํ ๊ฐ๋ฐ์ ์ํฌํ๋ก์ ๊ฐ์ ์ฌํญ์ด ์๋๋๋ค. ์คํ๋ ค ์ํฐํ๋ผ์ด์ฆ ์ฝ๋๋ฒ ์ด์ค์์ ํํ ๋ณผ ์ ์๋, ์์คํ ๊ฐ ํธ์ถ ๊ด๊ณ๊ฐ ๋ณต์กํ๊ฒ ์ฝํ ์๋ ์์คํ ์์ ํด๋น ์ํฌํ๋ก๋ฅผ ์์ ํ๊ฒ ์คํํ๊ธฐ ์ํ ํ์ ์กฐ๊ฑด์ ๋๋ค. ์์ ํ ํธ์ถ์ ๋ชฉ๋ก ์์ด ์ ๊ฑฐ๋ ๋ชจ๋ ์ฌ์ฉ ์ค๋จ ํจ์๋ ๋๋ฝ๋ ์ ์์ ๋๋ฌํ๋ ํน์ ์คํ ๊ฒฝ๋ก๋ฅผ ๊ธฐ๋ค๋ฆฌ๋ ๋์ ์ ์ ์๋ ์์ ๋ฐํ์ ์ค๋ฅ๋ฅผ ํฌํจํ๋ ๋ฆด๋ฆฌ์ค์ ๋๋ค. ์ด๋ฌํ ๋ถํ์ค์ฑ์ ์ ๊ฑฐํ๋ ๊ฒ์ด ๋ฐ๋ก ๊ตฌ์กฐํ๋ ํธ์ถ์ ๊ฒ์์ ๋ชฉ์ ์ ๋๋ค.