์์ฌ๊ณผ์ ํ์๋ค์ด ์ฐธ์ฌํ ๋ด ํด์ปคํค DevDays ํ๋ก์ ํธ์ ๋ํด ๊ณ์ํด์ ์ด์ผ๊ธฐํ๊ฒ ์ต๋๋ค.
๊ทธ๊ฑด ๊ทธ๋ ๊ณ , ์ฐ๋ฆฌ๋ ๋
์๋ค์ ์ฐธ์ฌ๋ฅผ ์ด๋ํ๊ณ ์ถ์ต๋๋ค
ํ ๋ ๊ทธ๋จ ๋ฐ์คํฌํ ์์ฑ ๋ฉ์์ง ํ์
์์ด๋์ด ์์ฑ์
์ฝ๋ก์
ฐํ ์๋ฅดํ
๋ช ๋ น ๊ตฌ์กฐ
Khoroshev Artem โ ํ๋ก์ ํธ ๊ด๋ฆฌ์/๊ฐ๋ฐ์/QA
Eliseev Anton โ ๋น์ฆ๋์ค ๋ถ์๊ฐ/๋ง์ผํ
์ ๋ฌธ๊ฐ
Maria Kuklina โ UI ๋์์ด๋/๊ฐ๋ฐ์
Bakhvalov Pavel โ UI ๋์์ด๋/๊ฐ๋ฐ์/QA
์ฐ๋ฆฌ์ ๊ด์ ์์ ๋ณผ ๋ ํ ๋ ๊ทธ๋จ์ ํ๋์ ์ด๊ณ ํธ๋ฆฌํ ๋ฉ์ ์ ์ด๋ฉฐ, PC ๋ฒ์ ์ ๋์ค์ ์ด๊ณ ์คํ ์์ค์ด๋ฏ๋ก ์์ ์ด ๊ฐ๋ฅํฉ๋๋ค. ํด๋ผ์ด์ธํธ๋ ๋งค์ฐ ํ๋ถํ ๊ธฐ๋ฅ์ ์ ๊ณตํฉ๋๋ค. ํ์ค ๋ฌธ์ ๋ฉ์์ง ์ธ์๋ ์์ฑ ํตํ, ์์ ๋ฉ์์ง, ์์ฑ ๋ฉ์์ง๊ฐ ํฌํจ๋ฉ๋๋ค. ๊ทธ๋ฆฌ๊ณ ๋๋๋ก ์์ ์์๊ฒ ๋ถํธ์ ๋ผ์น๋ ๊ฒ์ ํ์์ ๋๋ค. ์ปดํจํฐ๋ ๋ ธํธ๋ถ์ ์ฌ์ฉํ๋ ๋์์๋ ์์ฑ ๋ฉ์์ง๋ฅผ ๋ค์ ์ ์๋ ๊ฒฝ์ฐ๊ฐ ๋ง์ต๋๋ค. ์ฃผ๋ณ ์์์ด ์๊ฑฐ๋ ํค๋ํฐ์ด ๋ถ์กฑํ๊ฑฐ๋ ๋ค๋ฅธ ์ฌ๋์ด ๋ฉ์์ง ๋ด์ฉ์ ๋ฃ์ง ๋ชปํ๊ฒ ํ๊ณ ์ถ์ ์๋ ์์ต๋๋ค. ํ ๋ ๊ทธ๋จ์ ์ค๋งํธํฐ์์ ์ฌ์ฉํ๋ฉด ๋ ธํธ๋ถ์ด๋ PC์ ๋ฌ๋ฆฌ ๊ท์ ๋๊ณ ์ฌ์ฉํ๊ธฐ๋ง ํ๋ฉด ์ด๋ฌํ ๋ฌธ์ ๊ฐ ๊ฑฐ์ ๋ฐ์ํ์ง ์์ต๋๋ค. ์ฐ๋ฆฌ๋ ์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ ค๊ณ ๋ ธ๋ ฅํ์ต๋๋ค.
DevDays ํ๋ก์ ํธ์ ๋ชฉํ๋ ์์ ๋ ์์ฑ ๋ฉ์์ง๋ฅผ ํ ์คํธ๋ก ๋ณํํ๋ ๊ธฐ๋ฅ์ Telegram ๋ฐ์คํฌํฑ ํด๋ผ์ด์ธํธ(์ดํ Telegram Desktop)์ ์ถ๊ฐํ๋ ๊ฒ์ด์์ต๋๋ค.
ํ์ฌ ๋ชจ๋ ์๋ ๋ก๊ทธ๋ ์ค๋์ค ๋ฉ์์ง๋ฅผ ๋ณด๋ด๊ณ ์ด์ ๋ํ ์๋ต์ผ๋ก ํ ์คํธ๋ฅผ ๋ฐ์ ์ ์๋ ๋ด์ ๋๋ค. ์ฐ๋ฆฌ๋ ์ด์ ๋ณ๋ก ๋ง์กฑํ์ง ์์ต๋๋ค. ๋ฉ์์ง๋ฅผ ๋ด์ ์ ๋ฌํ๋ ๊ฒ์ ๊ทธ๋ฆฌ ํธ๋ฆฌํ์ง ์์ต๋๋ค. ์ฐ๋ฆฌ๋ ๊ธฐ๋ณธ ๊ธฐ๋ฅ์ ๊ฐ๊ณ ์ถ์ต๋๋ค. ๋ํ ๋ชจ๋ ๋ด์ ์์ฑ ์ธ์ API์ ์ฌ์ฉ์ ์ฌ์ด์ ์ค๊ฐ์ ์ญํ ์ ํ๋ ์ XNUMX์์ด๋ฏ๋ก ์ต์ํ ์์ ํ์ง ์์ต๋๋ค.
์์ ์ธ๊ธํ๋ฏ์ด Telegram-desktop์๋ ์์ ์ฉ์ด์ฑ๊ณผ ์๋๋ผ๋ ๋ ๊ฐ์ง ์ค์ํ ์ฅ์ ์ด ์์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ด๊ฒ์ ์ ์ ์ผ๋ก C++๋ก ์์ฑ๋์๊ธฐ ๋๋ฌธ์ ์ฐ์ฐ์ด ์๋๋๋ค. ๊ทธ๋ฆฌ๊ณ ์๋ก์ด ๊ธฐ๋ฅ์ ํด๋ผ์ด์ธํธ์ ์ง์ ์ถ๊ฐํ๊ธฐ๋ก ๊ฒฐ์ ํ๊ธฐ ๋๋ฌธ์ C++๋ก ๊ฐ๋ฐํด์ผ ํ์ต๋๋ค.
์ฐ๋ฆฌ ํ์๋ 4 ๋ช
์ด์์์ต๋๋ค. ์ฒ์์๋ ๋ ์ฌ๋์ด ์์ฑ ์ธ์์ ์ ํฉํ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ฐพ๊ณ ์์๊ณ , ํ ์ฌ๋์ Telegram-desktop์ ์์ค ์ฝ๋๋ฅผ ์ฐ๊ตฌํ๊ณ ์์๊ณ , ๋ค๋ฅธ ํ ์ฌ๋์ ๋น๋ ํ๋ก์ ํธ๋ฅผ ๋ฐฐํฌํ๊ณ ์์์ต๋๋ค.
์๋ํ ๊ธฐ๋ฅ์ ๊ตฌํํ๋ ๊ฒ์ ์ด๋ ต์ง ์์ ๊ฒ ๊ฐ์์ง๋ง ๋ ๊ทธ๋ ๋ฏ์ด ์ด๋ ค์์ด ๋ฐ์ํ์ต๋๋ค.
๋ฌธ์ ์ ๋ํ ํด๊ฒฐ์ฑ ์ ๋ ๊ฐ์ง ๋ ๋ฆฝ์ ์ธ ํ์ ์์ , ์ฆ ์ ์ ํ ์์ฑ ์ธ์ ๋๊ตฌ๋ฅผ ์ ํํ๊ณ ์๋ก์ด ๊ธฐ๋ฅ์ ์ํ UI๋ฅผ ๊ตฌํํ๋ ๊ฒ์ผ๋ก ๊ตฌ์ฑ๋์์ต๋๋ค.
์์ฑ ์ธ์์ ์ํ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ ํํ ๋ ์ธ์ด ๋ชจ๋ธ์ด ๋ง์ ๊ณต๊ฐ์ ์ฐจ์งํ๊ธฐ ๋๋ฌธ์ ์ฆ์ ๋ชจ๋ ์คํ๋ผ์ธ API๋ฅผ ํฌ๊ธฐํด์ผ ํ์ต๋๋ค. ๊ทธ๋ฌ๋ ์ฐ๋ฆฌ๋ ๋จ ํ๋์ ์ธ์ด์ ๋ํด์๋ง ์ด์ผ๊ธฐํ๊ณ ์์ต๋๋ค. ์จ๋ผ์ธ API๋ฅผ ์ฌ์ฉํด์ผ ํ๋ค๋ ๊ฒ์ด ๋ถ๋ช ํด์ก์ต๋๋ค. ๋์ค์ Google, Yandex ๋ฐ Microsoft์ ๊ฐ์ ๊ฑฐ๋ ๊ธฐ์ ์ ์์ฑ ์ธ์ ์๋น์ค๋ ์ ํ ๋ฌด๋ฃ๊ฐ ์๋๋ฉฐ ํ๊ฐํ ๊ธฐ๊ฐ์ ๋ง์กฑํด์ผ ํ๋ค๋ ๊ฒ์ด ๋ฐํ์ก์ต๋๋ค. ๊ฒฐ๊ณผ์ ์ผ๋ก XNUMX๋ ๋์ ์ง์๋๋ ์๋น์ค ์ฌ์ฉ์ ์ํ ํ ํฐ์ ์ป์ ์ ์๋ Google Speech-To-Text๊ฐ ์ ํ๋์์ต๋๋ค.
์ฐ๋ฆฌ๊ฐ ์ง๋ฉดํ ๋ ๋ฒ์งธ ๋ฌธ์ ๋ ์ค์ ์ง์ค์ ์ ์ฅ์๊ฐ ์๋ ๋ค์ํ ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ ๋๋ฌผ์์ธ C++์ ์ผ๋ถ ๋จ์ ๊ณผ ๊ด๋ จ์ด ์์ต๋๋ค. Telegram Desktop์ ๋ค๋ฅธ ๋ง์ ๋ฒ์ ๋ณ ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ ์์กดํ๋ ๊ฒฝ์ฐ๊ฐ ๋ง์ต๋๋ค. ๊ณต์ ์ ์ฅ์์๋
Telegram Desktop ์์ฒด๋ ์กฐ๋ฆฝํ๋ ๋ฐ ๊ฝค ์ค๋ ์๊ฐ์ด ๊ฑธ๋ฆฝ๋๋ค. Intel Core i5-7200U๊ฐ ํ์ฌ๋ ๋ ธํธ๋ถ์์๋ ๋ชจ๋ ์ข ์์ฑ์ ํฌํจํ ์ ์ฒด ์กฐ๋ฆฝ(ํ๋๊ทธ -j 4)์ด ์ฝ 30์๊ฐ์ด ๊ฑธ๋ฆฝ๋๋ค. ์ด ์ค ํด๋ผ์ด์ธํธ ์์ฒด๋ฅผ ์ฐ๊ฒฐํ๋ ๋ฐ ์ฝ 10๋ถ ์ ๋๊ฐ ์์๋์ง๋ง(๋์ค์ Debug ๊ตฌ์ฑ์์๋ ์ฐ๊ฒฐ์ ์ฝ XNUMX๋ถ ์ ๋ ์์๋ ๊ฒ์ผ๋ก ๋ฐํ์ก์ต๋๋ค), ๋ณ๊ฒฝ ํ ๋งค๋ฒ ์ฐ๊ฒฐ ๋จ๊ณ๋ฅผ ๋ฐ๋ณตํด์ผ ํฉ๋๋ค.
๋ฌธ์ ์๋ ๋ถ๊ตฌํ๊ณ ์ฐ๋ฆฌ๋ ๊ตฌ์ํ ์์ด๋์ด๋ฅผ ๊ตฌํํ๊ณ ์
๋ฐ์ดํธํ๋ ๋ฐ ์ฑ๊ณตํ์ต๋๋ค.
์ฐ๋ฆฌ์ ์๊ฒฌ์ผ๋ก๋ ์ด๋ ๋ง์ ์ฌ์ฉ์์๊ฒ ํธ๋ฆฌํ ์ ์๋ ๊ธฐ๋ฅ์ ๋ํ ์ข์ ๊ฐ๋ ์ฆ๋ช ์ผ๋ก ํ๋ช ๋์์ต๋๋ค. Telegram Desktop์ ํฅํ ๋ฆด๋ฆฌ์ค์์ ์ด๋ฅผ ๋ณผ ์ ์๊ธฐ๋ฅผ ๋ฐ๋๋๋ค.
IntelliJ IDEA์ ํฅ์๋ ์์ฐ์ด ์ง์
์์ด๋์ด ์์ฑ์
ํ์ฝํ ๋ธ๋ผ๋์ฌ๋ผํ
๋ช ๋ น ๊ตฌ์กฐ
Tankov Vladislav(ํ์ฅ, LanguageTool ๋ฐ IntelliJ IDEA ์์
)
Nikita Sokolov(LanguageTool ์์
๋ฐ UI ์์ฑ)
Khvorov Alexander(LanguageTool ์์
๋ฐ ์ฑ๋ฅ ์ต์ ํ)
Sadovnikov Alexander(๋งํฌ์
์ธ์ด ๋ฐ ์ฝ๋ ๊ตฌ๋ฌธ ๋ถ์ ์ง์)
์ฐ๋ฆฌ๋ ๋ค์ํ ํ ์คํธ(์ฃผ์ ๋ฐ ๋ฌธ์, ์ฝ๋์ ๋ฆฌํฐ๋ด ์ค, Markdown ๋๋ XML ๋งํฌ์ ํ์์ ํ ์คํธ)์ ๋ฌธ๋ฒ, ์ฒ ์ ๋ฐ ๋ฌธ์ฒด ์ ํ์ฑ(์์ด์์๋ ๊ต์ ์ด๋ผ๊ณ ํจ)์ ๊ฒ์ฌํ๋ IntelliJ IDEA์ฉ ํ๋ฌ๊ทธ์ธ์ ๊ฐ๋ฐํ์ต๋๋ค.
์ด ํ๋ก์ ํธ์ ์์ด๋์ด๋ ํ์ค ๋ง์ถค๋ฒ ๊ฒ์ฌ IntelliJ IDEA๋ฅผ Grammarly ๊ท๋ชจ๋ก ํ์ฅํ์ฌ IDE ๋ด๋ถ์ ์ผ์ข ์ Grammarly๋ฅผ ๋ง๋๋ ๊ฒ์ด์์ต๋๋ค.
๋ฌด์จ ์ผ์ด ์ผ์ด๋ฌ๋์ง ๋ณผ ์ ์์ด์
์, ์๋์์๋ ํ๋ฌ๊ทธ์ธ์ ๊ธฐ๋ฅ๊ณผ ํ๋ฌ๊ทธ์ธ ์์ฑ ์ค์ ๋ฐ์ํ ์ด๋ ค์์ ๋ํด ๋ ์์ธํ ์ค๋ช ํ๊ฒ ์ต๋๋ค.
์๊ทน
์์ฐ์ด๋ก ํ ์คํธ๋ฅผ ์์ฑํ๋๋ก ์ค๊ณ๋ ์ ํ์ด ๋ง์ด ์์ง๋ง ๋ฌธ์์ ์ฝ๋ ์ฃผ์์ ๋๋ถ๋ถ ๊ฐ๋ฐ ํ๊ฒฝ์์ ์์ฑ๋ฉ๋๋ค. ๋์์ IDE๋ ์ฝ๋์์ ์ค๋ฅ๋ฅผ ์ฐพ๋ ๋ฐ๋ ํ์ํ์ง๋ง ์์ฐ์ด๋ก ๋ ํ ์คํธ์๋ ์ ํฉํ์ง ์์ต๋๋ค. ์ด๋ก ์ธํด ๊ฐ๋ฐ ํ๊ฒฝ์์ ์ง์ ํ์ง ์๊ณ ๋ ๋ฌธ๋ฒ, ๊ตฌ๋์ ๋๋ ์คํ์ผ์์ ์ค์๋ฅผ ์ ์ง๋ฅด๊ธฐ๊ฐ ๋งค์ฐ ์ฝ์ต๋๋ค. ์ฌ์ฉ์ ์ธํฐํ์ด์ค๋ฅผ ์์ฑํ ๋ ์ค์๋ฅผ ์ ์ง๋ฅด๋ ๊ฒ์ด ๊ฐ์ฅ ์ค์ํฉ๋๋ค. ์๋ํ๋ฉด ์ด๋ ์ฝ๋์ ์ดํด ๊ฐ๋ฅ์ฑ๋ฟ๋ง ์๋๋ผ ๊ฐ๋ฐ๋ ์ ํ๋ฆฌ์ผ์ด์ ์ฌ์ฉ์ ์์ ์๊ฒ๋ ์ํฅ์ ๋ฏธ์น๊ธฐ ๋๋ฌธ์ ๋๋ค.
๊ฐ์ฅ ๋๋ฆฌ ์ฌ์ฉ๋๊ณ ๊ฐ๋ฐ๋ ๊ฐ๋ฐ ํ๊ฒฝ ์ค ํ๋๋ IntelliJ IDEA์ IntelliJ ํ๋ซํผ ๊ธฐ๋ฐ IDE์ ๋๋ค. IntelliJ ํ๋ซํผ์๋ ์ด๋ฏธ ๋ง์ถค๋ฒ ๊ฒ์ฌ๊ธฐ๊ฐ ๋ด์ฅ๋์ด ์์ง๋ง ๊ฐ์ฅ ๊ฐ๋จํ ๋ฌธ๋ฒ ์ค๋ฅ๋ ์ ๊ฑฐํ์ง ๋ชปํฉ๋๋ค. ์ฐ๋ฆฌ๋ ๋๋ฆฌ ์ฌ์ฉ๋๋ ์์ฐ์ด ๋ถ์ ์์คํ ์ค ํ๋๋ฅผ IntelliJ IDEA์ ํตํฉํ๊ธฐ๋ก ๊ฒฐ์ ํ์ต๋๋ค.
ะ ะตะฐะปะธะทะฐัะธั
์ฐ๋ฆฌ๋ ์์ฒด ํ
์คํธ ํ์ธ ์์คํ
์ ๋ง๋๋ ์์
์ ์ค์ค๋ก ์ค์ ํ์ง ์์๊ธฐ ๋๋ฌธ์ ๊ธฐ์กด ์๋ฃจ์
์ ์ฌ์ฉํ์ต๋๋ค. ๊ฐ์ฅ ์ ํฉํ ์ต์
์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
ํ๋ฌ๊ทธ์ธ ์ฝ๋๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
๋์ด๋
์ฐ๋ฆฌ๋ ๋งค๋ฒ ๊ฒ์ฌ๋ฅผ ์ํด ๋ชจ๋ ํ ์คํธ๋ฅผ LanguageTool์ ๊ณต๊ธํ๋ฉด ๊ฒ์ฌ ์์ฒด๊ฐ UI ํ๋ฆ์ ์ฐจ๋จํ๊ธฐ ๋๋ฌธ์ IDEA ์ธํฐํ์ด์ค๊ฐ ๋ค์ ์ฌ๊ฐํ ํ ์คํธ์์ ์ ์ง๋๋ค๋ ๊ฒ์ ์์ฃผ ๋นจ๋ฆฌ ๊นจ๋ฌ์์ต๋๋ค. ๋ฌธ์ ๋ `ProgressManager.checkCancelled` ๊ฒ์ฌ๋ฅผ ํตํด ํด๊ฒฐ๋์์ต๋๋ค. IDEA๊ฐ ๊ฒ์ฌ๋ฅผ ์ค๋จํ ์๊ฐ์ด๋ผ๊ณ ํ๋จํ๋ฉด ์ด ํจ์๋ ์์ธ๋ฅผ ๋ฐ์์ํต๋๋ค.
์ด๋ก ์ธํด ์ ์ง ํ์์ด ์์ ํ ์ ๊ฑฐ๋์์ง๋ง ์ฌ์ฉํ ์ ์์ต๋๋ค. ํ ์คํธ๋ฅผ ์ฒ๋ฆฌํ๋ ๋ฐ ๋งค์ฐ ์ค๋ ์๊ฐ์ด ๊ฑธ๋ฆฝ๋๋ค. ๋์ฑ์ด ์ฐ๋ฆฌ์ ๊ฒฝ์ฐ ํ ์คํธ์ ๋งค์ฐ ์์ ๋ถ๋ถ์ด ๋ณ๊ฒฝ๋๋ ๊ฒฝ์ฐ๊ฐ ๊ฐ์ฅ ๋ง์ผ๋ฉฐ ์ด๋ป๊ฒ๋ ๊ฒฐ๊ณผ๋ฅผ ์บ์ํ๋ ค๊ณ ํฉ๋๋ค. ๊ทธ๊ฒ์ด ๋ฐ๋ก ์ฐ๋ฆฌ๊ฐ ํ ์ผ์ ๋๋ค. ๋งค๋ฒ ๋ชจ๋ ๊ฒ์ ํ์ธํ์ง ์๊ธฐ ์ํด ๊ฒฐ์ ๋ก ์ ์ผ๋ก ํ ์คํธ๋ฅผ ์กฐ๊ฐ์ผ๋ก ๋๋๊ณ ๋ณ๊ฒฝ๋ ๋ถ๋ถ๋ง ํ์ธํ์ต๋๋ค. ํ ์คํธ๊ฐ ํด ์ ์๊ณ ์บ์๋ฅผ ๋ก๋ํ๊ณ ์ถ์ง ์์๊ธฐ ๋๋ฌธ์ ํ ์คํธ ์์ฒด๊ฐ ์๋ ํด์๋ฅผ ์ ์ฅํ์ต๋๋ค. ์ด๋ฅผ ํตํด ๋์ฉ๋ ํ์ผ์์๋ ํ๋ฌ๊ทธ์ธ์ด ์ํํ๊ฒ ์๋ํ ์ ์์์ต๋๋ค.
LanguageTool์ 25๊ฐ ์ด์์ ์ธ์ด๋ฅผ ์ง์ํ์ง๋ง ํ ์ฌ์ฉ์๊ฐ ๋ชจ๋ ์ธ์ด๋ฅผ ํ์๋ก ํ๋ ๊ฒฝ์ฐ๋ ๊ฑฐ์ ์์ต๋๋ค. ์์ฒญ ์(UI์์ ์ ํํ ๊ฒฝ์ฐ) ํน์ ์ธ์ด์ ๋ํ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ๋ค์ด๋ก๋ํ ์ ์๋ ๊ธฐํ๋ฅผ ์ ๊ณตํ๊ณ ์ถ์์ต๋๋ค. ์ฐ๋ฆฌ๋ ์ด๊ฒ์ ๊ตฌํํ๊ธฐ๋ ํ์ง๋ง ๋๋ฌด ๋ณต์กํ๊ณ ์ ๋ขฐํ ์ ์๋ ๊ฒ์ผ๋ก ๋ํ๋ฌ์ต๋๋ค. ํนํ, ๋ณ๋์ ํด๋์ค๋ก๋๋ฅผ ์ฌ์ฉํ์ฌ ์๋ก์ด ์ธ์ด ์ธํธ๋ก LanguageTool์ ๋ก๋ํ ๋ค์ ์กฐ์ฌ์ค๋ฝ๊ฒ ์ด๊ธฐํํด์ผ ํ์ต๋๋ค. ๋์์ ๋ชจ๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ ์ฌ์ฉ์ .m2 ์ ์ฅ์์ ์์๊ณ ์์ํ ๋๋ง๋ค ๋ฌด๊ฒฐ์ฑ์ ํ์ธํด์ผ ํ์ต๋๋ค. ๊ฒฐ๊ตญ ์ฐ๋ฆฌ๋ ์ฌ์ฉ์๊ฐ ํ๋ฌ๊ทธ์ธ ํฌ๊ธฐ์ ๋ฌธ์ ๊ฐ ์๋ ๊ฒฝ์ฐ ๊ฐ์ฅ ๋๋ฆฌ ์ฌ์ฉ๋๋ ์ฌ๋ฌ ์ธ์ด์ ๋ํด ๋ณ๋์ ํ๋ฌ๊ทธ์ธ์ ์ ๊ณตํ๊ธฐ๋ก ๊ฒฐ์ ํ์ต๋๋ค.
ํด์ปคํค ์ดํ
ํด์ปคํค์ ์ข ๋ฃ๋์์ง๋ง ์๊ท๋ชจ ํ์ ๋์์ผ๋ก ํ๋ฌ๊ทธ์ธ ์์ ์ด ๊ณ์๋์์ต๋๋ค. ์ ๋ ๋ฌธ์์ด, ์ฃผ์, ์ฌ์ง์ด ๋ณ์ ๋ฐ ํด๋์ค ์ด๋ฆ๊ณผ ๊ฐ์ ์ธ์ด ๊ตฌ์ฑ๋ ์ง์ํ๊ณ ์ถ์์ต๋๋ค. ํ์ฌ ์ด๋ Java, Kotlin, Python์์๋ง ์ง์๋์ง๋ง ์ด ๋ชฉ๋ก์ด ๋ ๋ง์์ง๊ธฐ๋ฅผ ๋ฐ๋๋๋ค. ๋ง์ ์์ ๋ฒ๊ทธ๋ฅผ ์์ ํ์ผ๋ฉฐ Idea์ ๋ด์ฅ๋ ๋ง์ถค๋ฒ ๊ฒ์ฌ๊ธฐ์์ ํธํ์ฑ์ด ๋์ฑ ํฅ์๋์์ต๋๋ค. ๋ํ XML ์ง์๊ณผ ๋ง์ถค๋ฒ ๊ฒ์ฌ๋ ๋ํ๋ฌ์ต๋๋ค. ์ด ๋ชจ๋ ๋ด์ฉ์ ์ต๊ทผ์ ๊ฒ์๋ ๋ ๋ฒ์งธ ๋ฒ์ ์์ ํ์ธํ ์ ์์ต๋๋ค.
๋ค์์ ๋ญ์ง?
์ด๋ฌํ ํ๋ฌ๊ทธ์ธ์ ๊ฐ๋ฐ์๋ฟ๋ง ์๋๋ผ ๊ธฐ์ ์์ฑ์(์๋ฅผ ๋ค์ด IDE์์ XML์ ์ฌ์ฉํ์ฌ ์์
ํ๋ ๊ฒฝ์ฐ๊ฐ ๋ง์)์๊ฒ๋ ์ ์ฉํ ์ ์์ต๋๋ค. ๋งค์ผ ๊ทธ๋ค์ ๊ฐ๋ฅํ ์ค๋ฅ์ ๋ํ ํธ์ง์ ํ ํํ์ ๋ณด์กฐ์ ์์ด ์์ฐ์ด๋ก ์์
ํด์ผ ํฉ๋๋ค. ์ฐ๋ฆฌ ํ๋ฌ๊ทธ์ธ์ ์ด๋ฌํ ํํธ๋ฅผ ์ ๊ณตํ๋ฉฐ ๋์ ์ ํ๋๋ก ์ด๋ฅผ ์ํํฉ๋๋ค.
์ฐ๋ฆฌ๋ ์๋ก์ด ์ธ์ด๋ฅผ ์ถ๊ฐํ๊ณ ํ
์คํธ ๊ฒ์ฌ๋ฅผ ๊ตฌ์ฑํ๋ ์ผ๋ฐ์ ์ธ ์ ๊ทผ ๋ฐฉ์์ ํ์ํ์ฌ ํ๋ฌ๊ทธ์ธ์ ๊ฐ๋ฐํ ๊ณํ์
๋๋ค. ์ฐ๋ฆฌ์ ์ฆ๊ฐ์ ์ธ ๊ณํ์๋ ์คํ์ผ ํ๋กํ(ํ
์คํธ์ ๋ํ ์คํ์ผ ๊ฐ์ด๋๋ฅผ ์ ์ํ๋ ๊ท์น ์ธํธ, ์๋ฅผ ๋ค์ด "์๋ฅผ ๋ค์ด ์ฐ์ง ๋ง๊ณ ์ ์ฒด ํ์์ ์์ฑํ์ญ์์ค")์ ๊ตฌํ, ์ฌ์ ํ์ฅ ๋ฐ ์ฌ์ฉ์ ์ธํฐํ์ด์ค ๊ฐ์ (ํนํ, ์ฐ๋ฆฌ๋ ์ฌ์ฉ์์๊ฒ ๋จ์ด๋ฅผ ๋ฌด์ํ ๋ฟ๋ง ์๋๋ผ ๋จ์ด๋ฅผ ์ฌ์ ์ ์ถ๊ฐํ์ฌ ํ์ฌ๋ฅผ ํ์ํ ์ ์๋ ๊ธฐํ๋ฅผ ์ ๊ณตํ๊ณ ์ถ์ต๋๋ค.
์ถ์ฒ: www.habr.com