MVC ํจ๋ฌ๋ค์๊ณผ ๋ฐ์ดํฐ ๋ชจ๋ธ์ ์ค์์ฑ์ ๋ํ ์ฒ ํ์ ์ฌ์ฉํ์ฌ GTK 0.8.0 ๋ฐ GTK 3์ฉ ์ธํฐํ์ด์ค์ ์ ์ํ ๊ฐ๋ฐ์ ์ํ ๋๊ตฌ๋ฅผ ๊ฐ๋ฐํ๋ Cambalache 4 ํ๋ก์ ํธ ๋ฆด๋ฆฌ์ค๊ฐ ๋ฐํ๋์์ต๋๋ค. Glade์ ๋ฌ๋ฆฌ Cambalache๋ ํ๋์ ํ๋ก์ ํธ์์ ์ฌ๋ฌ ์ฌ์ฉ์ ์ธํฐํ์ด์ค๋ฅผ ์ ์ง ๊ด๋ฆฌํ๊ธฐ ์ํ ์ง์์ ์ ๊ณตํฉ๋๋ค. ๊ธฐ๋ฅ๋ฉด์์ Cambalache 0.8.0์ ์ถ์๋ Glade์ ๊ฑฐ์ ๋๋ฑํ๋ค๊ณ ์๋ ค์ ธ ์์ต๋๋ค. ์ฝ๋๋ Python์ผ๋ก ์์ฑ๋์์ผ๋ฉฐ GPLv2์ ๋ฐ๋ผ ๋ผ์ด์ผ์ค๊ฐ ๋ถ์ฌ๋ฉ๋๋ค.
Cambalache๋ GtkBuilder ๋ฐ GObject์ ๋ ๋ฆฝ์ ์ด์ง๋ง GObject ์ ํ ์์คํ ๊ณผ ์ผ๊ด๋ ๋ฐ์ดํฐ ๋ชจ๋ธ์ ์ ๊ณตํฉ๋๋ค. ๋ฐ์ดํฐ ๋ชจ๋ธ์ ํ ๋ฒ์ ์ฌ๋ฌ ์ธํฐํ์ด์ค๋ฅผ ๊ฐ์ ธ์ค๊ฑฐ๋ ๋ด๋ณด๋ผ ์ ์๊ณ GtkBuilder ๊ฐ์ฒด, ์์ฑ ๋ฐ ์ ํธ๋ฅผ ์ง์ํ๊ณ ์คํ ์ทจ์ ์คํ(์คํ ์ทจ์/๋ค์ ์คํ) ๋ฐ ๋ช ๋ น ๊ธฐ๋ก์ ์์ถํ๋ ๊ธฐ๋ฅ์ ์ ๊ณตํฉ๋๋ค. cambalache-db ์ ํธ๋ฆฌํฐ๋ gir ํ์ผ์์ ๋ฐ์ดํฐ ๋ชจ๋ธ์ ์์ฑํ๊ธฐ ์ํด ์ ๊ณต๋๊ณ , db-codegen ์ ํธ๋ฆฌํฐ๋ ๋ฐ์ดํฐ ๋ชจ๋ธ ํ ์ด๋ธ์์ GObject ํด๋์ค๋ฅผ ์์ฑํ๊ธฐ ์ํด ์ ๊ณต๋ฉ๋๋ค.
์ธํฐํ์ด์ค๋ ํ๋ก์ ํธ์ ์ ์๋ ๋ฒ์ ์ ๋ฐ๋ผ GTK 3 ๋ฐ GTK 4๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์์ฑ๋ ์ ์์ต๋๋ค. GTK์ ๋ค์ํ ๋ถ๊ธฐ์ ๋ํ ์ง์์ ์ ๊ณตํ๊ธฐ ์ํด ์น ๋ธ๋ผ์ฐ์ ์ฐฝ์์ GTK ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ ์ถ๋ ฅ์ ๋ ๋๋งํ ์ ์๋ Broadway ๋ฐฑ์๋๋ฅผ ์ฌ์ฉํ์ฌ ์์ ๊ณต๊ฐ์ด ์์ฑ๋ฉ๋๋ค. ๊ธฐ๋ณธ Cambalache ํ๋ก์ธ์ค๋ Broadway๋ฅผ ์ฌ์ฉํ์ฌ ์ฌ์ฉ์ ์ธํฐํ์ด์ค ๋ ๋๋ง์ ์ง์ ๊ด์ฌํ๋ Merengue ํ๋ก์ธ์ค์ ์ถ๋ ฅ์ ๋ธ๋ก๋์บ์คํธํ๋ WebKit WebView ๊ธฐ๋ฐ ํ๋ ์์ํฌ๋ฅผ ์ ๊ณตํฉ๋๋ค.
์ ๋ฆด๋ฆฌ์ค์์:
- ๊ฐ์ฒด ํด๋์ค๋ฅผ ๋ถ๋ฅํ๊ณ ํ์ํ ์ ๋ณด๋ฅผ ๋ ์ฝ๊ฒ ์ฐพ์ ์ ์๋ ๋ํํ ๊ฐ์ฒด ์ ํ ํจ๋์ด ์ถ๊ฐ๋์์ต๋๋ค.
- ์ง์ ๋ ์์น์ ํ์ ์์๋ฅผ ๋ ์ฝ๊ฒ ์ถ๊ฐํ ์ ์๋๋ก ์์
๊ณต๊ฐ ์๋ฆฌ ํ์์๋ฅผ ๊ตฌํํ์ต๋๋ค. ์์ ฏ์ ๋ ๋ฒ ํด๋ฆญํ๋ฉด ์๋ฆฌ ํ์์ ๋์ ์์ ฏ์ ์ถ๊ฐํ ์ ์์ต๋๋ค.
- ๋ฒ์ญ ๊ฐ๋ฅํ ์์ฑ์ ๋ํ ์ง์์ด ์ ๊ณต๋์์ผ๋ฉฐ ๋ฒ์ญ์๋ฅผ ์ํ ๋๊ธ์ ๋จ๊ธธ ์ ์๋ ๊ธฐ๋ฅ์ด ๊ตฌํ๋์์ต๋๋ค.
- ํด๋ฆฝ๋ณด๋ ์์
์ ๋ํ ์ง์์ด ์ถ๊ฐ๋์์ต๋๋ค(๋ณต์ฌ, ๋ถ์ฌ๋ฃ๊ธฐ, ์๋ผ๋ด๊ธฐ ๋ฐ ์ญ์ ).
- UI ํ์ผ์ ๊ฐ์ ธ์ค๊ฑฐ๋ ๋ค๋ฅธ ํ์ผ๋ก ๋ด๋ณด๋ผ ๋ ์ง์๋์ง ์๋ ๊ธฐ๋ฅ์ ๋ํ ์ ๋ณด ํ์๊ฐ ๊ฐ์ ๋์์ต๋๋ค.
์ถ์ฒ : opennet.ru