๋ณธ๋ฌธ์œผ๋กœ ์ด๋™

wxWidgets

์œ„ํ‚ค๋ฐฑ๊ณผ, ์šฐ๋ฆฌ ๋ชจ๋‘์˜ ๋ฐฑ๊ณผ์‚ฌ์ „.

wxWidgets
๊ฐœ๋ฐœ์žwxWidgets ๊ฐœ๋ฐœ์ž ๋ฐ ๊ณตํ—Œ์ž
๋ฐœํ‘œ์ผ1992๋…„(34๋…„ ์ „)(1992)[1]
์•ˆ์ •ํ™” ๋ฒ„์ „
3.2.11
  / 2026๋…„ 7์›” 7์ผ(3๊ฐœ์›” ์ „)(2026-07-07)
[2]
์ €์žฅ์†Œ
ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ดC++
์šด์˜ ์ฒด์ œํฌ๋กœ์Šค ํ”Œ๋žซํผ
์ข…๋ฅ˜๊ฐœ๋ฐœ์šฉ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ
๋ผ์ด์„ ์ŠคwxWindows ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๋ผ์ด์„ ์Šค
์ƒํƒœ๊ฐœ๋ฐœ ์ค‘
์›น์‚ฌ์ดํŠธwww.wxwidgets.org

wxWidgets (์ด์ „ ์ด๋ฆ„: wxWindows)๋Š” ํฌ๋กœ์Šค ํ”Œ๋žซํผ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์„ ์œ„ํ•œ ๊ทธ๋ž˜ํ”ฝ ์‚ฌ์šฉ์ž ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ๋งŒ๋“ค์–ด ์ฃผ๋Š” ์œ„์ ฏ ํˆดํ‚ท์ด๋‹ค. wxWidgets๋Š” ํŠน๋ณ„ํ•œ ์ฝ”๋“œ ๋ณ€๊ฒฝ ์—†์ด๋„ ํ”„๋กœ๊ทธ๋žจ์˜ GUI ์ฝ”๋“œ๋ฅผ ์—ฌ๋Ÿฌ ์ปดํ“จํ„ฐ์˜ ์šด์˜ ์ฒด์ œ์—์„œ ์ปดํŒŒ์ผํ•˜๊ณ  ๋™์ž‘ํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋„์™€ ์ค€๋‹ค. ๋งˆ์ดํฌ๋กœ์†Œํ”„ํŠธ ์œˆ๋„์šฐ, OS X, ๋ฆฌ๋ˆ…์Šค/์œ ๋‹‰์Šค (X11, ๋ชจํ‹ฐํ”„, GTK+), ์˜คํ”ˆVMS, OS/2, ์•„๋ฏธ๊ฐ€OS์™€ ๊ฐ™์€ ์šด์˜ ์ฒด์ œ๋ฅผ ์ง€์›ํ•œ๋‹ค. ์ž„๋ฒ ๋””๋“œ ์‹œ์Šคํ…œ์„ ์œ„ํ•œ ๋ฒ„์ „์€ ํ˜„์žฌ ๊ฐœ๋ฐœ ์ค‘์ด๋‹ค.[3]

์—ญ์‚ฌ

[ํŽธ์ง‘]

wxWidgets(์›๋ž˜๋Š” wxWindows)๋Š” 1992๋…„์— ์—๋“ ๋ฒ„๋Ÿฌ ๋Œ€ํ•™๊ต์˜ ์ค„๋ฆฌ์•ˆ ์Šค๋งˆํŠธ(Julian Smart)๊ฐ€ ์‹œ์ž‘ํ•˜์˜€๋‹ค.[4] ๊ทธ๋Š” 1986๋…„์— ์„ธ์ธํŠธ์•ค๋“œ๋ฃจ์Šค ๋Œ€ํ•™๊ต๋กœ๋ถ€ํ„ฐ ๊ณ„์‚ฐ๊ณผํ•™ ๋Œ€ํ•™ ์šฐ๋“ฑ ์ฝ”์Šค ์กธ์—… ํ•™์œ„๋ฅผ ๋ฐ›์•˜๊ณ  ์ง€๊ธˆ๋„ ํ•ต์‹ฌ ๊ฐœ๋ฐœ์ž์ด๋‹ค.[5][6]

