์ค๋์ ์ค์์ค ์คํํธ์
์ฝ๋ ๋ถ์์ ์ฝ๋๊ฐ ์ด๋์์๋ ์ฌ์ฉ๋๊ธฐ ์ ์ ์ํํธ์จ์ด ๊ฐ๋ฐ ์ด๊ธฐ์ ์ค๋ฅ, ์ ์ฌ์ ์ธ ์ทจ์ฝ์ , ํ์ ์๋ฐ ๋ฑ์ ๊ฐ์งํ๋ ๋ฐ ํ์ํฉ๋๋ค. ์ผ๋ฐ์ ์ผ๋ก ์ด ์ ์ฐจ๋ ์ ์ฝ๋ ๊ฐ๋ฐ๊ณผ ๋ณํํ์ฌ ์๋ฃ ์งํ ํ ์คํธ ๋จ๊ณ ์ด์ ์ ์ํ๋ฉ๋๋ค. DeepCode ๊ณต๋ ์ฐฝ๋ฆฝ์์ด์ CEO์ธ Boris Paskalev๋ VentureBeat์์ ์ธํฐ๋ทฐ์์ โ์ํํธ์จ์ด ํ ์คํธ๋ ์ธ๋ถ์์ ์ฝ๋๋ฅผ ์ดํด๋ณด์ง๋ง ์ฝ๋ ๋ถ์์ ์ฌ์ฉํ๋ฉด ๋ด๋ถ์์ ์ฝ๋๋ฅผ ์ดํด๋ณผ ์ ์์ต๋๋ค.โ๋ผ๊ณ ์ค๋ช ํฉ๋๋ค.
๋๋ถ๋ถ์ ๊ฒฝ์ฐ ์ฝ๋ ๊ฒํ ๋ ๋ค์ ๊ฐ๋ฐ ๋จ๊ณ๋ก ๋์ด๊ฐ๊ธฐ ์ ์ ๋ช ๋ฐฑํ ์ค๋ฅ๋ฅผ ์๋ณํ๊ธฐ ์ํด ์์ฑ์์ ๋๋ฃ ๋ฐ ๊ด๋ฆฌ์๊ฐ ์ํํฉ๋๋ค. ๊ทธ๋ฆฌ๊ณ ํ๋ก์ ํธ ๊ท๋ชจ๊ฐ ํด์๋ก ํ์ธํด์ผ ํ๋ ์ฝ๋ ์ค๋ ๋์ด๋ ํ๋ก๊ทธ๋๋จธ์ ์๊ฐ๋ ์๋นํ ๋ง์ด ์๋ชจ๋ฉ๋๋ค. Coverity ๋ฐ PVS-Studio์ ๊ฐ์ ์ ์ ์ฝ๋ ๋ถ์๊ธฐ์ ๊ฐ์ด ์ด ํ๋ก์ธ์ค ์๋๋ฅผ ๋์ด๋ ๋๊ตฌ๋ ์ค๋ซ๋์ ์ฌ์ฉ๋์ด ์์ง๋ง "๊ท์ฐฎ๊ณ ๋ฐ๋ณต์ ์ธ ๋ฌธ์ฒด ๋ฌธ์ , ์์ ์ง์ ๋ฐ ์์ ๋ ผ๋ฆฌ์ ์ค๋ฅ์ ๋๋ค.โ๋ผ๊ณ Paskalev๋ ์ค๋ช ํฉ๋๋ค.
DeepCode๋ ์๋ฅผ ๋ค์ด ํฌ๋ก์ค ์ฌ์ดํธ ์คํฌ๋ฆฝํ ๋ฐ SQL ์ฃผ์ ๊ธฐํ์ ๊ฐ์ ์ทจ์ฝ์ ์ ํ์งํ๋ ๋ฑ ๋ ๋์ ๋ฒ์์ ๋ฌธ์ ๋ฅผ ๋ค๋ฃน๋๋ค. DeepCode์ ๋ด์ฅ๋ ์๊ณ ๋ฆฌ์ฆ์ ์ฝ๋๋ฅผ ๋ฌธ์ ์งํฉ์ผ๋ก ๋ถ์ํ๋ ๊ฒ์ด ์๋๋ผ ์์ ์์ฑ๋ ํ๋ก๊ทธ๋จ์ ์๋ฏธ์ ๋ชฉ์ ์ ์ดํดํฉ๋๋ค. ์ด๊ฒ์ ์ค์ฌ์๋ ๊ต์ก์ ์ํด ๊ณต๊ฐ์ ์ผ๋ก ์ฌ์ฉ ๊ฐ๋ฅํ ์คํ ์์ค ํ๋ก์ ํธ์ ์์ญ์ต ์ค์ ์ฝ๋๋ฅผ ์ฌ์ฉํ๋ ๊ธฐ๊ณ ํ์ต ์์คํ ์ด ์์ต๋๋ค. DeepCode๋ ์ด์ ๋ฒ์ ์ ์ฝ๋์ ๊ทธ์ ๋ฐ๋ฅธ ํ์ ๋ณ๊ฒฝ ์ฌํญ์ ๋ถ์ํ์ฌ ์ด๋ค ์ค๋ฅ๊ฐ ์๋์ง, ์ค์ ํ๋ก๊ทธ๋๋จธ๊ฐ ์์ ์ ์ด๋ป๊ฒ ์์ ํ๋์ง ์ฐ๊ตฌํ ๋ค์ ์ฌ์ฉ์์๊ฒ ์ ์ฌํ ์๋ฃจ์ ์ ์ ๊ณตํฉ๋๋ค. ๋ํ ์์คํ ์ ์์์ ์ธ๊ธํ ์ ์ ๋ถ์๊ธฐ์ ๊ฐ์ ๊ธฐ์กด ์์ธก ์๊ณ ๋ฆฌ์ฆ์ ์ฌ์ฉํ์ฌ ์ฝ๋์์ ๋ฐ์ํ ์ ์๋ ๋ฌธ์ ๋ฅผ ์ฐพ์ต๋๋ค.
DeepCode๋ฅผ ์ฌ์ฉํ ๋ ์ค์ํ ์ง๋ฌธ ์ค ํ๋๋ ์๋ ์ฝ๋ ๊ฒํ ๊ฐ ์ผ๋ง๋ ์์ ์ ์ธ๊ฐ์ ๋๋ค. ๋ถ์ ์ ํ๋๊ฐ 100% ๋ฏธ๋ง์ด๋ผ๋ ๊ฒ์ ๊ฐ๋ฐ์๊ฐ ์ฌ์ ํ ์ฝ๋๋ฅผ ์๋์ผ๋ก ๋ถ์ํด์ผ ํจ์ ์๋ฏธํฉ๋๋ค. ๊ทธ๋ ๋ค๋ฉด ์ด ์์ ์ ์๋ํํ๋ ๋๊ตฌ๋ฅผ ์ฌ์ฉํ๋ฉด ์ค์ ๋ก ์ผ๋ง๋ ๋ง์ ์๊ฐ์ ํ๋ณดํ ์ ์์ต๋๊น? Paskalev์ ๋ฐ๋ฅด๋ฉด DeepCode๋ ๊ฐ๋ฐ์๊ฐ ํ์ฌ ์ค์ค๋ก ์ค๋ฅ๋ฅผ ๊ฒ์ํ๋ ๋ฐ ์๋นํ๋ ์๊ฐ์ ์ฝ 50%๋ฅผ ์ ์ฝํ ์ ์์ผ๋ฉฐ ์ด๋ ์๋นํ ์ค์ํ ์์น์ ๋๋ค.
๊ฐ๋ฐ์๋ DeepCode๋ฅผ GitHub ๋๋ Bitbucket ๊ณ์ ์ ์ฐ๊ฒฐํ ์ ์์ผ๋ฉฐ ์ด ๋๊ตฌ๋ ๋ก์ปฌ GitLab ๊ตฌ์ฑ๋ ์ง์ํฉ๋๋ค. ๋ํ ์ด ํ๋ก์ ํธ์๋ ๊ฐ๋ฐ์๊ฐ DeepCode๋ฅผ ์์ ์ ๊ฐ๋ฐ ์์คํ ์ ํตํฉํ ์ ์๋ ํน์ API๊ฐ ์์ต๋๋ค. ์ ์ฅ์์ ์ฐ๊ฒฐ๋๋ฉด DeepCode๋ ๊ฐ ์ฝ๋ ๋ณ๊ฒฝ ์ฌํญ์ ๋ถ์ํ๊ณ ์ ์ฌ์ ์ธ ๋ฌธ์ ๋ฅผ ํ์ํฉ๋๋ค.
"ํ๊ท ์ ์ผ๋ก ๊ฐ๋ฐ์๋ ๋ฒ๊ทธ๋ฅผ ์ฐพ๊ณ ์์ ํ๋ ๋ฐ ์๊ฐ์ ์ฝ 30%๋ฅผ ์๋นํ์ง๋ง DeepCode๋ ํ์ฌ ๊ทธ ์๊ฐ์ ์ ๋ฐ์ ์ ์ฝํ ์ ์์ผ๋ฉฐ ์์ผ๋ก๋ ๋ ๋ง์ ์๊ฐ์ ์ ์ฝํ ์ ์์ต๋๋ค."๋ผ๊ณ Boris๋ ๋งํฉ๋๋ค. โDeepCode๋ ๊ธ๋ก๋ฒ ๊ฐ๋ฐ์ ์ปค๋ฎค๋ํฐ๋ก๋ถํฐ ์ง์ ํ์ตํ๊ธฐ ๋๋ฌธ์ ํ ์ฌ๋์ด๋ ์ ์ฒด ๋ฆฌ๋ทฐ์ด ๊ทธ๋ฃน์ด ์ฐพ์ ์ ์๋ ๊ฒ๋ณด๋ค ๋ ๋ง์ ๋ฌธ์ ๋ฅผ ์ฐพ์ ์ ์์ต๋๋ค.โ
๋ฅ์ฝ๋๋ ์ค๋ ํฌ์ ์์๊ณผ ํจ๊ป ์์ฌ ์ ํ์ ๋ํ ์๋ก์ด ๊ฐ์น ์ ์ฑ ๋ ๋ฐํํ๋ค. ์ง๊ธ๊น์ง DeepCode๋ ์คํ ์์ค ์ํํธ์จ์ด ๊ฐ๋ฐ ํ๋ก์ ํธ์๋ง ๋ฌด๋ฃ๋ก ์ ๊ณต๋์์ต๋๋ค. ์ด์ ๋ชจ๋ ๊ต์ก ๋ชฉ์ ์ผ๋ก ๋ฌด๋ฃ๋ก ์ฌ์ฉํ ์ ์์ผ๋ฉฐ ๊ฐ๋ฐ์๊ฐ 30๋ช ๋ฏธ๋ง์ธ ์์ ํ์ฌ์์๋ ์ฌ์ฉํ ์ ์์ต๋๋ค. ๋ถ๋ช ํ ์ด ๋จ๊ณ๋ฅผ ํตํด DeepCode ์ ์์๋ ์๊ท๋ชจ ํ์์ ์์ฌ ์ ํ์ ๋ ์ธ๊ธฐ ์๊ฒ ๋ง๋ค๊ณ ์ถ์ดํฉ๋๋ค. ๋ํ DeepCode๋ ํด๋ผ์ฐ๋ ๋ฐฐํฌ์ ๊ฒฝ์ฐ ๊ฐ๋ฐ์๋น ์ 20๋ฌ๋ฌ, ๋ก์ปฌ ์ง์์ ๊ฒฝ์ฐ ๊ฐ๋ฐ์๋น 50๋ฌ๋ฌ๋ฅผ ์ฒญ๊ตฌํฉ๋๋ค.
์ด์ ์ DeepCode ํ์ ์ด๋ฏธ 1๋ง ๋ฌ๋ฌ์ ํฌ์๋ฅผ ๋ฐ์์ต๋๋ค. ํ์ฌ๋ ์ถ๊ฐ๋ก 4๋ง ๊ฐ๋ฅผ ์ถ๊ฐํ์ฌ C#, PHP ๋ฐ C/C++์ ๋ํ ์ง์์ ์ถ๊ฐํ๋ ๊ฒ์ ํฌํจํ์ฌ Java, JavaScript ๋ฐ Python ์ด์์ผ๋ก ์ง์ํ๋ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด๋ฅผ ํ์ฅํ ๊ณํ์ด๋ผ๊ณ ๋ฐํ์ต๋๋ค. ๋ํ ์์ฒด ํตํฉ ๊ฐ๋ฐ ํ๊ฒฝ์ ๊ตฌ์ถํ๊ณ ์์์ ํ์ธํ์ต๋๋ค.
์ถ์ฒ : 3dnews.ru