Workbench´Â Ç÷§Æû¿¡ UI ±â´ÉÀ» Á¦°øÇϱâ À§ÇØ Ç÷¯±×Àο¡ È®ÀåÁ¡À» Á¤ÀÇÇÕ´Ï´Ù. ÀÌ È®ÀåÁ¡ Áß ´Ù¼ö, ƯÈ÷ ¸¶¹ý»ç È®ÀåÀº org.eclipse.jface.* ÆÐŰÁöÀÇ Å¬·¡½º¸¦ »ç¿ëÇÏ¿© ±¸ÇöµË´Ï´Ù. ¾î¶² ¼Ó¼ºÀÌ ÀÖÀ»±î¿ä?
JFace´Â ±¸ÇöÇÏ´Â µ¥ ¸¹Àº ½Ã°£ÀÌ °É¸®´Â UI ±â´ÉÀ» °³¹ßÇϱâ À§ÇÑ ÇïÆÛ Ŭ·¡½º¸¦ Á¦°øÇÏ´Â UI ŸŶÀÔ´Ï´Ù. JFace´Â ¿ø½Ã À§ÁöÆ®(widget) ½Ã½ºÅÛ ·¹º§ À§¿¡¼ ÀÛµ¿ÇÕ´Ï´Ù. ¶ÇÇÑ °øÅë UI ÇÁ·Î±×·¡¹Ö Ÿ½ºÅ©¸¦ ó¸®Çϱâ À§ÇÑ Å¬·¡½º¸¦ Á¦°øÇÕ´Ï´Ù.
JFace´Â »ç¿ëÀÚ°¡ ±âº» À§ÁöÆ®(widget) ½Ã½ºÅÛÀ̳ª ¸ðµç UI ÀÀ¿ëÇÁ·Î±×·¥¿¡¼ ¹ß»ýÇÏ´Â °øÅëÀûÀÎ ¹®Á¦Á¡À» ÇØ°áÇÏ´Â µ¥ ÃÊÁ¡À» ¸ÂÃ߱⠺¸´Ù »ç¿ëÀÚ Æ¯Á¤ Ç÷¯±×ÀÎ ±â´É ±¸Çö¿¡ ÁýÁßÇÒ ¼ö ÀÖµµ·Ï ÇÕ´Ï´Ù.
JFace°¡ Á¾·áµÇ°í Workbench°¡ ½ÃÀ۵Ǵ À§Ä¡´Â ¾îµðÀϱî¿ä? °æ°è°¡ ¸í¹éÇÏÁö ¾ÊÀº °æ¿ì°¡ ÀÖ½À´Ï´Ù. ÀϹÝÀûÀ¸·Î org.eclipse.jface.* ÆÐŰÁöÀÇ JFace API´Â Workbench È®ÀåÁ¡ ¹× API¿¡ µ¶¸³ÀûÀÔ´Ï´Ù. Workbench Äڵ带 ÀüÇô »ç¿ëÇÏÁö ¾Ê°íµµ JFace ÇÁ·Î±×·¥À» ÀÛ¼ºÇÒ ¼ö ÀÖ´Ù°í »ý°¢ÇÒ ¼ö ÀÖ½À´Ï´Ù.
Workbench´Â JFace¸¦ »ç¿ëÇÏÁö¸¸ °¡´ÉÇÑ ÇÑ Á¾¼Ó¼ºÀ» ÁÙÀÌ·Á°í ½ÃµµÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, Workbench ÆÄÆ® ¸ðµ¨(IWorkbenchPart)Àº JFace¿¡ µ¶¸³ÀûÀ¸·Î ¼³°èµÇ¾ú½À´Ï´Ù. JFace Ŭ·¡½º¸¦ Á÷Á¢ »ç¿ëÇÏÁö ¾Ê°í SWT À§ÁöÆ®(widget)¸¦ »ç¿ëÇÏ¿© º¸±â ¹× ÆíÁý±â¸¦ ±¸ÇöÇÒ ¼ö ÀÖÀ½À» ¾Õ¼ »ìÆì º¸¾Ò½À´Ï´Ù. Workbench´Â °¡´ÉÇÑ "JFace Á߸³" »óŸ¦ À¯ÁöÇÏ¿© ÇÁ·Î±×·¡¸Ó°¡ À¯¿ëÇÏ´Ù°í ÆÇ´ÜÇÑ JFaceÀÇ ºÎºÐÀ» »ç¿ëÇÒ ¼ö ÀÖµµ·Ï ÇÕ´Ï´Ù. ½ÇÁ¦·Î Workbench´Â ¿©·¯ ±¸Çö¿¡ JFace¸¦ »ç¿ëÇϸç, API Á¤ÀÇ¿¡ JFace À¯Çü ÂüÁ¶°¡ ÀÖ½À´Ï´Ù. (¿¹¸¦ µé¾î, IMenuManager, IToolBarManager, IStatusLineManager¿¡ ´ëÇÑ JFace ÀÎÅÍÆäÀ̽º´Â Workbench IActionBar ¸Þ¼ÒµåÀÇ À¯ÇüÀ¸·Î Ç¥½ÃµË´Ï´Ù.)
SWT¿Í JFace °£ÀÇ °æ°è´Â ÈξÀ ¸íÈ®ÇÕ´Ï´Ù. SWT´Â JFace³ª Ç÷§Æû Äڵ忡 ÀüÇô ÀÇÁ¸ÇÏÁö ¾Ê½À´Ï´Ù. ´Ù¼öÀÇ SWT ¿¹°¡ »ç¿ëÀÚ°¡ µ¶¸³Çü ÀÀ¿ëÇÁ·Î±×·¥À» ºôµåÇÒ ¼ö ÀÖ´Â ¹æ¹ýÀ» Ç¥½ÃÇÕ´Ï´Ù.
JFace´Â SWT ¶óÀ̺귯¸®¿¡ ´õÇÏ¿© °øÅë ÀÀ¿ëÇÁ·Î±×·¥ UI ±â´ÉÀ» Á¦°øÇϵµ·Ï ¼³°èµÇ¾ú½À´Ï´Ù. JFace´Â SWT¸¦ "¼û±â"°Å³ª ±â´ÉÀ» ´ëüÇÏ·Á°í ÇÏÁö ¾Ê½À´Ï´Ù. JFace´Â SWT¸¦ »ç¿ëÇÏ¿© µ¿Àû UI ÇÁ·Î±×·¡¹Ö°ú ¿¬°üµÈ ´Ù¼öÀÇ °øÅë Ÿ½ºÅ©¸¦ ó¸®Çϴ Ŭ·¡½º¿Í ÀÎÅÍÆäÀ̽º¸¦ Á¦°øÇÕ´Ï´Ù.
JFace¿Í SWT °£ÀÇ °ü°è´Â Ç¥½Ã±â ¹× Ç¥½Ã±â¿Í SWT À§ÁöÆ®(widget)¿ÍÀÇ °ü°è¸¦ »ìÆì º¸¸é °¡Àå Àß ÀÌÇØÇÒ ¼ö ÀÖ½À´Ï´Ù.