2004๋…„ 2์›” 20์ผ์— wxWindows์˜ ๊ฐœ๋ฐœ์ž๋“ค์€ ํ”„๋กœ์ ํŠธ ์ด๋ฆ„์„ wxWidgets๋กœ ๋ฐ”๊พธ๊ณ  ์žˆ๋‹ค๊ณ  ์–ธ๊ธ‰ํ•˜์˜€๋‹ค. ๊ทธ ๊นŒ๋‹ญ์€ ๋งˆ์ดํฌ๋กœ์†Œํ”„ํŠธ์‚ฌ๊ฐ€ ์ค„๋ฆฌ์•ˆ ์Šค๋งˆํŠธ์—๊ฒŒ "Windows"๋ผ๋Š” ๋งˆ์ดํฌ๋กœ์†Œํ”„ํŠธ์˜ ์˜๊ตญ ์ƒํ‘œ๋ฅผ ์กด์ค‘ํ•ด ๋‹ฌ๋ผ๋Š” ์š”์ฒญ์„ ํ•˜์˜€๊ธฐ ๋•Œ๋ฌธ์ด์—ˆ๋‹ค.[7] 2003๋…„ 6์›” 9์ผ์— ์ฃผ๋œ ๊ณต๊ฐœ ๋ฒ„์ „์ด 2.4์ด์—ˆ์œผ๋ฉฐ 2005๋…„ 4์›” 23์ผ์—๋Š” 2.6, 2006๋…„ 12์›” 14์ผ์—๋Š” 2.80์ด์—ˆ๋‹ค.

๋ผ์ด์„ ์Šค

[ํŽธ์ง‘]

wxWidgets๋Š” GNU ์•ฝ์†Œ ์ผ๋ฐ˜ ๊ณต์ค‘ ์‚ฌ์šฉ ํ—ˆ๊ฐ€์„œ์™€ ๋น„์Šทํ•œ ๋งž์ถค์‹ ๋ผ์ด์„ ์Šค๋กœ ๋ฐฐํฌ๋œ๋‹ค. ์ด๋ฅผํ…Œ๋ฉด ์ผ๋ฐ˜์ ์ธ GNU ํ—ˆ๊ฐ€์„œ์—์„œ ๋ช…์‹œ๋œ ๋ฐ”์™€ ๋‹ฌ๋ฆฌ wxWidgets๋ฅผ ํ†ตํ•ด ๋งŒ๋“  ์ด์ง„ ํ˜•ํƒœ์˜ ์ž‘ํ’ˆ์€ ์‚ฌ์šฉ์ž๊ฐ€ ์†Œ์Šค๋ฅผ ๊ณต๊ฐœํ•ด๋„ ๋˜๊ณ  ๊ณต๊ฐœํ•˜์ง€ ์•Š์•„๋„ ๋œ๋‹ค. ์ด ๋ผ์ด์„ ์Šค๋Š” ์ž์œ  ์†Œํ”„ํŠธ์›จ์–ด ๋ผ์ด์„ ์Šค์ด๋ฏ€๋กœ wxWidgets๋Š” ์ž์œ  ์†Œํ”„ํŠธ์›จ์–ด๊ฐ€ ๋œ๋‹ค.[8]

๊ธฐ๋Šฅ

[ํŽธ์ง‘]

wxWidgets ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋Š” ํ”ํžˆ ์“ฐ์ด๋Š” ์ˆ˜๋งŽ์€ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด์— ์ด์šฉํ•  ์ˆ˜ ์žˆ๋Š” ์–ธ์–ด ๊ฒฐํ•ฉ๊ณผ ๋”๋ถˆ์–ด C++๋กœ ์ถ”๊ฐ€๋˜์—ˆ๋‹ค. ์ง€์›ํ•˜๋Š” ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด๋กœ๋Š” ์ด๋ฅผํ…Œ๋ฉด ํŒŒ์ด์ฌ (wxPython), ์–ผ๋žญ (wxErlang), ํ•˜์Šค์ผˆ (wxHaskell), Tcl (wxTCL), ๋ฃจ์•„ (wxLua), ํŽ„ (wxPerl), ๋ฃจ๋น„ (wxRuby), ์Šค๋ชฐํ† ํฌ (wxSqueak), ์ปค๋จผ ๋ฆฌ์Šคํ”„ (wxCL), ๋ฒ ์ด์ง (wxBasic), C (wxC), D (wxD), ์œ ํฌ๋ฆฌ์•„ (wxEuphoria), ๋‹ท๋„ท ํ”„๋ ˆ์ž„์›Œํฌ (wx.NET), ์ž๋ฐ” (wx4j), ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ (wxJavaScript ๋ณด๊ด€๋จ 2010-05-16 - ์›จ์ด๋ฐฑ ๋จธ์‹  / GLUEScript) ๋“ฑ์ด ์žˆ๋‹ค. ์™„์ „ํ•œ ๋ชฉ๋ก์„ ๋ณด๋ ค๋ฉด, ์ด ๋ฌธ์„œ ๋์— ๋ณด์ด๋Š” ์™ธ๋ถ€ ๋งํฌ ์ฐธ์กฐ๋ฅผ ํ†ตํ•˜์—ฌ ๊ฐ ํ”„๋กœ์ ํŠธ ์‚ฌ์ดํŠธ์˜ ๋งํฌ๋กœ ๋“ค์–ด๊ฐ€๋ฉด ๋œ๋‹ค. 1995๋…„์— ๋งŒ๋“  wxWindows (๋ฒ„์ „ 1)์˜ ๋น„ํ˜ธํ™˜ ๋ถ„๊ธฐ๋ฅผ ์ด์šฉํ•˜๋Š” ๋ผ์ผ“๋„ ์žˆ๋‹ค. ์ด ํˆดํ‚ท์€ ๋‹จ์ˆœํžˆ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๋ฐ”์ธ๋”ฉ์„ ์ œ๊ณตํ•˜๋Š” ๋‹ค๋ฅธ ์–ธ์–ด์™€๋Š” ๋‹ฌ๋ฆฌ ์–ธ์–ด ๋Ÿฐํƒ€์ž„ (์“ฐ๋ ˆ๊ธฐ ์ˆ˜์ง‘, ์ž์› ๊ด€๋ฆฌ)์— ํ†ตํ•ฉ๋˜์–ด ์žˆ๋‹ค.

