¸®´ª½º °ü·Ã °Á¶õ |
---|
Á¦¸ñ | Motif #2 1998/10/20 (10:21) |
À̸§ | ±èÈ¿¿ø |
¹øÈ£ | 62 |
Á¶È¸ | 403 |
º»¹® |
¡º¸®´ª½º Çдç-¸®´ª½º °Á / ¿¬Àç (go LINUX)¡» 608¹ø Á¦ ¸ñ:[°ÁÂ02] Motif Programming ¿Ã¸°ÀÌ:seyon (ÀÌÀ±¼ö ) 98/10/11 02:40 ÀÐÀ½: 84 °ü·ÃÀÚ·á ¾øÀ½ ----------------------------------------------------------------------------- ----------------------------------------------------------------------- [°ÁÂ2] Motif Programming for X Windows Using Lesstif ----------------------------------------------------------------------- Àú¹ø½Ã°£¿¡ ¾ê±â¸¦ ¾ÈÇÑ °Í °°Àºµ¥ ¸ðƼÇÁ¸¦ ¹è¿ì·Á¸é C¾ð¾î¸¦ ¾Ë¾Æ¾ß ÇÏ¹Ç ·Î C¾ð¾î¸¦ ¸ð¸£½Ã´Â ºÐÀº C¾ð¾î Ã¥À» ¸ÕÀú º¸¼Å¾ß ÇÒ°Ì´Ï´Ù. 5. À§Á¬(Widget)??!!! ¸¹Àº À©µµ¿ì¿ë ÇÁ·Î±×·¡¹Ö¿¡¼ (xÀ©µµ¿ìÀÌ°Ç À©µµ¿ìÁî95ÀÌ°Ç°£¿¡) °¡Àå ±â º»ÀÌ µÇ´Â ¿ä¼Ò´Â ¹Ù·Î windowÀÔ´Ï´Ù. ¿ì¸®°¡ °íµîÇб³¶§ ȤÀº ±× ÀÌÀüÀÌ¶ó µµ ÈÇÐ »ý¹°µî¿¡¼ ¹°ÁúÀÇ ´ÜÀ§ ¹¹.. ÀÌ·±°Å ¹è¿üÀ»°Ì´Ï´Ù. ÈÇп¡¼´Â ¿øÀÚ³ª ºÐÀÚ°¡ Áß¿äÇÑ ´ÜÀ§°¡ µÉ°ÍÀÌ°í »ý¹°¿¡¼´Â ¼¼Æ÷(¼¼Æ÷´Â »ý¹°ÀÇ ±¸Á¶Àû ±â´ÉÀû ´ÜÀ§?? ¸Â³ª?)°¡ Áß¿äÇÑ ´ÜÀ§°¡ µÉ°ÍÀÔ´Ï´Ù. ±³°ú¼ ¸Ç óÀ½ ¿¡ ³ª¿À´Â ÀÌ·¯ÇÑ ´ÜÀ§µéÀ» ¸ÇóÀ½ ¹è¿ì´Â °ÍÀº ±×¸¸Å Áß¿äÇÏ´Ù´Â ¶æÀÌ°ÚÁö ¿ä.. À©µµ¿ì¿ë ÇÁ·Î±×·¥¿¡¼´Â window°¡ ±âº» ´ÜÀ§ÀÔ´Ï´Ù. µû¶ó¼ À©µµ¿ì¿ë ÇÁ·Î±×·¡¹ÖÀ» ¼³¸íÇÒ¶§µµ ¹Ù·Î window¿¡ ´ëÇÑ ¼³¸íºÎÅÍ ½ÃÀÛÇØ¾ß ÇÏ´Â °ÍÀÔ ´Ï´Ù. »ç¼³ÀÌ Á» ±æ±äÇÏÁö¸¸ ¾ê±â¸¦ ´õ ÇÏÀÚ¸é.. ¸¹Àº ÇÁ·Î±×·¡¹Ö Ã¥µéÀÌ À̸¦ ¹«½ÃÇÏ°í ÀÖÁö ¾ÊÀº°¡ ½Í½À´Ï´Ù. "The C programimg language"¶ó´Â Ã¥À»º¸ ¸é ¸ÇóÀ½ ³ª¿À´Â ¿¹Á¦°¡ "Hello World"¸¦ ȸ鿡 ÇÁ¸°Æ® ÇÏ´Â ¿¹ÀÔ´Ï´Ù. ¸¹Àº Ã¥µéÀÌ ÀÌ ¿¹¸¦ º¸°í ȸéÀÌ ÀÌ·¯ÇÑ ¹®ÀåÀ» Ç¥½ÃÇÏ´Â °ÍÀ» óÀ½ ¿¹Á¦ ·Î ÇÏ°í ÀÖ½À´Ï´Ù. ÇÏÁö¸¸ Á¦ »ý°¢¿¡´Â ÀÌ ¿¹Á¦·Î ÀÎÇÏ¿© ¸¹Àº »ç¶÷µéÀÌ À© µµ¿ì¿ë ÇÁ·Î±×·¥ÀÇ °³³äÀ» Àâ´Âµ¥ ¾î·Á¿òÀ» °ÞÁö ¾Ê³ª ½Í½À´Ï´Ù. À©µµ¿ì¿ë ÇÁ·Î±×·¥¿¡¼ÀÇ ÅؽºÆ®´Â ÅؽºÆ®°¡ ¾Æ´Ñ ¹Ù·Î ±×¸²ÀÔ´Ï´Ù. ¿ì¼± À©µµ¿ì¸¦ ¸¸µå´Â ¿¹Á¦¸¦ ¸¸µé°í ±×¸²À» ±×¸®´Â ¿¹Á¦¸¦ º¸ÀÎÈÄ¿¡ ÅؽºÆ®¸¦ ±×¸®´Â ¿¹Á¦ °¡ ³ª¿Í¾ß ÇÏÁö ¾ÊÀ»±î.. ¶ó´Â »ý°¢À» ÇØ º¾´Ï´Ù.. ´Ù½Ã µ¹¾Æ¿Í¼ ¸ðƼÇÁµµ ¹Ù·Î XÀ©µµ¿ì¿ë ÇÁ·Î±×·¡¹ÖÀ» ÇÏ´Â °ÍÀÌÁö¸¸.. ¸ð ƼÇÁÀÇ ±âº»´ÜÀ§´Â À§Á¬ÀÔ´Ï´Ù. »ý¹°¿¡¼ ¼¼Æ÷µµ ¿øÀÚ ºÐÀÚ·Î ÀÌ·ç¾îÁ® ÀÖÁö ¸¸ ¿øÀÚ ºÐÀÚºÎÅÍ ¼³¸íÇÏÁö´Â ¾Ê½À´Ï´Ù. À§Á¬ÀÌ Çϳª ÀÌ»óÀÇ À©µµ¿ì·Î ÀÌ·ç ¾îÁ® ÀÖ°ÚÁö¸¸ À©µµ¿ìºÎÅÍ ÀÚ¼¼È÷ ¼³¸í ÇÏÁö´Â ¾ÊÀ»°ÍÀÔ´Ï´Ù. µû¶ó¼ ¾ÕÀ¸·Î ³ª¿À´Â ³»¿ëÀº À§Á¬À» ±âº»´ÜÀ§·Î ¼³¸íÀÌ ÀÌ·ç¾î Áú °ÍÀÔ´Ï´Ù.. À§Á¬À̶õ?( Á¦¸ñ¸ÕÀú ½á³õ±¸ ÀÌ ¾ê±â Çϱâ Âü Èûµé±º¿ä..) ¹Ì¸® ¸¸µé¾îÁø ÀÎÅÍÆäÀ̽º °´Ã¼ÀÔ´Ï´Ù. ¸»ÀÌ Á» ¾î·Æ³ª¿ä? ¸ðƼÇÁ ÇÁ·Î±×·¡¹ÖÀ̶ó´Â ¿¡½ºÄÄ À̶ó´Â ÃâÆǻ翡¼ ³ª¿Â Á» ¿À·¡µÈÃ¥¿¡¼ ±×·¸°Ô Á¤ÀÇ Çß´õ±º¿ä.. Âü°í·Î Àú ´Â ÀÌÃ¥º¸±¸ °øºÎÇߴµ¥.. ÀÌÇØÇϱ⿡ ¿ë¾î°¡ ³Ê¹« ¾î·Æ´õ±º¿ä.. ¿¹Á¦´Â ÁÁ Àºµ¥.. ÇÁ·Î±×·¡¹Ö ½ºÅ¸ÀÏÀº ÀÌÃ¥ÀÇ ¿¹Á¦¶û ºñ½ÁÇÏ°Ô µÉ °ÍÀÌ°í ÀÌÃ¥ÀÇ ¿¹ Á¦¸¦ ¸î°¡Áö ¾²µµ·Ï ÇÏ°Ú½À´Ï´Ù.) Á¦°¡ ´Ù½Ã Á¤ÀǸ¦ ÇÏÀÚ¸é.. À©µµ¿ì¿ë ÇÁ·Î±×·¥¸¸µé±â À§Çؼ ¿ì¸®°¡ ÇÊ¿äÇÑ Æ²À» ¹Ì¸® ¸¸µé¾î ³õÀº °Í ÀÌ¶ó±¸ Çϸé ÀÌÇØ°¡ °¡½Ç·Á³ª¿ä? ¿¹¸¦ µé¾î Ǫ½Ã ¹öÆ°,½ºÅ©·Ñ ¹Ù,Ç®´Ù¿î ¸Þ´º, µîµîÀÌ ¹Ù·Î À§Á¬ÀÔ´Ï´Ù. 6. À©µµ¿ì¿ë ÇÁ·Î±×·¡¹Ö ½ºÅ¸ÀÏ ¹«½¼ ¿¹Á¦´Â ÇϳªµÎ ¾È º¸¿©ÁÖ±¸ ÀÌ»óÇÑ ¸»¸¸ ÇÑ´Ù±¸ ¹¹¶ó±¸ ÇϽÇÁöµµ ¸ð ¸£°Ú³×¿ä. ¿¹Á¦°¡ ³ª¿À±â ½ÃÀÛÇÏ´Â ºÎºÐ±îÁö ¸ðµÎ ÀÌÇظ¦ ÇÏ½Ã¸é ¹ÝÀº ³¡³ °ÍÀ̳ª ´Ù¸§ ¾ø½À´Ï´Ù. ±×¸¸Å Áö±Ý ³ª¿À´Â ³»¿ëÀÇ °³³äÀÌ Áß¿äÇÑ°ÍÀÔ´Ï´Ù. ¾ÕÀ¸·Î ³ª¿À´Â ¿¹Á¦ÀÇ ÇÔ¼öµéÀ» Áö±Ý ´çÀå ¿Ü¿î´Ù ÇÏ´õ¶óµµ °è¼ÓÀûÀ¸·Î ¾²Áö ¾ÊÀ¸¸é ±Ý¹æ ÀØ¾î ¹ö¸®°Ô µË´Ï´Ù. ±×·¯³ª ¾ÕÀÇ °³³äÀ» È®½ÇÈ÷ ÀÌÇØ ÇÏ°í ÀÖ À¸¸é ÇÔ¼öµéÀº ÇÊ¿äÇÒ¶§¸¶´Ù ã¾Æ¼ ¾²±â¸¸ ÇÏ¸é µÇ±â ¶§¹®¿¡ ¾ÕÀÇ °³³äÀ» È®½ÇÈ÷ ÀÍÈ÷´Â°ÍÀÌ Áß¿äÇÕ´Ï´Ù. Áö±Ý ³ª¿À´Â °³³äµéÀ» È®½ÇÈ÷ ÀÍÈ÷¼¼¿ä. À©µµ¿ì ÇÁ·Î±×·¡¹ÖÀº ±âÁ¸¿¡ ÇÁ·Î±×·¡¹Ö ¹æ½Ä°ú´Â ¾à°£ÀÇ Â÷ÀÌ°¡ ÀÖ½À´Ï´Ù . ¹Ù·Î ÇÁ·Î±×·¥ÀÇ È帧ÀÔ´Ï´Ù.. ÇÁ·Î±×·¥ÀÇ È帧ÀÌ º¸ÅëÀº ¼øÂ÷ÀûÀ¸·Î ÀÌ·ç ¾îÁöÁö¸¸ event-driven¹æ½Ä (ÀÌ°ÍÀÌ À©µµ¿ì¿ë ÇÁ·Î±×·¡¹ÖÀÇ ½ºÅ¸ÀÏÀÔ´Ï´Ù. À©µµ¿ì95¿¡¼´Â message-driven¹æ½ÄÀ̶ó ÇÏ´õ±º¿ä.) ÀÇ ÇÁ·Î±×·¥¿¡¼´Â ´Ù¸¨ ´Ï´Ù. À̺¥Æ® µå¸®ºì ¹æ½ÄÀÇ ÇÁ·Î±×·¡¹Ö¿¡¼ÀÇ ÁÖµÈ ÀÔ·Â ÀåÄ¡´Â ¸¶¿ì½º ÀÔ ´Ï´Ù. µµ½º³ª À¯´Ð½º Äֿܼë ÇÁ·Î±×·¥¿¡¼´Â ¸í·ÉÀ» ÀÔ·ÂÇÏ¸é ¼ø¼´ë·Î ½ÇÇà ÇÏ´Ù°¡ Å°º¸µå¸¦ ÀԷ¹ްųª ¸í·É¾î¸¦ ÀÔ·Â ¹ÞÀ»¶§±îÁö ±â´Ù¸®´Â, ¼øÂ÷ÀûÀÎ ¹æ¹ýÀ¸·Î ÇÁ·Î±×·¡¹ÖÀ» ÇÏ¸é µÇ¾ú½À´Ï´Ù. ÇÏÁö¸¸ À©µµ¿ì¿ë ÇÁ·Î±×·¥Àº ´ëºÎ ºÐ ¸¶¿ì½º¸¦ ÀÔ·ÂÀåÄ¡·Î ¾²´Âµ¥ ¼ø¼´ë·Î ÁÖ¿í ½ÇÇàÇÏ´Â °ÍÀÌ ¾Æ´Ï¶ó ¸¶¿ì½º °¡ ¾îµðÀÖ´ÂÁö ȤÀº ¾î¶² ÇൿÀ» ÃëÇÏ´ÂÁö¿¡ µû¶ó ´Ù¸£°Ô ÇÁ·Î±×·¥ÀÌ ½ÇÇà µÉ °ÍÀÔ´Ï´Ù. ÀϹÝÀûÀÎ event-driven¹æ½ÄÀÇ ÇÁ·Î±×·¡¹Ö ½ºÅ¸ÀÏÀº ´ÙÀ½°ú °°½À´Ï´Ù. 1. À©µµ¿ì¸¦ ¸¸µì´Ï´Ù. (¸¸µå´Â °ÍÀÌ °ð ±×¸®´Â °ÍÀ» ¶æÇÏ´Â °ÍÀº ¾Æ´Õ´Ï´Ù.) 2. À©µµ¿ì¿¡ ÇÊ¿äÇÑ ºÎºÐÀ» ¼ÂÆÃÇÕ´Ï´Ù. ( 1¹ø°ú ¼ø¼°¡ ¹Ù²ð¼ö´Â ÀÖÀ¾´Ï´Ù.) 3. À©µµ¿ì¸¦ ±×¸³´Ï´Ù. ( ȸé»ó¿¡ ³ªÅ¸³ª´Â °ÍÀº ½ÇÁ¦¸¸µç À©µµ¿ìÀÇ ±×¸²¿¡ Áö³ªÁö ¾Ê½À´Ï´Ù) 4. ¹«ÇÑ ·çÇÁ¸¦ µ¹¸é¼ À̺¥Æ®¸¦ ¹Þ½À´Ï´Ù. 5. À̺¥Æ®¸¦ ºÐ¼®Çؼ ÀûÀýÇÑ ÇൿÀ» ÃëÇÕ´Ï´Ù. 6. ·çÇÁ¸¦ ¹Ýº¹ÇÕ´Ï´Ù. À§ÀÇ ³»¿ëÀº ¾î¶² À©µµ¿ì¿ë ÇÁ·Î±×·¥ÀÌ°Ç°£¿¡ °°½À´Ï´Ù. µû¶ó¼ À̸¦ ¸ð¸£ ´Â ºÐµéÀº È®½ÇÇÏ°Ô °³³äÀ» ÆľÇÇϽñ⠹ٶø´Ï´Ù. 7. ¸ðƼÇÁÀÇ °èÃþ ±¸Á¶ ¸ðƼÇÁ´Â ´ÙÀ½°ú °°Àº °èÃþ ±¸Á¶¸¦ °®½À´Ï´Ù. +---------------------------------+ | Motif | | +------------------------+ | | Xtoolkit | +--------+------------------------+ | Xlib | +---------------------------------+ ¸ðƼÇÁ´Â Xlib³ª XtoolkitÀ§¿¡ Á¸Àç ÇÕ´Ï´Ù. µû¶ó¼ ¸¹Àº ºÎºÐÀ» (ƯÈ÷ ¸ð ƼÇÁ¿¡ ¾ø´Â ºÎºÐ) À» XtoolkitÀ̳ª Xlib¸¦ ÀÌ¿ëÇÕ´Ï´Ù. ƯÈ÷ ±×·¡ÇÈ Ã³¸® ºÎºÐÀº ´ëºÎºÐ Xlib¸¦ ÀÌ¿ëÇÕ´Ï´Ù. ¿¹Á¦¿¡¼ X·Î ½ÃÀÛÇÏ´Â ÇÔ¼ö´Â XlibÇÔ¼ö ÀÌ°í, Xt·Î ½ÃÀÛÇÏ´Â ÇÔ¼ö´Â XtoolkitÇÔ¼ö ±×¸®°í XmÀ¸·Î ½ÃÀÛÇÏ´Â ÇÔ¼ö´Â ¸ðƼÇÁ ÇÔ¼ö ÀÔ´Ï´Ù. 8. ¸ðƼÇÁÀÇ ÀÎÀÚ(argument) Àü´Þ ¹æ½Ä ¿ì¸®°¡ C¾ð¾î¸¦ ¹è¿ï ¶§ main ÇÔ¼ö°¡ argument¸¦ Àü´Þ ¹Þ´Â ¹æ¹ýÀ» ¹è¿üÀ» °Ì´Ï´Ù. ¿¹¸¦ µé¾î Äֻܼ󿡼 cp a.c list.txt ÀÌ·¸°Ô ½ÇÇàÀ» ½ÃÄ×´Ù°í ÇÏ ¸é main(int argc,char *argv) { } ¸ÞÀÎÇÔ¼ö¿¡¼ ÀÎÀÚ¸¦ Àü´Þ ¹ÞÀ» ¶§ argc´Â ÀÎÀÚÀÇ °³¼öÀ̹ǷΠ3ÀÌ µÇ°í, argv[0]="cp", argv[1]="a.c", argv[2]="list.txt" ÀÌ·¸°Ô ¹Þ¾Æ µéÀδٴ °ÍÀ» ¾Ë ¼ö ÀÖ½À´Ï´Ù.. ¸ðƼÇÁ¿¡¼ ÀÎÀÚ¸¦ Àü´Þ ¹ÞÀ»¶§µµ ºñ½ÁÇÑ ¹æ¹ýÀ» ÀÌ¿ëÇÕ´Ï´Ù. ArgŸÀÔÀÇ ¹è¿ alÀ» ¼±¾ð ÇÏ°í, ac¸¦ int·Î ¼±¾ðÇÑ´ÙÀ½, ac¿¡´Â °³¼ö°¡, al[?]¿¡´Â °¢°¢ÀÇ ³»¿ëÀÌ µé¾î°¡°Ô µË´Ï´Ù. ÇÁ·Î±×·¥¿¡¼ ¾ÕÀ¸·Î ÀÌ·¯ÇÑ ¿¹¸¦ º¼¼ö ÀÖÀ» °ÍÀÔ´Ï´Ù. Arg al[10]; int ac; ÀÌ·¸°Ô ¼±¾ð ÇÑ ÈÄ¿¡ al[ac]ÀÌ·± ½ÄÀ¸·Î ÀÎÀÚ¸¦ ¹Þ½À´Ï´Ù. ÀÎÀÚ¸¦ ¹ÞÀ¸¸é Æ÷ÀÎÅ͸¦ À̵¿½ÃÄÑ ÁÖ¾î¾ß ÇϹǷΠac++;ÀÌ·± ¹®ÀåÀÌ ÇÊ¿äÇÒ °ÍÀÔ´Ï´Ù. ¾ÕÀ¸·Î ¿¹Á¦°¡ ³ª¿Ã¶§ ´õ ÀÚ¼¼È÷ ¼³¸íÀ» ÇÒ Å×´Ï ¹æ½Ä¸¸ ¾Ë¾ÆµÎµµ·Ï Çϼ¼¿ä. ----------------------------------------------------------------------- ¿À´ÃÀº ¿©±â±îÁö¸¸ Çϵµ·Ï ÇÏ°ÚÀ¾´Ï´Ù. ´ÙÀ½ ½Ã°£¿¡´Â º»°ÝÀûÀ¸·Î ¿¹Á¦¸¦ ´Ù·çµµ·Ï ÇÏ°ÚÀ¾´Ï´Ù. Ã¥»ó¿¡ ¾É¾Æ¼ °øºÎÇÑ´Ù´Â »ý°¢À¸·Î ÇÏÁö ¸¶½Ã°í, ±×³É ½É½ÉÇ®ÀÌ·Î ÀÐ¾î º» ´Ù°í »ý°¢ÇÏ½Ã°í ½É½ÉÇÒ¶§¸¶´Ù Çѹø¾¿ Àо¼¼¿ä. °©Àڱ⠾ÆÇÏ ÇÏ°í ÀÌÇØ°¡ °¥¼öµµ ÀÖÀ¸´Ï±î¿ä... College of Information Science School of Computing -ÀÌÀ±¼ö- <seyon@nownuri.net> <c9644168@enter.soongsil.ac.kr> |