Qt ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ฌ์ฉํ์ฌ ํฌ๋ก์ค ํ๋ซํผ ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ง๋ค๋๋ก ์ค๊ณ๋ Qt Creator 9.0 ํตํฉ ๊ฐ๋ฐ ํ๊ฒฝ์ ๋ฆด๋ฆฌ์ค๊ฐ ๊ฒ์๋์์ต๋๋ค. ๊ณ ์ ์ ์ธ C++ ํ๋ก๊ทธ๋จ์ ๊ฐ๋ฐ๊ณผ QML ์ธ์ด์ ์ฌ์ฉ์ด ๋ชจ๋ ์ง์๋๋ฉฐ JavaScript๋ ์คํฌ๋ฆฝํธ๋ฅผ ์ ์ํ๋ ๋ฐ ์ฌ์ฉ๋๋ฉฐ ์ธํฐํ์ด์ค ์์์ ๊ตฌ์กฐ์ ๋งค๊ฐ๋ณ์๋ CSS์ ์ ์ฌํ ๋ธ๋ก์ผ๋ก ์ค์ ๋ฉ๋๋ค. ์ค๋น๋ ์ด์ ๋ธ๋ฆฌ๋ Linux, Windows ๋ฐ macOS์ฉ์ผ๋ก ๊ตฌ์ฑ๋ฉ๋๋ค.
์ ๋ฒ์ ์์:
- Squish GUI ํ ์คํธ ํ๋ ์์ํฌ์ ๋ํ ์คํ์ ์ง์์ด ์ถ๊ฐ๋์์ต๋๋ค. Squish ํตํฉ ํ๋ฌ๊ทธ์ธ์ ์ฌ์ฉํ๋ฉด ๊ธฐ์กด ํ ์คํธ ์ผ์ด์ค๋ฅผ ์ด๊ณ ์ ํ ์คํธ ์ผ์ด์ค๋ฅผ ์์ฑํ๊ณ , ํ ์คํธ ์ผ์ด์ค(ํ ์คํธ ์ผ์ด์ค)๋ฅผ ๊ธฐ๋กํ๊ณ , Squish Runner ๋ฐ Squish ์๋ฒ๋ฅผ ์ฌ์ฉํ์ฌ ํ ์คํธ ์ผ์ด์ค ๋ฐ ํ ์คํธ ์ผ์ด์ค๋ฅผ ์คํํ๊ณ , ํ ์คํธ๋ฅผ ์คํํ๊ธฐ ์ ์ ์ค๋จ์ ์ ์ค์ ํ์ฌ ์ฃผ์ด์ง ์์น์์ ์คํ์ ์ค๋จํ๊ณ ๋ณ์๋ฅผ ๊ฒ์ฌํฉ๋๋ค.
- ๊ธฐ๋ณธ ์ ๊ณต ๋์๋ง ๋ฐ ์ค๋ช ์๋ฅผ ํ์ํ ๋ ์ด๋์ด ํ ๋ง์ ๋ํ ์ง์์ด ์ถ๊ฐ๋์์ต๋๋ค.
- API ์ปจํ ์คํธ ํํธ๋ฅผ ํ์ํ ๋ ์ด์ ํ๋ก์ ํธ์ ํ์๋ Qt ๋ฒ์ ์ ๊ณ ๋ คํ์ฌ ์ฝํ ์ธ ๊ฐ ์์ฑ๋ฉ๋๋ค(์ฆ, Qt 5 ํ๋ก์ ํธ์ ๊ฒฝ์ฐ Qt 5 ์ค๋ช ์๊ฐ ํ์๋๊ณ Qt 6 ํ๋ก์ ํธ์ ๊ฒฝ์ฐ Qt 6 ์ค๋ช ์๊ฐ ํ์๋ฉ๋๋ค.
- ๋ฌธ์์์ ๋ค์ฌ์ฐ๊ธฐ๋ฅผ ๋ ๋๋งํ๋ ์ต์
์ด ํธ์ง๊ธฐ์ ์ถ๊ฐ๋์์ต๋๋ค. ๊ฐ ๋ค์ฌ์ฐ๊ธฐ๋ ๋ณ๋์ ์ธ๋ก ๋ง๋๋ก ํ์๋ฉ๋๋ค. ๋ํ ๋งค์ฐ ํฐ ๋ธ๋ก์ ์ ํํ ๋ ์ค ๊ฐ๊ฒฉ์ ๋ณ๊ฒฝํ๊ณ ์ฑ๋ฅ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ ๊ธฐ๋ฅ์ ์ถ๊ฐํ์ต๋๋ค.
- LSP(Language Server Protocol) ํ๋กํ ์ฝ์ ์ง์ํ๋ Clangd ๋ฐฑ์๋ ๊ธฐ๋ฐ์ C++ ์ฝ๋ ๋ชจ๋ธ์ ์ด์ ์ ์ฒด ์ธ์ ์ ๋ํด ํ๋์ Clangd ์ธ์คํด์ค๋ก ๊ด๋ฆฌํ ์ ์์ต๋๋ค(์ด์ ์๋ ๊ฐ ํ๋ก์ ํธ๊ฐ ์์ฒด Clangd ์ธ์คํด์ค๋ฅผ ์คํํ์ต๋๋ค). ์ธ๋ฑ์ฑ์ ์ฌ์ฉ๋๋ Clangd ๋ฐฑ๊ทธ๋ผ์ด๋ ์ค๋ ๋์ ์ฐ์ ์์๋ฅผ ๋ณ๊ฒฝํ๋ ๊ธฐ๋ฅ์ด ์ค์ ์ ์ถ๊ฐ๋์์ต๋๋ค.
- ์ด์ ๋ณ๋์ ๋ํ ์์๋ฅผ ์ด์ง ์๊ณ ๊ธฐ๋ณธ ์ค์ ๋ํ ์์์์ ์ง์ C++ ์ฝ๋ ์คํ์ผ ๋งค๊ฐ๋ณ์๋ฅผ ํธ์งํ ์ ์์ต๋๋ค. ClangFormat ์ค์ ์ ๊ฐ์ ์น์ ์ผ๋ก ์ด๋ํ์ต๋๋ค.
- ์์ค ๋๋ ํฐ๋ฆฌ ๋์ ๋น๋ ๋๋ ํฐ๋ฆฌ์์ QML ํ์ผ์ ์ฌ๋ ๋ฌธ์ ์ ์ฌํฌ๋งท ๊ธฐ๋ฅ์ ์ฌ์ฉํ ๋ ์ค๋จ์ ์ด ์์ค๋๋ ๋ฌธ์ ๊ฐ ํด๊ฒฐ๋์์ต๋๋ค.
- CMake ํ๋ก์ ํธ์ ๋ํ ์ฌ์ ์ค์ ๊ตฌ์ฑ ๋ฐ ๋น๋์ ๋ํ ์ง์์ด ์ถ๊ฐ๋์์ต๋๋ค.
์ถ์ฒ : opennet.ru