wxWidgets๋Š” ๋„ค์ดํ‹ฐ๋ธŒ ๋ชจ๋“œ ํˆดํ‚ท์œผ๋กœ ์ž˜ ์•Œ๋ ค์ ธ ์žˆ๋Š”๋ฐ ์ด๋Š” ์›์‹œ ๊ทธ๋ž˜ํ”ฝ์„ ์ด์šฉํ•˜์—ฌ ์œ„์ ฏ ํ‘œํ˜„์„ ๋”ฐ๋ผํ•˜์ง€ ์•Š๊ณ  ์–‡์€ ์ถ”์ƒํ™”(thin abstraction)๋ฅผ ํ”Œ๋žซํผ์˜ ๋„ค์ดํ‹ฐ๋ธŒ ์œ„์ ฏ์— ์ œ๊ณตํ•˜๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค. ๋Œ€์ƒ ํ”Œ๋žซํผ์— ์ด๋Ÿฌํ•œ ๋„ค์ดํ‹ฐ๋ธŒ ์œ„์ ฏ์„ ์ด์šฉํ•˜๋ฉด ์Šค์œ™ (์ž๋ฐ”์˜ ๊ฒฝ์šฐ)๊ณผ ๊ฐ™์€ ๋„๊ตฌํ‚ท๋ณด๋‹ค ๋” ๋„ค์ดํ‹ฐ๋ธŒํ•˜๊ฒŒ ๋ณด์ด๋Š” ์ธํ„ฐํŽ˜์ด์Šค๋ฟ ์•„๋‹ˆ๋ผ ์„ฑ๋Šฅ ํ–ฅ์ƒ๊ณผ ๋‹ค๋ฅธ ์ด์ ๋„ ์ œ๊ณตํ•œ๋‹ค.[9]

์ด ๋„๊ตฌํ‚ท์€ GUI ๊ฐœ๋ฐœ์—๋งŒ ๊ตญํ•œ๋˜์ง€ ์•Š์œผ๋ฉฐ ํ”„๋กœ์„ธ์Šค ๊ฐ„ ํ†ต์‹  ๊ณ„์ธต, ์†Œ์ผ“ ๋„คํŠธ์›Œํ‚น ๊ธฐ๋Šฅ ๋“ฑ๋„ ๋‚ด์žฅํ•˜๊ณ  ์žˆ๋‹ค.

๊ณต์‹ ์ง€์›

[ํŽธ์ง‘]

์ง€์› ํ”Œ๋žซํผ

[ํŽธ์ง‘]

wxWidgets๋Š” ๋‹ค์Œ ํ”Œ๋žซํผ์„ ์ง€์›ํ•œ๋‹ค[10]

  • ์œˆ๋„์šฐ - wxMSW (์œˆ๋„์šฐ 95/98/ME, NT, 2000, XP, ๋น„์Šคํƒ€)
  • ๋ฆฌ๋ˆ…์Šค/์œ ๋‹‰์Šค wxGTK+, wxX11, wxMotif
  • OS X - wxMac (10.3, ์นด๋ณธ์„ ์ด์šฉ)
  • OS/2 - wxOS2, wxPM, wxWidgets for GTK+, Motif๋Š” OS/2์—์„œ ์ปดํŒŒ์ผ ๊ฐ€๋Šฅ
  • ์ž„๋ฒ ๋””๋“œ ํ”Œ๋žซํผ - wxEmbedded[3]

์™ธ๋ถ€ ํฌํŒ…

[ํŽธ์ง‘]
  • ์•„๋ฏธ๊ฐ€ - wxWidgets-AOS: AmigaOS port[11]

์ง€์› ์ปดํŒŒ์ผ๋Ÿฌ

[ํŽธ์ง‘]

