๐ป ๊ฐ๋ฐ ๊ฒฝ๋ ฅ 14๋ , ์ฌ์ ํ ํ๋ก๊ทธ๋๋ฐ์ ์ด๋ ต๋ค (1)
Piglei๋์ ๋ธ๋ก๊ทธ๋ฅผ ์์ญ/์์ฝํ ๊ธ์ ๋๋ค. --- ์ค๋์ , ๊ณง ์กธ์ ์ ์๋๊ณ ์๋ ๋๋ ์ธํด ์๋ฆฌ๋ผ๋ ์์๋ณผ ๊ฒธ ์ทจ์ ๊ณต๊ณ ๋ค์ ์ดํด๋ณด๊ณ ์์๋ค. ์ธํด ์๋ฆฌ๋ ๋ง์ด ๋ดค์ง๋ง ํธ๊ธฐ์ฌ์ โ๊ฒฝ๋ ฅโ ๊ฐ๋ฐ์ ๊ณต๊ณ ๋ ๋ช ๊ฐ ํ์ด๋ดค๋ค. ๋๋ถ๋ถ โ์ต์ 5๋ ์ด์์ ๊ฒฝ๋ ฅโ์ ์๊ตฌํ๊ธฐ์ โ๊ฐ๋ฐ ๊ฒฝ๋ ฅ 5๋ ์ ๋๋ฉด ์์ ์ํ๊ฒ ์ง? ๋ฐฅ ๋จน๋ฏ์ด ์ฝ๋ฉํ๋๊น?โ๋ผ๊ณ ์๊ฐํ๋ฉฐ ๋์ ์ฐ์ฐจ๊ฐ ๊ณง ์ค๋ ฅ์ ๋ท๋ฐ์นจํ ๊ฑฐ๋ ๋ง์ฐํ ์์์ ํ๊ธฐ๋ ํ๋ค. ์ ๊ณ์ ๋ชธ ๋ด์ ์ง 14๋ ์ด ์ง๋ ์ง๊ธ, ๋๋์๋ณด๋ฉด ๊ทธ๋ ์๊ฐํ๋ ๋ง์ ๋ถ๋ถ๋ค์ด ํ๋ ธ์์ ๊นจ๋ฌ์๋ค. ๊ทธ๋์์ ๊ฒฝํ์ ๋ฐํ์ผ๋ก ํ๋ก๊ทธ๋๋ฐ์ ๋ํ ๊ณ ์ฐฐ์ ์ฌ๋ ๊ฐ์ง๋ก ์ถ๋ ค๋ดค๋๋ฐ, ๋๊ตฐ๊ฐ ๊ณต๊ฐ์ ํ ์ ์๋ค๋ฉด ๋ํ ๋์๊ฐ ์๊ฒ ๋ค. 1) ์ฝ๋๋ฅผ ์์ฑํ๋ ๊ฑด ์ฝ์ง๋ง ์ข์ ์ฝ๋๋ฅผ ์์ฑํ๋ ๊ฑด ์ด๋ ต๋ค. ์๋ ์๋ ํ๋ก๊ทธ๋๋ฐ์ด ์ ๋ฌธํ๊ธฐ ์๋นํ ์ด๋ ค์ด ๋ถ์ผ์๋ค. ์ ๋ฌธํ๋ ค๋ฉด ์ฌ๋ฌ ์ฑ ๊ณผ ๋ฌธ์๋ฅผ ์ฐพ์๋ด์ผํ๊ณ ์ด์ฌ์๋ค์ด ์ฝ๊ธฐ์๋ ๋ฒ ์ฐผ๋ค. ๊ทธ๋์ ๋๋ถ๋ถ์ ํ๋ก๊ทธ๋๋ฐ์ ์ง์ ํ ์ฌ๋ฏธ๋ฅผ ์๊ธฐ ์ ์ ํฌ๊ธฐํ๋ค. ์ด์ ๋ ์๋๋ค. ๊ฐ๋ฐ์ ์์ํ๋ ๋ฐฉ๋ฒ์ ๋ฌด์ํ ๋ง์ผ๋ฉฐ ๋ ์ด์ Java๋ C๋ฅผ ๊ณ ์งํ์ง๋ ์๊ณ ๊ด๋ จ IDE๋ ๋น์ฝ์ ์ผ๋ก ๋ฐ์ ํ๋ค. ์ด์ ๋ ๋๊ตฌ๋ ์ฝ๊ฒ ๋ฐฐ์๋ณผ ์ ์๋ ๊ธฐ์ ์ด ๋์๋ค. ํ์ง๋ง, ์ฝ๊ฒ ์ ๊ทผํ ์ ์๋ ๊ฒ๊ณผ ์ข์ ์ฝ๋๋ฅผ ์์ฑํ๋ ๊ฒ์ ๋ค๋ฅด๋ค. ์ง๊ธ ํ์ฌ ์ฝ๋๋ฅผ ๋ ์ฌ๋ ค๋ณด์. ์ข์ ์ฝ๋๊ฐ ๋ ๋ง์๊ฐ ์๋๋ฉด ๋ณ๋ก์ธ ์ฝ๋๊ฐ ๋ ๋ง์๊ฐ? ๋น์ ์ ๋ต์ด ๋ญ์ง๋ ๋ชจ๋ฅด๊ฒ ์ง๋ง ๋๋ถํฐ ๊ณต์ ํ์๋ฉด: ์ข์ ์ฝ๋๋ ํฌ๊ทํ๋ค. 2010๋ , ์ ์๋ ค์ง ์ธํฐ๋ท ํ์ฌ๋ก ์ด์งํ๋ค. ์ด ํ์ฌ ์ด์ ์๋ ์คํํธ์ ์์๋ง ์ผ์ ํ๊ธฐ์ ๋๋์ด โ์ข์ ์ฝ๋ ํ๋ฆฌํฐโ๋ฅผ ์ ํด๋ณผ ์ ์๋ค๋ ๊ธฐ๋๊ฐ์ ๋ค๋ ์์๋ค. ๊ทธ๋ฆฌ๊ณ ๊ทธ ๊ธฐ๋๊ฐ์ ์ผ์ฃผ์ผ๋ ๋์ง ์์ ์ฌ๋ผ์ก๋ค. ํ๋ก์ ํธ ์ฝ๋๋ ๋ด๊ฐ ์๊ฐํ โ์ข์ ์ฝ๋ ํ๋ฆฌํฐโ์๋ ์์ ํ ๋๋จ์ด์ ธ ์์๊ณ , ์์ฃผ ์์ ์์ ์ฌํญ์ ๋ฐ์ํ๋ ค๊ณ ํด๋ ์์ ๋๋ ๋จ๋ฉด์ ์ฝ๋๋ฅผ ์์ฑํด์ผ ํ ์ ๋์๋ค. ์ดํ ์ฌ๋ฌ ํ์ฌ๋ฅผ ๊ฑฐ์น๋ฉด์ ๋๋ ์ ์: ํ์ฌ๋ ํ๋ก์ ํธ ๊ท๋ชจ์ ์๊ด์์ด ์ข์ ์ฝ๋๋ฅผ ์ ํ ๊ธฐํ๋ ์์ ๊ผฝ๋๋ค. ์ข์ ์ฝ๋๋ ๋ฌด์์ธ๊ฐ? ์ข์ ์ฝ๋๊ฐ ๋ฌด์์ธ์ง ๋ ผํ ๋ Martin Fowler๋ฅผ ๋ง์ด ์ธ์ฉํ๊ณ ๋ ํ๋ค. โ(์์ญ) ์ปดํจํฐ๊ฐ ์ดํดํ ์ ์๋ ์ฝ๋๋ ์๋ฌด๋ ๋ง๋ค ์ ์๋ค. ์ข์ ํ๋ก๊ทธ๋๋จธ๋ ์ฌ๋์ด ์ดํดํ ์ ์๋ ์ฝ๋๋ฅผ ๋ง๋ ๋ค.โ ์ด ๋ฌธ๊ตฌ๋ฅผ ์์์ ์ผ๋ก ์๊ฐํด๋ ์ข์ ๊ฒ ๊ฐ๋ค. ์ข์ ์ฝ๋๋ ๊ฐ๋ ์ฑ์ด ์ข๊ณ , ์ฝ๊ฒ ์ดํดํ ์ ์์ผ๋ฉฐ, ์๋๊ฐ ๋ช ํํด์ผ ํ๋ค. ์ข์ ์ฝ๋๋ฅผ ์์ฑํ๋ ์์น์ ์ฝ๋์ ๋ ์๊ฐ ์ฌ๋์ด๋ผ๋ ๊ฒ์ ์ธ์งํ๋ ๊ฒ์ด๋ค. ๊ฐ๋ ์ฑ ์ด์ธ์๋ ์ข์ ์ฝ๋๋ ์ฌ๋ฌ๊ฐ์ง๋ฅผ ๊ณ ๋ คํด์ผ ํ๋ค. * ํ๋ก๊ทธ๋๋ฐ ์ธ์ด ํ์ค์ ์ ์ค์ํ๋์ง: ๊ฐ๋ฐ ์ธ์ด๊ฐ ์ ์ํ๋ ํ์ค์ ์ ๋ฐ๋ฅด๋์ง, ๊ฐ๋ฐ ์ธ์ด์ syntactic sugar๋ ๊ธฐ๋ฅ์ ์ ์ฌ์ ์์ ์ ํ์ฉํ๋์ง * ๋ณ๊ฒฝ์ด ์ฉ์ดํ์ง: ๋ฏธ๋ ๋ณ๊ฒฝ ์ฌํญ์ ์ฝ๊ฒ ๋ฐ์ํ ์ ์๋์ง * ์ฌ์ฉํ๊ธฐ ์ฝ๊ณ ํ์ฅํ๊ธฐ ์ฌ์ด API ๋์์ธ: ๊ฐ๋จํ ์๋๋ฆฌ์ค๋ฅผ ์ฝ๊ฒ ๊ตฌํํ ์ ์๋์ง, ์ฉ๋์ ๋ง๊ฒ ์ข ๋ ๊ณ ๊ธ ๊ธฐ๋ฅ์ผ๋ก ํ์ฅํ ์ ์๋์ง * ๊ด์ฐฎ์ ์ฑ๋ฅ: ํ์ฌ ๋น์ฆ๋์ค ์๊ตฌ ์ฌํญ์ ๋ง์ถ ์ ์๋ ์ฑ๋ฅ์ธ์ง, ๋ ์ต์ ํ๋ฅผ ํ ์ฌ์ง๊ฐ ์๋์ง * ์ค๋ฒ-์์ง๋์ด๋ง ๋ฐฉ์ง: ๊ณผํ๊ฒ ๋ณต์กํ๊ฑฐ๋ ์ฃ๋ถ๋ฅธ ์ต์ ํ๋ฅผ ํ์ง๋ ์์๋์ง ์ฆ, ์ข์ ์ฝ๋๋ ์ฝ๊ฒ ๋ง๋ค์ด์ง๋ ๊ฒ์ด ์๋๋ค. ์ข์ ์ฝ๋๋ฅผ ์์ฑํ๊ธฐ ์ํด์๋ ์ฌ๋ฌ ์ฐจ์์ ๊ณ ๋ คํ์ฌ ์ต์ ์ ๊ท ํ์ ์ฐพ๊ณ , ์ธ์ฌํ ๋์์ธ์ ๋ฐ์ํ๊ณ , ๋์์์ด ์์ ํด๋๊ฐ๋ ๊ฒ์ด๋ค. ์ข์ ์ฝ๋๋ฅผ ์์ฑํ๋ ๋ฐฉ๋ฒ์ ๋น ๋ฅด๊ฒ ๊นจ์ฐ์น ์๋ ์์๊น? ์ข์ ์ฝ๋ ์์ฑ์ ์ํ ์ง๋ฆ๊ธธ ์ฝ๋ ์์ฑ์ ๊ธ์ฐ๊ธฐ์ ๋ง์ ๋ฉด์์ ์ ์ฌํ๋ค. ๋ฐฉ์์ ์ด์ง ๋ค๋ฅด์ง๋ง, ๋ ๋ค ๊ธ์์ ๊ธฐํธ๋ก ์์ด๋์ด๋ฅผ ์ ๋ฌํ๋ค. ๊ธ์ ์ ์ฐ๋ ์ฌ๋๋ค์ด๋ ์๊ฐ๋ค์ ์ง์ ๊ธ์ ์ฐ๋ ์๊ฐ๋ ๋ง์ง๋ง ๋ค๋ฅธ ์ฌ๋์ ๊ธ์ ์ฝ๋ ์๊ฐ๋ ๋ง๋ค. ๊ฐ๋ฐ์๋ค์ ๋ ์๋ฅผ ์ํํ ํ๋ ๊ฒฝ์ฐ๊ฐ ๋ง๋ค. ์ข์ ์ฝ๋๋ฅผ ์์ฑํ๋ ๋ฐฉ๋ฒ์ ๊นจ์ฐ์น๊ณ ์ถ๋ค๋ฉด ๋ ์๋ ๊ฒ์๋ฆฌํด์๋ ์๋๋ค. ์ฐ๋ฆฌ๊ฐ ๋งค์ผ ์ ํ๋ ํ์ฌ ์ฝ๋ ์ธ์๋ ์ข ๋ ๊ณ ์ ์ ์ธ ์ํํธ์จ์ด ๊ฐ๋ฐ ์ฑ ์ด๋, API ๋์์ธ, ๋ชจ๋ ์ํคํ ์ฒ, ์ฝ๋ ์์ฑ ๋ฐฉ๋ฒ๋ก ๋ฑ์ ๋ํด ์ฝ์ด๋ณด๊ธฐ๋ฅผ ๊ถํ๋ค. โ๋ ์ โ ํ๋ก๊ทธ๋๋ฐโ์ด๋ผ๋ ๋ฌดํ ์ฌ์ดํด์ด ํ๋ก๊ทธ๋๋ฐ ์ค๋ ฅ์ ํค์ฐ๋ ์ง๋ฆ๊ธธ์ด๋ค. 2) ํ๋ก๊ทธ๋๋ฐ์ ๋ณธ์ง์ โ์ฐฝ์โ์ด๋ค ํ๋ก๊ทธ๋๋ฐ์ ํ๋ค ๋ณด๋ฉด, ๊ฐํน ์์ฒญ๋ ์ฑ์ทจ๊ฐ๊ณผ ํจ๊ป โ๊ฐ๋ฐ์ด ์ต๊ณ ์ผ!!!โ๋ผ๊ณ ๋ด์ ์ธ์นจ์ ์ง๋ฅผ ๋๊ฐ ์๋ค. ์๋ฅผ ๋ค๋ฉด, ์์ฒญ ์ก๊ธฐ ํ๋ ๋ฒ๊ทธ๋ฅผ ์๋ฒฝํ๊ฒ ๊ณ ์ณ๋ด๊ฑฐ๋, ์๋ก์ด ์๊ณ ๋ฆฌ์ฆ์ผ๋ก ์ฑ๋ฅ์ ๋ช ๋ฐฐ ํฅ์ ์ํค๋ ๊ฒ๋ค ๋ง์ด๋ค. ํ์ง๋ง, ์ด๊ฒ๋ค๊ณผ ๋น๊ต๋ ์ ์์ ๋งํผ โ์ฐฝ์โ์ ํ ์ฐจ์ ๋ค๋ฅธ ์ฑ์ทจ๊ฐ์ ์ค๋ค. โ์ฐฝ์โ์ ๊ฐ๋ฐํ๋ ๋งค ์๊ฐ ์กด์ฌํ๋ค. ๋จ์ํ ์๋ก์ด ๋ฒ์ ์ ๋ฆด๋ฆฌ์ฆํ๋ ๊ฒ ๋ฟ๋ง ์๋๋ผ, ์ฌ์ฌ์ฉ์ฑ์ ์ํ ์ ํธ๋ฆฌํฐ ํจ์, ์ข ๋ ๋ช ํํ ๋ฐ์ดํฐ ๋ชจ๋ธ ๊ตฌํ ๋ฑ ๋ง์ ๊ฒ๋ค์ด โ์ฐฝ์โ์ด ๋ ์ ์๋ค. ๊ฐ๋ฐ์๋ค์ด โ์ฐฝ์โ์ ๋ํ ์ด์ ์ ๊ฐ์ง๊ณ ์๋ ๊ฒ์ด ์ค์ํ ์ด์ ๋: * ํจ์จ์ ์ธ ํ์ต: ์๋ก์ด ๊ฒ์ ๋ง๋ค๋ฉฐ ์ป๋ ๋ฐฐ์์ด ๊ฐ์ฅ ํจ๊ณผ์ ์ด๋ค * ์๊ธฐ์น ๋ชปํ ์ผ๋ค์ ์ ํ ์ ์์: ์ ๋ช ํ ์คํ ์์ค ํ๋ก์ ํธ ์ค ์ฐฝ์์์ ํธ๊ธฐ์ฌ์์ ์์๋ ๊ฒ์ด ๋ง๋ค. ์๋ฅผ ๋ค๋ฉด ๋ฆฌ๋ ์ค๋ ํ์ด์ฌ. โ์ฐฝ์โ์ด ์ฃผ๋ ์ด์ ๋ ๋ง๊ณ ๊ฐ๋ฐ์๋ค์๊ฒ ๊ธฐํ๋ ์ด๋ ค์์ง๋ง, ๋ง์ ๊ฐ๋ฐ์๋ค์ด โ์ฐฝ์์โ๊ฐ ๋์ด์ผ ํ๋ ์ด์ ๋ฅผ ๋ชจ๋ฅด๊ณ ์๋ ๊ฒ ๊ฐ๋ค. ์ด๋ ํ ์ฒ ํ์์ ๋ฒฝ๋๊ณต๋ค์ ์ด์ผ๊ธฐ์ ์ ์ฌํ๋ค. ์ฒ ํ์๊ฐ ๋ ๋ช ์ ๋ฒฝ๋๊ณต์๊ฒ ๋ฌด์์ ํ๊ณ ์๋์ง ๋ฌป์, ํ ๋ช ์ ์ฑ๋น์ ์ง๊ณ ์๋ค๊ณ ํ๊ณ , ๋ค๋ฅธ ํ ๋ช ์ ๋จ์ํ ๋ฒฝ๋์ ์๊ณ ์๋ค๊ณ ๋๋ตํ๋ค. ๋๋ถ๋ถ์ ๊ฐ๋ฐ์๋ค์ ํ์๋ค. ์ฑ๋น์ ๋ณด์ง ๋ชปํ๊ณ ๋จ์ํ ๋ฒฝ๋ ์๊ธฐ๋ฅผ ํ๊ณ ์๋ค. โ์ฐฝ์์โ๊ฐ ๋์ด๋ณด๋ฉด ์ผ์ ๋ํ ๊ด์ ์ด ํ์ฐํ๊ฒ ๋ฌ๋ผ์ง๋ค. ๊ฐ๋ น API์ ์๋ฌ ๋ฉ์ธ์ง๋ฅผ ์์ฑํ ๋๋ ๊ด์ฑ์ ์ผ๋ก ๋ฉ์ธ์ง๋ฅผ ์์ฑํ ์ง ์๋๋ฉด ์ด๋ค ์๋ฌ ๋ฉ์ธ์ง๋ฅผ ๋ฐํํด์ผ ์ข ๋ ์ข์ ์ ์ ๊ฒฝํ์ ๋ง๋ค ์ ์๋์ง ๊ณ ๋ฏผํ๊ฒ ๋๋ค. ์ด๋ ๋ฏ, โ์ฐฝ์์ ๋ง์ธ๋์ โ์ ๊ฐ๋ฐ ์ปค๋ฆฌ์ด์ ์์ด ์ค์ํ ๋๊ธฐ๊ฐ ๋๋ค. ์ค์ค๋ก์๊ฒ ๋๋ฌผ์ด ๋ณด์: โ๋ค์์ผ๋ก ๋ง๋ค๊ณ ์ถ์ ๊ฒ์ ๋ฌด์์ธ๊ฐ?โ --- ๋ถ๋ ์กฐ์ ์คํจ๋ก ๋ค์ ํฌ์คํธ์์ ์ด์ด์ง๋๋ค (TBC) ์๊ธ: https://www.piglei.com/articles/en-programming-is-still-hard-after-14-years/