wxWidgets๋Š” ๊ณต์‹์ ์œผ๋กœ ๋‹ค์Œ ์ปดํŒŒ์ผ๋Ÿฌ์™€ ์ •์ƒ ๋™์ž‘ํ•จ์ด ํ™•์ธ๋˜์—ˆ๋‹ค.[12]

wxMSW wxGTK
์ปดํŒŒ์ผ๋Ÿฌ ๋ฒ„์ „ ์ปดํŒŒ์ผ๋Ÿฌ ๋ฒ„์ „
๋งˆ์ดํฌ๋กœ์†Œํ”„ํŠธ ๋น„์ฃผ์–ผ ์ŠคํŠœ๋””์˜ค - ๋น„์ฃผ์–ผ C++
๋ณผ๋žœ๋“œ C++
๋ณผ๋žœ๋“œ C++ ๋นŒ๋”
์™“์ฝค C++, ์˜คํ”ˆ์™“์ฝค
์ฝ”๋“œ์›Œ๋ฆฌ์–ด
์‹œ๊ทธ์œˆ
MinGW
๋””์ง€ํ„ธ ๋งˆ์Šค C/C++ ์ปดํŒŒ์ผ๋Ÿฌ
5.0 +
5.5 +
2006 +
10.6 +
7 +
1.5 +
2.0 +
8.40 +
g++
์ฌ ์ŠคํŠœ๋””์˜ค C/C++
HP aC++
IBM XL C/C++
2.95 +
5.9
3.80
8.00

wxWidgets์„ ์œ„ํ•œ RAD ๋„๊ตฌ ๋ฐ IDE

[ํŽธ์ง‘]

๊ฐ™์ด ๋ณด๊ธฐ

[ํŽธ์ง‘]

๊ฐ์ฃผ

[ํŽธ์ง‘]
  1. โ†‘ History - wxWidgets
  2. โ†‘ โ€œwxWidgets 3.2.11 and 3.3.3 Releasedโ€. 2026๋…„ 7์›” 7์ผ. 2026๋…„ 7์›” 31์ผ์— ํ™•์ธํ•จ.
  3. 1 2 โ€œwxEmbedded: wxWidgets for embedded applicationsโ€. Sourceforge.net. 2007๋…„ 5์›” 9์ผ์— ์›๋ณธ ๋ฌธ์„œ์—์„œ ๋ณด์กด๋œ ๋ฌธ์„œ. 2007๋…„ 4์›” 23์ผ์— ํ™•์ธํ•จ.
  4. โ†‘ http://wxwidgets.org/about/
  5. โ†‘ About Julian Smart
  6. โ†‘ โ€œButcher Dannaโ€. 2009๋…„ 10์›” 20์ผ์— ์›๋ณธ ๋ฌธ์„œ์—์„œ ๋ณด์กด๋œ ๋ฌธ์„œ. 2009๋…„ 6์›” 8์ผ์— ํ™•์ธํ•จ. ๋‹ค์Œ ๊ธ€์ž ๋ฌด์‹œ๋จ: โ€˜ English Bookstore in Czech Republic โ€™ (๋„์›€๋ง)
  7. โ†‘ โ€œ๋ณด๊ด€๋œ ์‚ฌ๋ณธโ€. 2013๋…„ 5์›” 22์ผ์— ์›๋ณธ ๋ฌธ์„œ์—์„œ ๋ณด์กด๋œ ๋ฌธ์„œ. 2010๋…„ 8์›” 3์ผ์— ํ™•์ธํ•จ.
  8. โ†‘ โ€œ๋ณด๊ด€๋œ ์‚ฌ๋ณธโ€. 2010๋…„ 7์›” 2์ผ์— ์›๋ณธ ๋ฌธ์„œ์—์„œ ๋ณด์กด๋œ ๋ฌธ์„œ. 2010๋…„ 8์›” 3์ผ์— ํ™•์ธํ•จ.
  9. โ†‘ โ€œWxWidgets Compared To Other Toolkitsโ€. wxwidgets.org. 2010๋…„ 1์›” 2์ผ์— ํ™•์ธํ•จ.
  10. โ†‘ โ€œwxWidgets - General FAQโ€. wxwidgets.org. 2011๋…„ 5์›” 19์ผ์— ์›๋ณธ ๋ฌธ์„œ์—์„œ ๋ณด์กด๋œ ๋ฌธ์„œ. 2011๋…„ 4์›” 29์ผ์— ํ™•์ธํ•จ.
  11. โ†‘ โ€œwxWidgets-AOS: AmigaOS portโ€. 2011๋…„ 4์›” 24์ผ์— ํ™•์ธํ•จ.
  12. โ†‘ โ€œSupported Platformsโ€. wxwidgets.org. 2011๋…„ 4์›” 24์ผ์— ํ™•์ธํ•จ.

์™ธ๋ถ€ ๋งํฌ

[ํŽธ์ง‘]