¹æ¸í·Ï ¿¡ ¼Ò°¨À» ³²°ÜÁֽʽà ¿ä.
¿©·¯ºÐÀÇ ÀǰßÀÌ Ã¥ÀÇ ³»¿ëÀ» ´õ¿í dzºÎÇÏ°Ô ¸¸µé °Í ÀÔ´Ï´Ù.

ÄÚ¾Æ ÄÚ¹ÙÀÇ ¸ðµç ³»¿ëÀº º» ÀúÀÚ¿Í ¿µÇÑ ÃâÆÇ»ç ±×¸®µµ ¿©·¯ ȸ»çµé¿¡ ÀÇÇØ¼­ ¼ÒÀ¯µÇ¾î ÀÖ À¾´Ï´Ù. º» ÀúÀÚÀÇ Çã¶ô¾øÀÌ ¹«´Ü º¹»ç ¹× ÀοëÀ» ±ÝÇÕ´Ï´Ù. ÀÌ »çÇ×À» À§¹Ý½Ã ¸ðµç ¹ýÀûÀΠåÀÓÀ» Áö¼Å¾ß ÇÕ´Ï´Ù.
[ ´ÙÀ½ | ÀÌÀü ]

5¸· CORBA¿¡ ¿¬µ¿ÇÒ ¼ö ÀÖ´Â °Íµé

1Àå. ¸¶ÀÌÅ©·Î¼ÒÇÁÆ®ÀÇ Èñ¸Á, DCOM/OLE

CORBA¿Í Á÷Á¢ÀûÀ¸·Î °æÀïÇϴ ǥÁØÀº ¸¶ÀÌÅ©·Î¼ÒÇÁÆ®ÀÇ COM(Component Object Model)ÀÌ´Ù . COMÀº À©µµ¿ì ¿î¿µ üÁ¦°¡ Â÷ÁöÇϰí ÀÖ´Â ºñÁ߸¸Å­ °¡Àå ³Î¸® »ç¿ëµÇ°í ÀÖ´Â À©µµ¿ì ¹ö½ºÀÌ´Ù . µû¶ó¼­ CORBA´Â °è¼ÓÀûÀ¸·Î ¸¶ÀÌÅ©·Î¼ÒÇÁÆ®ÀÇ °´Ã¼ Ç¥ÁØÀÎ COM/OLE¿Í CORBA¿ÍÀÇ ¿¬µ¿ ¹®Á¦¸¦ °í¹ÎÇØ ¿À°í ÀÖ´Ù. ÀÌ ¹®Á¦¿¡ ´ëÇØ CORBA´Â 2°³ÀÇ ºÎºÐÀ¸·Î ³ª´µ¾î ÇöÀçÀÇ COM/OLE¿¡ CORBA¸¦ °áÇÕÇÏ´Â ¹®Á¦¿Í ¾ÕÀ¸·Î ´ëµÎµÉ ºÐ»ê COM/OLE¿Í ÀÇ ÅëÇÕ¿¡ ´ëÇÑ ¹®Á¦¸¦ Áغñ Áß¿¡ ÀÖ´Ù. ±âÁ¸ÀÇ COM/OLE¿ÍÀÇ ÅëÇÕ ¹®Á¦´Â Á¤¸®°¡ µÇ¾î »ó´ç¼öÀÇ CORBAÁ¦Ç° µéÀÌ OLE¿Í ¿¬µ¿ °¡´ÉÇÑ Á¦Ç°À» °ø±ÞÇϰí ÀÖÀ¸¸ç ºÐ»êCOM/OLE¿Í ÀÇ ÅëÇÕ ¹®Á¦´Â ¸¶ÀÌÅ©·Î¼ÒÇÁÆ®ÀÇ Á¤½Ä ¹öÀüÀÌ ¹ßÇ¥µÇ±â¸¸À» ±â´Ù¸®°í ÀÖ´Â »óÅÂÀÌ´Ù. CORBAÀÇ ±â¼úÀû ¼ºÀå °úÁ¤ÇÏ¿¡¼­ ¿ì¸®´Â CORBA¿Í ¸¶ÀÌÅ©·Î¼ÒÇÁÆ®ÀÇ °´Ã¼ Ç¥ÁØÀÎ COM/OLE¸¦ ºñ±³ÇØ º¸°í ÀÌÀÇ ÅëÇÕ ¹æ¹ý¿¡ ´ëÇØ Á¤¸®ÇØ º¸µµ·Ï ÇÑ´Ù. À̸¦ À§ÇØ ¸ÕÀú ¸¶ÀÌÅ©·Î¼ÒÇÁÆ®ÀÇ COM°ú OLE¿¡ ´ëÇØ¼­ »ìÆìº¸°í À̸¦ CORBA¿Í Á¾ÇÕÀûÀ¸·Î ºñ±³ÇØ º»´Ù.

1.1 ¸¶ÀÌÅ©·Î¼ÒÇÁÆ®ÀÇ ¹è°æ ±â¼ú

¸¶ÀÌÅ©·Î¼ÒÇÁÆ® ±â¼úÀÇ ±Ù°£À» ÇѸ¶µð·Î Ç¥ÇöÇÏÀÚ¸é OLE(Object Linking and Embedding)°ú COM(Component Object Model)ÀÌ´Ù. µû¶ó¼­ ¸¶ÀÌÅ©·Î¼ÒÇÁÆ®ÀÇ ±â¼úÀ» ÀÌÇØÇÏ·Á¸é COM/OLEÀÇ ÀÌÇØ°¡ ÇʼöÀûÀÌ´Ù. ÀÌ·¯ÇÑ ±Ù°£ ±â¼úÀ» ±â¹ÝÀ¸·Î ¸¶ÀÌÅ©·Î¼ÒÇÁÆ®´Â À©µµ¿ì3.1°ú À©µµ¿ì95 ±×¸®°í À©µµ¿ì ¿î¿µ üÁ¦ÀÇ Á¾Âø¿ªÀ¸·Î Ç¥ÇöµÇ´Â NT¿¡ À̸£±â±îÁö ´Ù¾çÇÑ ±×¸² ¿î¿µ üÁ¦¸¦ Áö¿øÇϰí ÀÖ´Ù. ÀÌµé ±×¸² ¿î¿µ üÁ¦ ¿ª½Ã Á¾±¹¿¡´Â ºÐ»ê ȯ°æÀ» Áö¿øÇÏ´Â COM/OLE¸¦ ³»ÀåÇÒ ¿¹Á¤ÀÌ´Ù. »Ó¸¸ ¾Æ´Ï¶ó °³¹ß ¾ð¾î¿¡ À־µµ ¸¶ÀÌÅ©·Î¼ÒÇÁÆ®ÀÇ ºñÁÖ¾ó C++°ú º¼·£µåÀÇ C++À» Áß½ÉÀ¸·Î ÇÑ ½Ã½ºÅÛ ÇÁ·Î±×·¥ °³¹ß ȯ°æ°ú ºñÁÖ¾ó º£ÀÌÁ÷À» ÅëÇÑ ÀÀ¿ë ÇÁ·Î±×·¥ °³¹ß ȯ°æÀ» Á¦°øÇϰí ÀÖ´Ù. ÀÌµé ¿ª½Ã COM/OLE¸¦ ÀÌ¿ëÇϰí ÀÛ¼ºÇÏ´Â µ¥ Áß½ÉÀÌ ¸ÂÃß¾îÁ® ÀÖ´Ù. ¸¶Áö¸·À¸·Î ÃÖ±Ù µé¾î °¡Àå ¸¹Àº È­Á¦¿Í °ü½É°Å¸®¸¦ Á¦°øÇÏ´Â ÀÎÅͳݿ¡ À־µµ ActiveX¶ó´Â À̸§À¸·Î COM/OLE±â ¼úÀ» ÀÎÅͳݿ¡ Á¢¸ñ½Ã۱â À§ÇÑ ³ë·ÂÀ» °æÁÖÇϰí ÀÖ´Ù. ÇѸ¶µð·Î ¸¶ÀÌÅ©·Î¼ÒÇÁÆ®ÀÇ ¸ðµç ±â¼úÀº COM/OLE¶ó °í ¸»ÇÒ ¼ö ÀÖ´Ù.

Á¾±¹ÀûÀ¸·Î ¸¶ÀÌÅ©·Î¼ÒÇÁÆ®´Â OLE/µ¥ÀÌŸº£À̽º , OLE/Æ®·»Á§¼Ç , ³×Æ®¿÷ OLEó·³ COM/OLE¸¦ Áß½ÉÀ¸·Î ±âÁ¸ÀÇ ´Ù¸¥ ±â¼úÀ» Æ÷ÇÔÇÒ °ÍÀ» ¸ñÇ¥·Î Çϰí ÀÖ´Ù.


[±×¸²5-1] ¸¶ÀÌÅ©·Î¼ÒÇÁÆ®ÀÇ ±â¼ú¹è°æ

1.2 OLE¶õ?

´ëºÎºÐ ¸¶ÀÌÅ©·Î¼ÒÇÁÆ®¿¡ °ü½ÉÀÌ ÀÖ´Â »ç¶÷À̶ó¸é Á¤È®ÇÏ°Ô Á¤ÀÇÇϱä Èûµé¾îµµ OLE¿¡ ´ëÇØ¼­ ¸·¿¬È÷ ¿öµå ³»¿¡ ¿¢¼¿ ½¬Æ®¸¦ »ðÀÔÇϰųª ÆÄ¿öÆ÷ÀÎÆ® ±×¸²À» »ðÀÔÇÏ´Â µî ¼­·Î ´Ù¸¥ µ¥ÀÌŸ¸¦ ÅëÇÕÇÏ¿© ÇϳªÀÇ ¹®¼­¸¦ ¸¸µå´Â ¹æ¹ýÀ¸·Î ÀÌÇØÇϰí ÀÖÀ» °ÍÀÌ´Ù. ºñ½ÁÇÏ°Ô ÀϸƻóÅëÇϱâ´Â ÇÏÁö¸¸ Á» ´õ Á¤È®È÷ Á¤ÀÇÇÏÀÚ¸é Ãʱâ OLE(Object Linking and Embedding)´Â »ç¿ëÀÚ¿¡°Ô´Â ¸¶Ä¡ ÇϳªÀÇ µ¥ÀÌŸó·³ º¸ÀÌÁö¸¸ ½ÇÁ¦·Î´Â µÎ°³ ÀÌ»óÀÇ ´Ù¸¥ ÀÀ¿ë ÇÁ·Î±×·¥À» »ç¿ëÇÏ¿© »ý¼ºµÈ Á¤º¸ÀÎ º¹ÇÕ ¹®¼­¸¦ ÀÛ¼ºÇϱâ À§ÇÑ ±â¼úÀÌ´Ù. ±×·¯³ª Áö±Ý¿¡ ¿Í¼­ OLE´Â ´Ü¼øÇÑ º¹ÇÕ ¹®¼­¸¦ ÀÛ¼ºÇϱâ À§ÇÑ ±â¼úÀÌ ¾Æ´Ï¶ó COM(Component Object Model)À̶ó´Â ±â¼úÀ» ¹ÙÅÁÀ¸·Î ´Ù¾çÇÑ ÀÀ¿ë ½Ã½ºÅÛÀ» ÀÛ¼ºÇÏ´Â ±â¼ú·Î Àνĵǰí ÀÖ´Ù. À̶§, COMÀº º¹ÇÕ ¹®¼­ ÀÛ¼ºÀ» À§ÇÑ ÀÀ¿ë ÇÁ·Î±×·¥°£ÀÇ ÅëÇÕ»Ó ¸¸ ¾Æ´Ï¶ó ¸ðµç À©µµ¿ì ÀÀ¿ë ÇÁ·Î±×·¥µé°£ÀÇ ÅëÇÕÀÌ °¡´ÉÇÑ ¸¶ÀÌÅ©·Î¼ÒÇÁÆ®ÀÇ À©µµ¿ì °´Ã¼ ¹ö½º¸¦ ¸»ÇÑ´Ù.


[ ±×¸²5-2 ] º¹ÇÕ ¹®¼­ÀÇ ±¸Á¶

1.2.1 OLEÀÇ °³¹ß¿ª»ç

Ãʱ⠸¶ÀÌÅ©·Î¼ÒÇÁÆ®»çÀÇ (ÆÄ¿ö Æ÷ÀÎÆ®)¼ÒÇÁÆ®¿þ¾î °³¹ßÆÀÀº À©µµ¿ì¿¡¼­ Áö¿øÇÏ´Â ÀÀ¿ë ÇÁ·Î±×·¥°£ÀÇ µ¥ÀÌŸ ±³È¯ ¹æ¹ýÀÎ DDE(Dynamic Data Exchange)¸¦ È®ÀåÇÑ »õ·Î¿î µ¥ÀÌŸ ±³È¯ ¹æ¹ýÀ» Á¦¾ÈÇÏ¿´´Âµ¥ À̰ÍÀÌ OLE¿´°í, ÀÌÈÄ ¸¶ÀÌÅ©·Î¼ÒÇÁÆ®»çÀÇ ¸ðµç À©µµ¿ì¿ë ÀÀ¿ë ÇÁ·Î±×·¥¿¡ Àû¿ëµÇ¾ú´Ù.

ÀÌÈÄ OLE´Â °¢°¢ÀÇ ÁÖ¿äÇÑ ±â´É¿¡ µû¶ó ¹öÀüÀÌ Çâ»óµÇ¾î ÇöÀç¿¡ À̸£°í Àִµ¥ °¢°¢ÀÇ Æ¯Â¡Àº ´ÙÀ½°ú °°´Ù.

OLE 1.0Àº [±× ¸²5-2]¿¡¼­ ó·³ ¸ÖƼ¹Ìµð¾î, ÅØ½ºÆ®, À̹ÌÁö ,À½¼º°ú °°Àº ´Ù¾çÇÑ Á¤º¸¸¦ ÇÑ ¹®¼­¿¡ ÀúÀåÇÒ ¼ö ÀÖ´Â º¹ÇÕ ¹®¼­(Compound Document) ±â´ÉÀ» ÇÁ·Î¼¼½º°£ÀÇ Åë½ÅÀ» ´ã´çÇÏ´Â IPC(Inter-Process Communication)·Î ±¸ÇöÇÏ¿´´Ù . ÀÌ·± ¹è°æ¿¡´Â ÀÌÈÄ À©µµ¿ì ¿î¿µ üÁ¦¸¦ º¹ÇÕ ¹®¼­ Áß½ÉÀÇ ¿î¿µ üÁ¦·Î ÀüȯÇϱâ À§ÇÑ ¸¶ÀÌÅ©·Î¼ÒÇÁÆ®ÀÇ Àü·«ÀÌ ¼û¾îÀÖ¾ú´Ù.

OLE 2.0¿¡¼­ ¸¶ÀÌÅ©·Î¼ÒÇÁÆ®´Â º¹ÇÕ ¹®¼­»ó¿¡¼­ ½Ã°¢Àû ÆíÁýÀÌ °¡´ÉÇϵµ·Ï ¿øÇÏ´Â Á¤º¸ÀÇ Á¶ÀÛ½Ã ÇØ´ç ÀÀ¿ë ÇÁ·Î±×·¥ÀÌ ¼öÇàµÇ´Â In-Place Activation ±â´É°ú °´Ã¼°£ÀÇ ÅëÇÕ¿¡¼­ LRPC(Light Remote Procedure Call)±â´ÉÀ» Á¦°øÇÏ¿´´Ù.

[ ±×¸²5-3 ] OLE 2.0¿¡¼­ÀÇ À©µµ¿ì °´Ã¼

OLE 3.0Àº °´Ã¼°£ÀÇ Åë½ÅÀ» ¿ÏÀüÇÑ RPC(DCE RPC¸¦ ÀÌ¿ë)·Î ´ëüÇÏ¿© ºÐ»ê À©µµ¿ì °´Ã¼È¯°æÀ» Áö¿øÇÒ ¿¹Á¤ÀÌ´Ù. ƯÈ÷ 1997³â°æ¿¡ ¹ßÇ¥µÉ Â÷¼¼´ë À©µµ¿ì NT ¹öÀü¿¡¼­´Â ÆÄÀÏ ½Ã½ºÅÛÀÌ OLE¸¦ ÀÌ¿ëÇÏ¿© ±¸ÇöµÇ°í ÀÖ¾î À©µµ¿ì NT´Â °´Ã¼ Áß½ÉÀÇ ¿î¿µ ½Ã½ºÅÛÀÌ µÉ °ÍÀÌ´Ù.


[ ±×¸²5-4 ] OLE 3.0¿¡¼­ÀÇ À©µµ¿ì °´Ã¼

1.2.2 OLEÀÇ ±âº» Åä´ë

ÀϹÝÀûÀÎ ÀÀ¿ë ÇÁ·Î±×·¥À» ÀÛ¼ºÇÑ´Ù°í »ý°¢Çغ¸ÀÚ. À̶§ ÀÀ¿ë ÇÁ·Î±×·¥Àº ÇØ´ç ÀÛ¾÷À» À§ÇØ ¿î¿µ üÁ¦ , °¢Á¾ ¶óÀ̺귯¸® ¶Ç´Â ´Ù¸¥ ÇÁ·Î¼¼½º¿Í Á¤º¸¸¦ ±³È¯ÇØ¾ß ÇÑ´Ù. ÀϹÝÀûÀ¸·Î ÀÌ °æ¿ì ÀÀ¿ë ÇÁ·Î±×·¥ ÀÛ¼ºÀÚ´Â ¿î¿µ üÁ¦¿Í Á¤º¸¸¦ ±³È¯Çϱâ À§ÇØ ½Ã½ºÅÛ È£Ãâ ¹æ¹ýÀ» »ç¿ëÇØ¾ß ÇÏ°í ¶óÀ̺귯¸®¿Í´Â APIÈ£Ãâ , ´Ù¸¥ ÇÁ·Î¼¼½º¿Í´Â IPCÈ£Ãâ ¹æ¹ýÀ» »ç¿ëÇØ¾ß ÇÑ´Ù. ÀÌ·¯ÇÑ »óȲÀº OLE¿¡¼­µµ ¸¶Âù°¡ÁöÀÌ´Ù. ¾Õ¼­ OLE°¡ ´Ù¾çÇÑ ÀÀ¿ë ÇÁ·Î±×·¥°úÀÇ »óÈ£ÀÛ¿ëÀ» ÅëÇØ °¢Á¾ ¼­ºñ½º¸¦ âÃâÇÔÀ» ¾Ë¾Æº¸¾Ò´Ù. ´ç¿¬È÷ À̸¦ À§ÇØ OLE ÇÁ·Î±×·¥ ÀÛ¼ºÀÚ´Â ¾Õ¼± 3°¡Áö ¹æ¹ýÀ» ¾Ë¾Æ¾ß ¸¸ ÇÑ´Ù.


[ ±×¸²5-5 ] ¼­ºñ½º ¿äûÀ» À§ÇÑ 3°¡Áö ¹æ¹ý

¸¸¾à 3°¡Áö ¹æ¹ýÀ» ¸ðµÎ ¾Ë¾Æ¾ß¸¸ ÇÑ´Ù¸é ÀÀ¿ë ÇÁ·Î±×·¥ ÀÛ¼ºÀÚ´Â Á¤º¸¸¦ ±³È¯ÇϰíÀÚ ÇÏ´Â ¸ðµç ÀÀ¿ë ÇÁ·Î±×·¥°ú ¿î¿µ üÁ¦ , ¶óÀ̺귯¸® ¸¶´Ù °¢±â ´Ù¸¥ ¹æ¹ýÀ» »ç¿ëÇØ¾ß¸¸ ÇÑ´Ù. µµÀúÈ÷ ¹«¸ðÇÑ ÀÛ¾÷ÀÓÀÌ »·ÇÏ´Ù. ÀÌ·¯ÇÑ ¹®Á¦Á¡ÀÇ ÇØ°áÃ¥ÀÌ ´ÜÀÏÇÑ ÀÎÅÍÆäÀ̽º¸¦ Á¦°øÇØÁÖ´Â COMÀÌ´Ù. µû¶ó¼­ OLEÀÇ ±âº» Åä´ë´Â COMÀÌ´Ù.

COMÀº COMÀ» ÀÌ¿ëÇÏ´Â ¸ðµç ÀÀ¿ë ÇÁ·Î±×·¥¿¡ ´ÜÀÏÇÑ Á¢±ÙÀÌ °¡´ÉÇÏ°Ô ÇØÁØ´Ù. Á»´õ ÀÚ¼¼È÷ »ìÆìº¸¸é COMÀº [ ±×¸²5-6 ]°ú °°Àº ±¸Á¶¸¦ °®´Â´Ù.

ÀÌ ±¸Á¶¸¦ º¸¸é COM °´Ã¼´Â ÇØ´ç °´Ã¼¿¡ ´ëÇÑ Á¢±ÙÀ» À§ÇØ º¹¼ö °³ÀÇ ÀÎÅÍÆäÀ̽º¸¦ Á¦°øÇÑ´Ù. ÀÎÅÍÆäÀ̽º´Â º¹¼ö °³ÀÇ ¸Þ¼Òµå·Î ÀÌ·ç¾îÁ® ÀÖ´Ù. Âü°í·Î µÚ¿¡¼­µµ ´Ù½Ã ¾ð±ÞÇϰÚÁö¸¸ ÀÌÁ¡ÀÌ CORBA¿¡¼­ Á¦°øÇÏ´Â °´Ã¼¿Í ´Ù¸¥ Á¡ÀÌ´Ù. CORBA¿¡¼­ °´Ã¼´Â ´ÜÀÏÇÑ ÀÎÅÍÆäÀ̽º¸¸À» Á¦°øÇÏ´Â µ¥ ¹ÝÇØ COM °´Ã¼´Â º¹¼ö °³ÀÇ ÀÎÅÍÆäÀ̽º¸¦ Á¦°øÇÑ´Ù. ±×·¯³ª CORBA3.0 Ç¥ÁØ¿¡¼­´Â º¹¼ö ÀÎÅÍÆäÀ̽º ±â´ÉÀ» Á¦°øÇÒ ¿¹Á¤ÀÌ´Ù. Âü°í·Î COM °´Ã¼¸¦ ¾ð±ÞÇÏ´Â ¸ðµç ¹®¼­¿¡¼­ ¿øÀº ÀÎÅÍÆäÀ̽º¸¦ ³ª¸ÓÁö »ç°¢ÇüÀº °´Ã¼¸¦ ÀǹÌÇÑ´Ù.


[ ±×¸²5-6 ] COMÀÇ °´Ã¼ ±¸Á¶

¸¸ÀÏ ÀÌ·¯ÇÑ COM °´Ã¼¸¦ ÀÌ¿ëÇÏ¿© °¢Á¾ÀÇ ¶óÀ̺귯¸®³ª ÀÀ¿ë ÇÁ·Î±×·¥À» ÀÛ¼ºÇϰųª ¿î¿µ üÁ¦¿¡¼­ COM ÀÎÅÍÆäÀ̽º¸¦ Á¦°øÇÑ´Ù¸é ´ÜÀÏÇÑ COM ÀÎÅÍÆäÀ̽º¸¦ ÅëÇØ ¸ðµç ¼­ºñ½º¸¦ ÀÌ¿ëÇÒ ¼ö ÀÖ°Ô µÈ´Ù. ÀÏ´Ü COM °´Ã¼¸¦ ÀÌ¿ëÇÏ·Á¸é ¸ÕÀú ÀÎÅÍÆäÀ̽º¿¡ ´ëÇÑ Æ÷ÀÎÅ͸¦ ¾ò¾î ÈÄ ÀÌ Æ÷ÀÎÅ͸¦ ÅëÇØ ¿øÇÏ´Â ¸Þ¼Òµå¸¦ ¼öÇàÇÏ¸é µÈ´Ù.

[ ±×¸²5-7 ] COM °´Ã¼¸¦ ÀÌ¿ëÇÑ ¼­ºñ½º ¿äû

1.2.3 OLEÀÇ ±âº» ¼­ºñ½º

°¡Àå ÇÏÀ§¿¡ À©µµ¿ì °´Ã¼ ¹ö½ºÀÎ COMÀ» ±â¹ÝÀ¸·Î ÇÏ¿© OLE±â´ÉÀ» ÀÌ¿ëÇÏ´Â µ¥ À¯¿ëÇÑ ±âº» ¼­ºñ½ºµéÀÌ Á¦°øµÈ´Ù. ÀÌ ±âº» ¼­ºñ½ºµéÀº ¼ö¸¹Àº OLE ÀÀ¿ë ±â¼ú¿¡ ÀÇÇØ¼­ »ç¿ëµÇ¾îÁö´Â ±â¼úÀÌ´Ù.

COMÀ» ±â¹ÝÀ¸·Î ÇÑ ÆÄÀÏ ½Ã½ºÅÛÀ¸·Î¼­ ¿©·¯ ÆÄÀϵéÀ» COMÀ» ±â¹ÝÀ¸·Î ÇÏ¿© ³í¸®ÀûÀ¸·Î ±¸¼ºÇØÁØ´Ù.

ƯÁ¤ °´Ã¼ÀÇ ÀνºÅϽº¸¦ ÃʱâÈ­ÇÏ°í »ý¼ºÇØÁÖ¸ç °´Ã¼ À̸§ µîÀÇ Á¤º¸¸¦ Á¦°øÇÑ´Ù. ¹Ù·Î ÀÌ ±â´ÉÀ» ÀÌ¿ëÇÏ¿© COM °´Ã¼¸¦ »ý¼ºÇÒ ¼ö ÀÖ´Ù.

ÀÀ¿ë ÇÁ·Î±×·¥ »çÀÌÀÇ ÀÚ·á ±³È¯À» À§ÇÑ ÀϹÝÀûÀÎ ¹æ¹ýÀÌ´Ù.

´Ù¸¥ ÀÀ¿ë ÇÁ·Î±×·¥À¸·Î ÇÏ¿©±Ý ÇØ´ç ÇÁ·Î±×·¥ÀÇ ¸Þ¼Òµå¸¦ »ç¿ëÇÒ ¼ö ÀÖ°Ô ÇØÁÖ´Â ¼­ºñ½º¸¦ ¸»ÇÑ´Ù.

À̿ܿ¡µµ °¢Á¾ ÄÄÆ÷³ÍÆ® ±â¼úÀ» OLE¿¡¼­ »ç¿ëÇÒ ¼ö ÀÖ°Ô ÇØÁÖ´Â OCX(OLE Control Extension)·Î ¾Ë·Á´Â OLE Á¶Á¤ ±â´ÉÀÌ ÀÖÀ¸¸ç OLE/µ¥ÀÌŸº£À̽º , OLE/Æ®·»Á§¼Ç , ³×Æ®¿÷ OLE µîÀÌ ÃßÈÄ Á¦°øµÉ ¿¹Á¤ÀÌ´Ù.

1.3 OLEÀÇ À©µµ¿ì °´Ã¼ ¹ö½º COM(COMPONENT OBJECT MODEL)

COMÀº CORBA¿Í ¸¶Âù°¡Áö·Î À©µµ¿ì ¼¼»ó¿¡¼­ ¹ö½º ¿ªÇÒÀ» ´ã´çÇÏ´Â À©µµ¿ì °´Ã¼ ¹ö½ºÀÌ´Ù. ´Ù½Ã ¸»ÇØ COMÀº Ŭ¶óÀÌ¾ðÆ® ÇÁ·Î±×·¥°ú °´Ã¼¼­¹ö ÇÁ·Î±×·¥°£ÀÇ »óÈ£ Åë½Å ¹æ½ÄÀ» Á¤ÀÇÇÑ ¸ðµ¨·Î¼­ °´Ã¼°£ÀÇ ÅëÇÕÀ» Áö¿øÇÑ´Ù.

COMÀº [±× ¸²5-8]¿¡¼­ ó·³ ¿©·¯ °³ÀÇ ÀÀ¿ë ÇÁ·Î±×·¥¾È¿¡¼­ º¹ÇÕ °´Ã¼ »çÀÌÀÇ ÀÎÅÍÆäÀ̽º¸¦ Á¤ÀÇÇϵµ·Ï ÇØÁÖ¸ç ÀÌ ÀÎÅÍÆäÀ̽º¸¦ ÅëÇØ ÀÀ¿ë ÇÁ·Î±×·¥µéÀÌ º¹ÇÕ ¹®¼­ µî ´Ù¾çÇÑ ±â´ÉÀ» ÀÌ¿ëÇÑ´Ù. ÀÌ·¯ÇÑ COMÀ» ±â¹ÝÀ¸·Î ÇÏ¿© º¹ÇÕ ¹®¼­¸¦ ±¸¼ºÇÏ´Â µ¥ ÇÊ¿äÇÑ ´Ù¾çÇÑ ¼­ºñ½º¸¦ Áö¿øÇϱâ À§ÇØ ±¸¼ºµÈ ±â´ÉÀÌ º¹ÇÕ ¹®¼­°ü¸® , º¹ÇÕ ÆÄÀÏ , ÀϰüµÈ ÀÚ·á ±³È¯ , OLE ÀÚµ¿È­ µîÀÌ´Ù. ÀÌ·¯ÇÑ ±â´ÉµéÀ» ÀϹÝÀûÀ¸·Î OLE2.0À̶ó ÇÑ´Ù.( ½ÇÁ¦ ÀÌ ±â´É ¿Ü¿¡µµ OCX , ¸ð´ÏÄ¿ , ŸÀÔ ¶óÀ̺귯¸® µî ´Ù¾çÇÑ ±â´ÉÀÌ ÀÖ´Ù.) °á±¹ OLE¶õ COMÀ» ±â¹ÝÀ¸·Î ÇÏ¿© »ý¼ºµÈ °´Ã¼¸¦ ÀǹÌÇÑ´Ù.

½ÇÁ¦ ÀÌ·¯ÇÑ COM±¸Á¶¸¦ CORBA¿Í ºñ±³ÇÏ¿© »ý°¢Çغ¸¸é ´ÜÀÏ ¸Ó½®»ó¿¡¼­ ¼öÇàµÇ´Â CORBAÀÇ ±â´É°ú °°´Ù. ´Ù½Ã ¸»ÇØ COMÀÇ ÀÎÅÍÆäÀ̽º¸¸ ÀÌ¿ëÇϸé ÇØ´ç ¸Ó½®»ó¿¡¼­ ´Ù¸¥ À©µµ¿ì °´Ã¼ÀÇ ¼­ºñ½º¸¦ ÀÌ¿ëÇÒ ¼ö ÀÖ´Ù. ÀÌ·¯ÇÑ Á¦¾àÀ» ±Øº¹ÇÏ°í ³×Æ®¿÷»óÀÇ º¹¼ö ¸Ó½®»çÀÌÀÇ ¼­ºñ½º¸¦ À§ÇØ °³¹ßÁßÀÎ °ÍÀÌ ºÐ»êCOM(DCOM, Distributed COM)ÀÌ´Ù.


[ ±×¸²5-8 ] COM ±¸¼ºµµ

1.3.1 COMÀÇ °´Ã¼ ¸ðµ¨

»ç½Ç COMÀÇ °´Ã¼ ¸ðµ¨¿¡ ´ëÇØ¼­´Â ³í¶õÀÌ ¸¹Áö¸¸ ¸¶ÀÌÅ©·Î¼ÒÇÁÆ®ÀÇ ¸»À» ÀüÀûÀ¸·Î ºô¸®ÀÚ¸é COM °´Ã¼´Â µ¥ÀÌŸ¿Í ¸Þ¼Òµå·Î ±¸¼ºµÇ¾î ÀÖ´Ù. COM °´Ã¼´Â °³¹ßµÇ´Â ¾ð¾î¿¡ µ¶¸³ÀûÀ¸·Î °³¹ßµÇ¾î Áú ¼ö ÀÖ´Ù. ¿Ö³ÄÇÏ¸é ´ÜÁö ÀÎÅÍÆäÀ̽º¸¸À» ¾Ë°í À̸¦ ÅëÇÏ¸é ¿øÇÏ´Â ¸Þ¼Òµå¸¦ È£ÃâÇÒ ¼ö Àֱ⠶§¹®ÀÌ´Ù. ½ÇÁ¦ ÀÌ ÀÎÅÍÆäÀ̽º¿¡ ´ëÇÑ ÀÚ¼¼ÇÑ ¾ð±ÞÀ» Çϱâ Àü¿¡ °ú¿¬ COM °´Ã¼°¡ ¿Ö ÄÄÆ÷³ÍÆ® °´Ã¼¸¦ ±¸¼ºÇϴµ¥ À¯¸®ÇÑÁö »ý°¢Çغ¸ÀÚ. ÀϹÝÀûÀ¸·Î C³ª C++Àº ÀÏ¹Ý ÀÀ¿ë ÇÁ·Î±×·¥À» ÀÛ¼ºÇÏ´Â µ¥ Æí¸®ÇÏ´Ù. ±×·¯³ª °³¹ßµÇ¾î ÀÖ´Â ÄÄÆ÷³ÍÆ®¸¦ Àç»ç¿ëÇÏ´Â °ÍÀº Èûµé´Ù. ¿Ö³ÄÇÏ¸é ¹ÙÀ̳ʸ®¿¡ ´ëÇÑ Ç¥ÁØ ÀÎÅÍÆäÀ̽º°¡ ¾ø±â ¶§¹®ÀÌ´Ù. ÀÌ·± Á¡¿¡ ´ëÇÑ ´ëÀÀÃ¥À¸·Î COMÀº ÀÎÅÍÆäÀ̽º¸¦ ÅëÇÑ ¹ÙÀ̳ʸ® Ç¥ÁØÀ» Á¦°øÇÑ´Ù. ÀÌ Ç¥ÁØÀ» ÀÌ¿ëÇϸé C++°´Ã¼µç ´Ù¸¥ ¹ÙÀ̳ʸ® °´Ã¼µç »ó°üÇÒ °Í ¾øÀÌ ÀÀ¿ë ÇÁ·Î±×·¥À» ÀÛ¼ºÇÒ ¼ö ÀÖ´Ù. ¿¹¸¦ µé¾î, ºñÁÖ¾ó º£ÀÌÁ÷°°Àº ÅøÀ» ÀÌ¿ëÇÏ¿© ´Ù¾çÇÑ ¹ÙÀ̳ʸ®¿Í °´Ã¼¸¦ Á¶ÀÛÇÏ´Â ÇÁ·Î±×·¥À» ÀÚÁÖ º¼ ¼ö ÀÖ´Ù.


[ ±×¸²5-9 ] COM °´Ã¼

1.3.2 COM ÀÎÅÍÆäÀ̽º

½ÇÁ¦ COM °´Ã¼¸¦ ÀÚ¼¼È÷ »ìÆìº¸¸é [±×¸² 5-10]¿¡¼­ ó·³ °´Ã¼ÀÇ ¸Þ¼ÒµåµéÀÇ ÁýÇÕÀÎ ÀÎÅÍÆäÀ̽º°¡ ´Ù¼ö Á¸ÀçÇϰí ÀÖÀ½À» ¾Ë ¼ö ÀÖ´Ù.( ¸Þ¼ÒµåµéÀ» µÑ·¯½Î°í ÀÖ´Â 4°¢Çü) ÀÌ ÀÎÅÍÆäÀ̽º´Â º¹¼ö °³ Á¸ÀçÇÒ ¼ö ÀÖÀ¸¸ç °¢±â ´Ù¸¥ ¸Þ¼Òµå¸¦ Æ÷ÇÔÇÒ ¼ö ÀÖ´Ù. ÀÌ·¯ÇÑ ¹æ¹ýÀÇ ÀåÁ¡Àº ´Ù¾çÇÑ ÀÎÅÍÆäÀ̽º¸¦ Á¦°øÇÏ¿© Á¢±ÙÀ» Á¦¾îÇÒ ¼ö ÀÖ´Ù´Â Á¡À» µé ¼ö ÀÖÁö¸¸ ÇÁ·Î±×·¥À» ÀÛ¼ºÇϱⰡ ¹ø°Å·Î¿ì¸ç °´Ã¼ÀÇ Ãß»óÈ­¿Í °¸½¶È­ÀÇ °­µµ¸¦ ¾àÈ­½ÃŲ´Ù´Â Á¡À» µé ¼ö ÀÖ´Ù.


[ ±×¸²5-10 ] ÀÎÅÍÆäÀ̽º¸¦ Æ÷ÇÔÇÑ COM °´Ã¼

¶ÇÇÑ COMÀº ÀÌ·¯ÇÑ ÀÎÅÍÆäÀ̽º¸¦ ÀÛ¼ºÇϱâ À§ÇÑ ±â¹Ý µµ±¸·Î¼­ IDLÀ» Á¦°øÇÑ´Ù. COM IDLÀº CORBA IDL°ú ¸¶Âù°¡ÁöÀÇ ¿ªÇÒÀ» ÇÑ´Ù. ±×·¯³ª COM IDLÀº DCE IDLÀ» ä¿ëÇÏ¿© »ç¿ëÇϱ⠶§¹®¿¡ ´Ù¾çÇÑ ¾ð¾î·ÎÀÇ ¸ÅÇÎÀÌ ºÒ°¡´ÉÇÏ´Ù. ¿Ö³ÄÇϸé DCE IDLÀº C¾ð¾î·ÎÀÇ ¸ÅÇÎÀ» ÀüÁ¦·Î Çϱ⠶§¹®ÀÌ´Ù.

±×·¸´Ù¸é Ŭ¶óÀÌ¾ðÆ®°¡ ÀÎÅÍÆäÀ̽º¸¦ ÅëÇØ COM °´Ã¼ÀÇ ¸Þ¼Òµå¸¦ ÀÌ¿ëÇÏ´Â °úÁ¤À» ¾Ë¾Æº¸ÀÚ. ¸ÕÀú [±×¸²5-11]¿¡¼­ ó·³ Ŭ¶óÀÌ¾ðÆ®´Â ÇØ´ç ÀÎÅÍÆäÀ̽º¿¡ ´ëÇÑ Æ÷ÀÎÅ͸¦ ¾ò¾î¾ß ÇÑ´Ù. ( ½ÇÁ¦ ÀÌ Æ÷ÀÎÅÍ´Â COM¿¡¼­ Á¦°øµÈ´Ù. ) ÀÌ Æ÷ÀÎÅ͸¦ µû¶ó°¡¸é °¢ ¸Þ¼Òµå¸¦ °¡¸®Å°°í ÀÖ´Â ÇÔ¼ö Å×À̺íÀÌ ÀÖ´Ù. µû¶ó¼­ ÀÌ ÇÔ¼ö Å×ÀÌºí¿¡¼­ ¿øÇÏ´Â ¸Þ¼Òµå¸¦ È£ÃâÇÏ¸é µÈ´Ù.


[ ±×¸²5-11 ] ÀÎÅÍÆäÀ̽ºÀÇ ±¸Çö

1.3.3 COM IDL

¾Õ¼­ Àá½Ã »ìÆìº» °Íó·³ COMÀº CORBAÀÇ IDL°ú ¸¶Âù°¡Áö·Î ÀÎÅÍÆäÀ̽º¸¦ Á¤ÀÇÇϱâ À§ÇÑ IDLÀ» Á¦°øÇÑ´Ù. ´ÙÀ½Àº COM IDLÀÇ ¿¹ÀÌ´Ù.

[ object ,

uuid(a01d0280-2d88-11c0-9fd4-08002cled9e2) ]

interface Iaccount : IUnknown {

typedef [string] char name[25];

HRESULT GetBalance( [out] float *balance);

HRESULT GetOwner( [out] name owner);

HRESULT SetOwner( [in] name owner);

HRESUTL Credit( [in] float amount);

HRESULT Debit( [in] float amount);

}

[ ¿¹5-1 ] COM IDL ÀÛ¼º ¿¹

ÀÌ ¿¹¸¦ º¸¸é COM IDLÀº object¶ó´Â Ű¿öµå·Î ½ÃÀÛÇÑ´Ù. À̰ÍÀº DCE IDLÀÇ È®ÀåÀ» »ç¿ëÇÑ´Ù´Â °ÍÀ» ÀǹÌÇÑ´Ù. objectŰ¿öµå¿¡ À̾ ³ª¿À´Â °ÍÀº ÇØ´ç ÀÎÅÍÆäÀ̽º¸¦ ½Äº°Çϱâ À§ÇÑ 16 ¹ÙÀÌÆ® Å©±âÀÇ UUID(Universal Unique Identifier)ÀÌ´Ù. UUID´Â GUID(Global Unique Identifier)¶ó°íµµ ºÒ¸®´Â µ¥ ÀÎÅÍÆäÀ̽º¸¦ °íÀ¯ÇÏ°Ô ½Äº°ÇØÁØ´Ù. ÇØ´ç ÀÎÅÍÆäÀ̽ºÀÇ UUID´Â ¸¶ÀÌÅ©·Î¼ÒÇÁÆ®°¡ Á¦°øÇÏ´Â À¯Æ¿¸®Æ¼¸¦ ÀÌ¿ëÇϰųª Á÷Á¢ ¸¶ÀÌÅ©·Î¼ÒÇÁÆ®¿¡ ¿äÃ»ÇØ¼­ ¾òÀ» ¼ö ÀÖ´Ù. Âü°í·Î COMÀÇ ¸ðµç ÀÎÅÍÆäÀ̽º´Â UUID¸¦, Ŭ·¡½º´Â CLSID(Class ID)¸¦ °¡Áö°í ÀÖ´Ù.

´ÙÀ½¿¡ µû¶ó¿À´Â °ÍÀº ÀÎÅÍÆäÀ̽ºÀÇ Á¤ÀǺκÐÀ¸·Î¼­ ¿øÇÏ´Â ÀÎÅÍÆäÀ̽º¸¦ ¼±¾ðÇÒ ¼ö ÀÖ´Ù. HRESULT´Â Ưº°ÇÑ ¿¡·¯ Çڵ鸵À» À§ÇØ »ç¿ëµÇ´Â 21ºñÆ® long integer ÇüÀÇ º¯¼öÀÌ´Ù.

ÀÎÅÍÆäÀ̽º´Â ´Ù¸¥ ÀÎÅÍÆäÀ̽º¸¦ »ó¼Ó ¹ÞÀ» ¼ö ÀÖ°Ô ÇØÁØ´Ù. ±×·¯³ª ÁÖÀÇÇÒ Á¡Àº ´ÙÁß »ó¼ÓÀº Áö¿øÇÏÁö ¾Ê´Â´Ù´Â Á¡ÀÌ´Ù. ¶ÇÇÑ ±¸Çö ºÎºÐÀÌ »ó¼ÓµÇ´Â °ÍÀÌ ¾Æ´Ï¶ó ÀÎÅÍÆäÀ̽º Á¤ÀÇ ºÎºÐ¸¸ÀÌ »ó¼ÓµÈ´Ù´Â °ÍÀÌ´Ù.

1.3.4 COMÀÇ ±âº» ÀÎÅÍÆäÀ̽ºµé

COMÀº ¸ðµç ÀÎÅÍÆäÀ̽ºµéÀÌ °øÅëÀûÀ¸·Î °¡Á®¾ß ÇÒ ÀÎÅÍÆäÀ̽º·Î¼­ IUnknownÀ̶ó´Â ÀÎÅÍÆäÀ̽º¸¦ Á¦°øÇÑ´Ù. IUnknown ÀÎÅÍÆäÀ̽ºÀÇ ¸Þ¼Òµå´Â ÀÎÅÍÆäÀ̽º¿¡ ´ëÇÑ Æ÷ÀÎÅ͸¦ ¹ÝÈ¯ÇØÁÖ°í °´Ã¼ÀÇ ÂüÁ¶ Ä«¿îÅ͸¦ °í·ÁÇÏ¿© »ý¸íÁֱ⸦ °üÀåÇÑ´Ù. ÀÌ·¯ÇÑ ±â´ÉÀ» À§ÇØ IUnknownÀº ´ÙÀ½ÀÇ ¸Þ¼Òµå¸¦ Á¦°øÇÑ´Ù. Âü°í·Î ÂüÁ¶ Ä«¿îÅͶõ °´Ã¼¸¦ ÂüÁ¶Çϰí ÀÖ´Â ¼ö¸¦ ±â·ÏÇØµÎ´Â ¹æ¹ýÀÌ´Ù. µû¶ó¼­ ÂüÁ¶ Ä«¿îÅͰ¡ 0 À̶õ ¸»Àº ÇØ´ç °´Ã¼¸¦ »ç¿ëÇÏ´Â ´Ù¸¥ °´Ã¼°¡ ¾ø´Ù´Â ¸»À̱⠶§¹®¿¡ »èÁ¦ÇÒ ¼ö ÀÖ´Ù.

ÇØ´ç °´Ã¼¸¦ Á¦°øÇÏ´Â ÀÎÅÍÆäÀ̽º¿¡ ´ëÇÑ Æ÷ÀÎÆ®¸¦ ¾òÀ» ¼ö ÀÖ´Â ¹æ¹ýÀ» Á¦°øÇØÁØ´Ù. ½ÇÁ¦·Î [±×¸²5-12]¿¡¼­ ó·³ ÇØ´ç Ŭ¶óÀÌ¾ðÆ®°¡ COM °´Ã¼ÀÇ ¸Þ¼Òµå¸¦ ÀÌ¿ëÇϱâ À§Çؼ­´Â ¸ÕÀú ÀÎÅÍÆäÀ̽º Æ÷ÀÎÅ͸¦ °¡Á®¾ß ÇÑ´Ù. À̸¦ À§Çؼ­´Â ¸ÕÀú ÇØ´ç ÀÎÅÍÆäÀ̽ºÀÇ ID ¿Í ÇÔ²² IUnknownÀÎÅÍÆäÀ̽ºÀÇ QueryInterface¸¦ È£ÃâÇØ¾ß ÇÑ´Ù. ÀÏ´Ü ÇØ´ç ¸Þ¼Òµå°¡ È£ÃâµÇ¸é ÇØ´ç ÀÎÅÍÆäÀ̽ºÀÇ Á¸Àç¿©ºÎ¸¦ °Ë»çÇÑ ÈÄ ÇØ´ç ÀÎÅÍÆäÀ̽º°¡ Á¸ÀçÇϸé ÀÎÅÍÆäÀ̽º Æ÷ÀÎÅÍ(X)¸¦ ¹ÝȯÇÑ´Ù.

Ŭ¶óÀÌ¾ðÆ®´Â ÇØ´ç ÀÎÅÍÆäÀ̽º Æ÷ÀÎÅÍ(X)¸¦ ÀÌ¿ëÇÏ¿© ÇØ´ç °´Ã¼(A)ÀÇ ¸Þ¼Òµå¸¦ È£ÃâÇÏ¸é µÈ´Ù. ÀÌ ¹æ¹ýÀÇ ÀåÁ¡Àº »ç¿ëÇϰíÀÚ ÇÏ´Â ÄÄÆ÷³ÍÆ®ÀÇ ¹öÀüÀÌ º¯ÇÏ´õ¶óµµ Ŭ¶óÀÌ¾ðÆ®´Â ¹«°üÇÏ°Ô »ç¿ëÇÒ ¼ö ÀÖ´Ù´Â ÀåÁ¡ÀÌ ÀÖ´Ù.

[ ±×¸²5-12 ] ÁúÀÇ ÀÎÅÍÆäÀ̽ºÀÇ »ç¿ë

°´Ã¼ÀÇ ÂüÁ¶ Ä«¿îÅ͸¦ Áõ°¡½ÃŲ´Ù.

°´Ã¼ÀÇ ÂüÁ¶ Ä«¿îÆ®¸¦ °¨¼Ò½ÃŲ´Ù.

¸ðµç °´Ã¼´Â ÀÚµ¿ÀûÀ¸·Î »ý¼ºµÇ±âµµ ÇÏ¸ç ¼Ò¸êµÇ±âµµ ÇÑ´Ù. À̶§ º¹¼ö °³ÀÇ Å¬¶óÀÌ¾ðÆ®µéÀÌ ÇϳªÀÇ °´Ã¼¸¦ ÂüÁ¶ÇÒ ¼ö µµ ÀÖ´Ù. ÀÌ ¶§ ÇØ´ç °´Ã¼´Â ÀÚ½ÅÀÌ ÂüÁ¶µÇ°í ÀÖ´Â Á¤º¸¸¦ À¯ÁöÇØ¾ß ÇÑ´Ù. ¿Ö³ÄÇÏ¸é ¸¸¾à Ŭ¶óÀÌ¾ðÆ® ÂüÁ¶°¡ °è¼ÓµÇ´Â ¼ø°£ ÇØ´ç °´Ã¼°¡ ¼Ò¸êµÈ´Ù¸é ¹®Á¦°¡ ¹ß»ýÇÑ´Ù. µû¶ó¼­ ÂüÁ¶ ½Ã ¹ß»ýÇÏ´Â Àϰü¼ºÀ» À¯ÁöÇϱâ À§ÇØ ÂüÁ¶ Ä«¿îÅ͸¦ »ç¿ëÇÑ´Ù. ÀÏ´Ü ÂüÁ¶¸¦ ¿øÇÒ °æ¿ì Addref¸¦ »ç¿ëÇÏ¿© ÂüÁ¶ Ä«¿îÆ®¸¦ Çϳª Áõ°¡½Ã۸ç ÂüÁ¶¸¦ ¿øÇÏÁö ¾ÊÀ» °æ¿ì(»ç¿ëÀ» ´ÙÇÑ °æ¿ì) Release¸¦ »ç¿ëÇÏ¿© ÂüÁ¶ Ä«¿îÆ®¸¦ °¨¼Ò½ÃŰ´Ù. °á±¹ ÂüÁ¶ Ä«¿îÆ®°¡ 0ÀÏ °æ¿ì ÇØ´ç °´Ã¼¿¡ ´ëÇÑ ÂüÁ¶°¡ ¾ø´Â °ÍÀ̱⠶§¹®¿¡ ÇØ´ç °´Ã¼°¡ ¼Ò¸êÇØµµ ¹®Á¦°¡ ¹ß»ýÇÏÁö ¾Ê´Â´Ù.

1.3.5 COM °´Ã¼ÀÇ ±¸Çö ¹æ¹ý

¸ðµç COM °´Ã¼´Â COM ¼­¹ö ³»¿¡ ±¸ÇöµÇ¾î Ŭ¶óÀÌ¾ðÆ®¿¡°Ô ÀÎÅÍÆäÀ̽º¸¦ Á¦°øÇÑ´Ù. ÀÌ ¼­¹ö´Â ´ÙÀ½ÀÇ 3°¡Áö ¹æ¹ý Áß Çϳª¿¡ ÀÇÇØ¼­ ±¸ÇöµÉ ¼ö ÀÖ´Ù.

¸ðµç °´Ã¼´Â DLL³»¿¡ ±¸ÇöµÈ´Ù.

°´Ã¼´Â °°Àº ¸Ó½® »óÀÇ ºÐ¸®µÈ ÇÁ·Î¼¼½º³»¿¡¼­ ±¸ÇöµÈ´Ù.

°´Ã¼´Â ´Ù¸¥ ¸Ó½® »ó¿¡ ±¸ÇöµÈ´Ù.

À§ÀÇ ¹æ¹ý Áß Remote ¹æ¹ýÀº ÇöÀç Áö¿øµÇÁö ¾Ê´Â´Ù . µû¶ó¼­ COM¼­¹ö´Â ´ÜÀÏ ¸Ó½® »ó¿¡¼­¸¸

ÀÌ¿ëÇÒ ¼ö ÀÖ´Ù. ±×·¯³ª ÇöÀç ¸¶ÀÌÅ©·Î¼ÒÇÁÆ®´Â OSF DCEÀÇ RPC¸¦ ÀÌ¿ëÇÏ¿© À̸¦ ±¸Çö Áß¿¡ ÀÖ´Ù.

1.3.6 COM Ä¿³Î

COM °´Ã¼ÀÇ Å¬¶óÀÌ¾ðÆ®¿Í ¼­¹ö´Â ¸ðµÎ COMÄ¿³ÎÀ» ÀÌ¿ëÇÑ´Ù. µû¶ó¼­ COMÄ¿³ÎÀº À©µµ¿ì DLL·Î ±¸¼ºµÇ¾î ÀÖÀ¸¸ç(COMOBJ.DLL) ÇÔ¼öÈ£ÃâÀ» ÅëÇØ ÀÌ¿ëÇÒ ¼ö ÀÖ´Ù. ±×·¸´Ù¸é COM °´Ã¼ÀÇ Å¬¶óÀÌ¾ðÆ®¿Í ¼­¹ö°¡ COM Ä¿³Î°ú À¯±âÀûÀ¸·Î ÀÛµ¿ÇÏ´Â °úÁ¤À» »ìÆìº¸ÀÚ.

[±×¸² 5-13]¿¡¼­ ó·³ ¸ÕÀú Ŭ¶óÀÌ¾ðÆ®´Â CoCreateInstance ¸Þ¼Òµå¸¦ È£ÃâÇÏ¿© COMÄ¿³Î¿¡ ¼­ºñ½º¸¦ ¿äûÇÑ´Ù. À̶§ ÇØ´ç °´Ã¼ÀÇ Å¬·¡½º ID¿Í ÀÎÅÍÆäÀ̽º ID¸¦ ÇÔ²² Àü´ÞÇÑ´Ù. ÇØ´ç ¼­ºñ½º ¿äûÀ» ¹ÞÀº COMÄ¿³ÎÀº À©µµ¿ì ¿î¿µ üÁ¦ÀÇ ½Ã½ºÅÛ µ¥ÀÌŸº£À̽ºÀÎ ·¹Áö½ºÆ®¸®¿¡ µî·ÏµÈ Á¤º¸¸¦ ÀÌ¿ëÇÏ¿© ÇØ´ç ¼­¹öÀÇ À§Ä¡¸¦ ã°í ±¸µ¿½ÃŲ ÈÄ ÇØ´ç ¼­¹öÀÇ ÀÎÅÍÆäÀ̽º Æ÷ÀÎÅÍ(A)¸¦ Ŭ¶óÀÌ¾ðÆ®¿¡°Ô ¹ÝȯÇÑ´Ù. ÇØ´ç Ŭ¶óÀÌ¾ðÆ®´Â Àü´Þ¹ÞÀº ÀÎÅÍÆäÀ̽º Æ÷ÀÎÅ͸¦ ÀÌ¿ëÇÏ¿© ¿øÇÏ´Â ¸Þ¼Òµå¸¦ ¼öÇàÇÑ´Ù.


[ ±×¸²5-13 ] °´Ã¼ÀÇ ÃʱâÈ­

1.3.7 COM¿¡¼­ÀÇ Àç»ç¿ë ±â¹ý

COM¿¡¼­´Â ±âÁ¸ÀÇ Á¸ÀçÇÏ´Â ÄÄÆ÷³ÍÆ®ÀÇ Äڵ带 Àç»ç¿ëÇϱâ À§ÇØ ´ÙÀ½ÀÇ 2°¡Áö ¹æ¹ýÀ» »ç¿ëÇÑ´Ù.

¸ÕÀú ÄÁÅ×ÀÎ¸ÕÆ®´Â µÎ°³ÀÇ °´Ã¼Áß ´Ù¸¥ °´Ã¼¸¦ Æ÷ÇÔÇÏ´Â ¿ÜºÎ °´Ã¼ÀÇ Å¬¶óÀÌ¾ðÆ®¿¡°Ô Æ÷ÇÔµÈ ³»ºÎ °´Ã¼¸¦ Á÷Á¢ »ç¿ëÇÏÁö ¸øÇÏ°Ô ÇÏ´Â °ÍÀε¥ ¹ÝÇØ ¿¡±×¸®°ÔÀ̼ÇÀº Æ÷ÇÔµÈ ³»ºÎ °´Ã¼ÀÇ ÀÎÅÍÆäÀ̽º¸¦ ¿ÜºÎ °´Ã¼ÀÇ Å¬¶óÀÌ¾ðÆ®¿¡°Ô Á¦°øÇÏ´Â °ÍÀÌ´Ù. ±¸Çö»óÀ¸·Î º¸¸é ÄÁÅ×ÀÎ¸ÕÆ®´Â ´Ü¼øÇÏ¸ç °¡Àå ÀϹÝÀûÀÎ ¹æ¹ýÀε¥ ¹ÝÇØ ¿¡±×¸®°ÔÀ̼ÇÀº º¹ÀâÇÏ°í ±¸ÇöÇÏ±â ¾î·Æ´Ù.

1.4 ±âŸ OLEÀÇ ¼­ºñ½ºµé

1.4.1 ¸® ¸ðÆ® ¿ÀÅä¸ÞÀ̼Ç(Remote Automation)

¸®¸ðÆ® ¿ÀÅä¸ÞÀ̼ÇÀº ³×Æ®¿÷ OLE¿¡ ´ëÇÑ ´ëü °³³äÀÌ´Ù. ÀÌ °³³äÀº OLE ¿ÀÅä¸ÞÀ̼ÇÀÇ ÀÎÅÍÆäÀ̽º¸¦ ÅëÇØ Ŭ¶óÀÌ¾ðÆ® / ¼­¹ö ÀÀ¿ë ÇÁ·Î±×·¥µéÀ» °³¹ßÇÒ ¼ö ÀÖ´Â ±â´ÉÀ» Á¦°øÇÒ »Ó¸¸ ¾Æ´Ï¶ó ´Ù´Ü°è Ŭ¶óÀÌ¾ðÆ® / ¼­¹ö ½Ã½ºÅÛÀ» ±¸ÇöÇÏ´Â µ¥ ÇÊ¿äÇÑ ÄÄÆ÷³ÍÆ®µéÀÇ ¹èÄ¡ ±â´ÉÀ» Á¦°øÇÑ´Ù. ¶ÇÇÑ Å¬¶óÀÌ¾ðÆ® ÀÀ¿ë ÇÁ·Î±×·¥µéÀÌ À©µµ¿ì 95 ³ª À©µµ¿ì NT»ó¿¡¼­ ¿î¿ëµÇ¾îÁö´Â OLE ¼­¹ö ÀÀ¿ë ÇÁ·Î±×·¥µé°ú ´ëÈ­ÇÒ ¼ö ÀÖ´Â ±â´ÉÀ» Á¦°øÇÑ´Ù.

¿ÀÅä¸ÞÀÌ¼Ç ÇÁ·Ï½Ã(Automation Proxy)

Ŭ¶óÀÌ¾ðÆ® ¸Ó½®»ó¿¡ À§Ä¡Çϸç ÇÑ ¿ÀÅä¸ÞÀÌ¼Ç Å¬¶óÀÌ¾ðÆ®°¡ ´ÜÀÏ ¸Ó½®»ó¿¡¼­ »ç¿ëÇÏ´Â ÀϹÝÀûÀÎ OLE ÇÁ·Ï½Ã ±â´ÉÀ» ´ã´çÇÑ´Ù.

¿ÀÅä¸ÞÀÌ¼Ç °ü¸®ÀÚ(Automation Manager)

¼­¹ö ¸Ó½®»ó¿¡ À§Ä¡Çϸç Ŭ¶óÀÌ¾ðÆ® ¸Ó½®ÀÇ ¿ÀÅä¸ÞÀÌ¼Ç ÇÁ·Ï½Ã·Î ºÎÅÍÀÇ ¿ä±¸µéÀ» ¼­¹ö ¸Ó½®ÀÇ ÀûÀýÇÑ ¿ÀÅä¸ÞÀÌ¼Ç ½ºÅͺê¿Í ¿ÀÅä¸ÞÀÌ¼Ç ¼­¹ö·Î Àü´ÞÇÏ´Â ¿ªÇÒÀ» ÇÑ´Ù.


[ ±×¸²5-14 ] ¸®¸ðÆ® ¿ÀÅä¸ÞÀÌ¼Ç ±¸¼ºµµ

¸®¸ðÆ® ¿ÀÅä¸ÞÀ̼ÇÀÌ Á¦°øÇÏ´Â ÀåÁ¡Àº ´ÙÀ½°ú °°´Ù.

¸ÕÀú °¢°¢ÀÇ Å¬¶óÀÌ¾ðÆ® ÀÀ¿ë ÇÁ·Î±×·¥ÀÇ Äڵ带 ÇϳªÀÇ Áß¾Ó ¼­¹ö(centralized server)·Î ¿Å±èÀ¸·Î½á, ÀÀ¿ë ÇÁ·Î±×·¥ÀÇ À¯Áö ¹× º¸¼ö°¡ ´Ü¼øÈ­ µÇ¾î °ü¸® ºñ¿ëÀ» ÁÙÀÏ ¼ö ÀÖÀ¸¸ç ¸®¸ðÆ® OLE ¿ÀÅä¸ÞÀÌ¼Ç ¼­¹ö¸¦ Ŭ¶óÀÌ¾ðÆ®¿Í ¼­¹ö »çÀÌ¿¡ À§Ä¡½ÃÅ´À¸·Î½á, °³¹ßÀÚµéÀº ºñÁÖ¾ó º£ÀÌÁ÷À» »ç¿ëÇÏ¿© ÀÀ¿ë ÇÁ·Î±×·¥À» °³¹ßÇÒ ¼ö ÀÖ´Ù. ¶ÇÇÑ Å©°í, ½Ã°£ Áý¾àÀûÀÎ ÀÛ¾÷µéÀ» ¿ø°ÝÁöÀÇ ¼­¹ö ¸Ó½®¿¡ À§Å¹ÇÒ ¼ö ÀÖ´Ù. ¸¶Áö¸·À¸·Î ¿ø°Ý ¿ÀÅä¸ÞÀÌ¼Ç ±â¼úÀ» »ç¿ëÇÏ¿© ¹èÄ¡µÈ ¼­¹öµéÀº OLE Ŭ¶óÀÌ¾ðÆ® ¾îÇø®ÄÉÀ̼ǵ鿡 ÀÇÇØ ½±°Ô »ç¿ëµÇ¾î Áú ¼ö ÀÖÀ¸¸ç °¢Á¾ ³×Æ®¿÷À» °æÀ¯ÇÏ¿© ½±°Ô Á¢±ÙÇÒ ¼ö ÀÖ´Ù.

1.4.2 OCX

OCX(OLE Control Extension)´Â OLE ÀÎÅÍÆäÀ̽º¸¦ Á¦°øÇÏ´Â ¿ÀÅä¸ÞÀÌ¼Ç ¼­¹ö ÇÁ·Î±×·¥À¸·Î¼­ ÆûÀ» ÀÛ¼ºÇϴ Ŭ¶óÀÌ¾ðÆ® Åø ÇÁ·Î±×·¥³»¿¡¼­ »ç¿ëµÇ´Â »ç¿ëÀÚ Á¤ÀÇ ÄÁÆ®·ÑÀÌ´Ù. OCX´Â OLEÀÎÅÍÆäÀ̽º¸¦ Á¦°øÇÏ´Â ¸ðµç Ŭ¶óÀÌ¾ðÆ® Åø¿¡¼­ »ç¿ëÇÒ ¼ö Àִµ¥ ÇöÀç »ç¿ëÇÒ ¼ö ÀÖ´Â Á¦Ç°À¸·Î´Â ¾×¼¼½º 2.0, ºñÁÖ¾ó º£ÀÌÁ÷ 4.0, µ¨ÆÄÀÌ µîÀÌ ÀÖ´Ù. OCX ÄÁÆ®·ÑÀº PC ¼ÒÇÁÆ®¿þ¾î ȯ°æ¿¡¼­ ¸¶ÀÌÅ©·Î¼ÒÇÁÆ®»ç°¡ Á¦¾ÈÇÑ COM(Component Object Model) ¸ðµ¨À» µû¸£°í ÀÖ´Ù.

1.4.2.1 Ä¿ ½ºÅÒ ÄÁÆ®·ÑÀÇ Á¤ÀÇ

¸¶ÀÌÅ©·Î¼ÒÇÁÆ® À©µµ¿ì¿¡¼­ÀÇ ÄÁÆ®·ÑÀ̶õ À©µµ¿ì¿¡ »ðÀԵǾî ÀÚ½ÅÀÌ °¡Áö°í Àִ ƯÁ¤ÇÑ ±â´ÉÀ» »ðÀԵǴ ºÎ¸ð À©µµ¿ì¿¡ Á¦°øÇÏ´Â ÇϳªÀÇ ÀÚ½Ä À©µµ¿ì¸¦ ¸»ÇÑ´Ù. ÇÑ ¿¹·Î ÇÑ À©µµ¿ì°¡ »ç¿ëÀÚ·Î ºÎÅÍ ¹®ÀÚ¿­À» ÀÔ·Â¹Þ°í ½ÍÀ¸¸é ¹®ÀÚ¿­ ÀÔ·ÂÀÇ ±â´ÉÀ» °¡Áö°í ÀÖ´Â ¿¡µðÅÍ ÄÁÆ®·ÑÀ» »ðÀÔÇÑ ÈÄ ±× ÄÁÆ®·Ñ·Î ºÎÅÍ ¹®ÀÚ¿­À» ÀԷ¹ÞÀ» ¼ö ÀÖ´Ù. ¶ÇÇÑ ¹öư ÄÁÆ®·ÑÀ» »ðÀÔÇÏ¿© »ç¿ëÀÚºÎÅÍ ¾î¶°ÇÑ ¸í·ÉÀ» ¹ÞÀ» ¼öµµ ÀÖ´Ù. ÀÌó·³ À©µµ¿ì¿Í »ç¿ëÀÚ°£ÀÇ ÀÎÅÍÆäÀ̽º ¿ªÇÒÀ» ´ã´çÇÏ´Â °ÍÀÌ ÄÁÆ®·ÑÀÇ °¡Àå Å« ¸ñÀûÀÌ´Ù. »ç¿ëÀÚ´Â ÀÌ ÄÁÆ®·ÑÀ» ÅëÇØ À©µµ¿ì¿¡°Ô ¾î¶°ÇÑ ÀÏÀ» Áö½ÃÇϰí, À©µµ¿ì´Â ÀÌ ÄÁÆ®·ÑÀ» ÅëÇØ ó¸®ÇÑ °á°ú¸¦ º¸¿©ÁÙ ¼ö ÀÖ´Ù. °ÅÀÇ ¸ðµç À©µµ¿ì°¡ ÀÌ ÄÁÆ®·ÑÀ» ÀÌ¿ëÇÏ¿© ÀÛ¼ºµÈ °ÍÀ̶ó ÇØµµ °ú¾ðÀÌ ¾Æ´Ï´Ù. ¸¶ÀÌÅ©·Î¼ÒÇÁÆ® À©µµ¿ì´Â ±âº»ÀûÀ¸·Î À§¿¡¼­ ¿¹¸¦ µç ¿¡µðÅÍ, ¹öư ¿Ü¿¡µµ ¸®½ºÆ® ¹Ú½º, Æ®¸® ºä, ÇÁ·Î±×·¥ ¹Ù, Åø ¹Ù µî 20°³ ÀÌ»óÀÇ ÄÁÆ®·ÑÀ» ³»ÀåÇϰí ÀÖ´Ù. À̸¦ À©µµ¿ì ÄÁÆ®·ÑÀ̶ó ºÎ¸¥´Ù .

»ç½Ç À©µµ¿ì°¡ ±âº»ÀûÀ¸·Î Á¦°øÇÏ´Â ÄÁÆ®·Ñ¸¸À» »ç¿ëÇØ¼­ À©µµ¿ì¸¦ ÀÛ¼ºÇÑ´Ù¸é »ç¿ëÀÚ ÀÎÅÍÆäÀ̽º´Â ±ØÈ÷ Á¦ÇÑÀûÀÌ µÉ °ÍÀÌ´Ù. µû¶ó¼­ À©µµ¿ì°¡ Á¦°øÇÏ´Â ±âº» ÄÁÆ®·Ñ ¿Ü¿¡ »ç¿ëÀÚ°¡ Á÷Á¢ »ç¿ëÀÚ ÄÁÆ®·ÑÀ» ¸¸µé°í, ÀÛ¼ºÇÑ ÄÁÆ®·ÑÀ» À©µµ¿ì¿¡ »ðÀÔÇÏ¿© »ç¿ëÇÒ ¼ö ÀÖ´Â ¹æ¹ýÀÌ ÇÊ¿äÇÏ°Ô µÇ¾ú´Ù. ÀÌ¿¡ ´ëÇÑ ¸¶ÀÌÅ©·Î¼ÒÇÁÆ®ÀÇ Ã¹¹øÂ° ÇØ°áÃ¥ÀÌ VBX(Visual Basic Extension)À̾ú´Ù. ±×·¯³ª VBX¸¦ »ðÀÔÇØ¼­ »ç¿ëÇÒ ¼ö ÀÖ´Â À©µµ¿ìÀÇ Á¾·ù°¡ ºñÁÖ¾ó º£ÀÌÁ÷ µî ¸î °³ ¹Û¿¡ µÇÁö ¾Ê¾Ò°í ±× ¼öÇà ¼Óµµµµ ±×¸® ºü¸£Áö ¸øÇÏ´Ù´Â ´ÜÁ¡ÀÌ ÀÖ¾ú´Ù. ±×·³¿¡µµ ºÒ±¸Çϰí Àü¼¼°è¿¡ °ÉÃÄ ¼ö¹é °³ÀÇ ÄÁÆ®·ÑÀÌ °³¹ßµÇ°í ÆÇ¸ÅµÇ¾î ÇϳªÀÇ ¼ÒÇÁÆ®¿þ¾î ½ÃÀåÀ» Çü¼ºÇÏ°Ô µÇ¾ú´Ù.

VBX½ÃÀåÀÌ ¹«¸£ÀÍÀ» ¹«·Æ ¸¶ÀÌÅ©·Î¼ÒÇÁÆ®»ç¿¡¼­ »õ·Î °¡Áö°í ³ª¿Â »ç¿ëÀÚ ÄÁÆ®·Ñ ¸í¼¼°¡ OCXÀÌ´Ù. À̰ÍÀº OLE2.0¿¡¼­ À©µµ¿ì¿¡ °³Ã¼¸¦ »ðÀÔÇÏ´Â ¹æ¹ýÀ» ±×´ë·Î ÀÌ¿ëÇÏ¿© »ç¿ëÀÚ ÄÁÆ®·ÑÀ» ¸¸µéÀÚ´Â °ÍÀÌ´Ù. »ç¿ëÀÚ ÄÁÆ®·Ñµµ OLE°´Ã¼·Î ¸¸µéÀÚ´Â °ÍÀº ¸¶ÀÌÅ©·Î¼ÒÇÁÆ®°¡ ÁöÇâÇÏ´Â ºÐ»ê °´Ã¼ÁöÇ⠿ üÁ¦ÀÇ ÀÏȯÀÏ °ÍÀ¸·Î »ý°¢µÈ´Ù. Áï OCX´Â OLE°´Ã¼·Î¼­ÀÇ »ç¿ëÀÚ ÄÁÆ®·ÑÀ̶ó°í ¸»ÇÒ ¼ö ÀÖ´Ù. OCX´Â ±× ¾ÆÅ°ÅØÃÄ¿¡ À־´Â VBX¿Í ÀüÇô ´Ù¸£Áö¸¸ ÀÏ¹Ý »ç¿ëÀÚ°¡ »ç¿ëÇÏ´Â ¹æ¹ýÀº °ÅÀÇ µ¿ÀÏÇÏ´Ù.

1.4.2.2 VBXÄÁÆ®·Ñ°ú OCXÄÁÆ®·Ñ°úÀÇ °¡Àå Å« Â÷ÀÌÁ¡

VBX ÄÁ Æ®·Ñ

¸¶ÀÌÅ©·Î¼ÒÇÁÆ®»ç¿¡¼­ ÄÄÆ÷³ÍÆ®¿þ¾î¶ó´Â »õ·Î¿î ¼ÒÇÁÆ®¿þ¾î °³³äÀ» Á¦½ÃÇÑ ÈÄ ±× °³³äÀ» µµÀÔÇÑ Ã¹¹øÂ° Á¦Ç°ÀÌ ºñÁÖ¾ó º£ÀÌÁ÷ÀÌ¿´´Ù. ºñÁÖ¾ó º£ÀÌÁ÷ÀÌ ÄÄÆ÷³ÍÆ®¿þ¾îÀÇ °³³äÀ» Áö´Ò ¼ö ÀÖ¾ú´ø °ÍÀº VBX(Visual Basic Extension) ÄÁÆ®·Ñ ¶§¹®ÀÌ¿´´Ù . À©µµ¿ì ½Ã½ºÅÛÀº ¸î °¡Áö ±âº»ÀûÀÎ ÄÁÆ®·ÑÀ» Á¦°øÇϰí ÀÖ¾úÀ¸³ª Á¾·ù´Â ´Ù¾çÇÏÁö ¾Ê¾Ò°í, ÇÊ¿äÇÑ °æ¿ì »ç¿ëÀÚ°¡ ÇÊ¿äÇÑ ÄÁÆ®·ÑÀ» ¸¸µé ¼ö ÀÖ´Â ¹æ¹ýÀ» Á¦°øÇϰí ÀÖ¾ú´Ù.

VBX ÄÁÆ®·Ñ Àº ÀÏÁ¾ÀÇ »ç¿ëÀÚ Á¤ÀÇ ÄÁÆ®·ÑÀ̶ó ÇÒ ¼ö Àִµ¥ ÀÌ´Â ºñÁÖ¾ó º£ÀÌÁ÷°ú °¡Àå Àß ¾î¿ï¸®µµ·Ï ¼³°èµÇ°í ±¸ÇöµÇ¾ú´Ù. VBX ÄÁÆ®·Ñ°ú ºñÁÖ¾ó º£ÀÌÁ÷ »çÀÌÀÇ »óÈ£ Åë½ÅÀº À©µµ¿ìÀÇ ¸Þ¼¼Áö Å¥¸¦ »ç¿ëÇÏ¿© ±¸ÇöµÇ¾ú´Ù. ¸Þ¼¼Áö Å¥ÀÇ ¸Þ¼¼Áö´Â À©µµ¿ì¿¡ ÀÇÇÏ¿© Â÷·Ê·Î ¼öÇàµÇ¾ú±â¿¡ ¶§·Î´Â ´ë±â ½Ã°£ÀÌ ±æ¾îÁú ¼ö ÀÖ¾ú°í »ç¿ëÀÚ¿¡°Ô´Â ´Ù¼Ò ´À¸° ´À³¦À» ÁÖ¾ú´Ù. Åë½ÅÀ» À§ÇÏ¿© »õ·Î¿î ¸¹Àº ¸Þ¼¼Áö°¡ ºñÁÖ¾ó º£ÀÌÁ÷°ú VBX ÄÁÆ®·Ñ »çÀÌ¿¡¼­ Á¤ÀǵǾú±â ¶§¹®¿¡ °á°úÀûÀ¸·Î VBX ÄÁÆ®·ÑÀº ºñÁÖ¾ó º£ÀÌÁ÷¿¡¼­ °¡Àå Àß ¿î¿ëµÉ ¼ö ÀÖ¾ú´Ù. Áï ºñÁÖ¾ó º£ÀÌÁ÷¿ÜÀÇ VBX ÄÁÆ®·ÑÀ» ÀÌ¿ëÇÒ ¼ö ÀÖ´Â »õ·Î¿î Ŭ¶óÀÌ¾ðÆ® ÅøÀ» °³¹ßÇϴµ¥ ¿©·¯°¡Áö ¹®Á¦Á¡ÀÌ ¸¹¾Ò°í VBX ÄÁÆ®·ÑÀ» °³¹ßÇϴµ¥µµ ¸¹Àº ¾î·Á¿òÀÌ ÀÖ¾ú´Ù. VBX ÄÁÆ®·ÑÀº ´ÙÁß Ç÷§Æû¿¡¼­ »ç¿ëµÇ±â¿¡´Â ¸í¼¼»ó ¹®Á¦°¡ ¸¹¾Ò°í À̸¦ ¸¶ÀÌÅ©·Î¼ÒÇÁÆ®»ç¿¡¼­µµ ÀÎÁ¤Ç߱⿡ OCX ÄÁÆ®·Ñ·Î º¯°æÇÏ°Ô µÇ¾ú´Ù.

OCXÄÁÆ® ·Ñ

OCX ÄÁÆ®·Ñ Àº Ç¥ÁØ ÀÎÅÍÆäÀ̽º·Î¼­ OLE ÀÎÅÍÆäÀ̽º¸¦ Á¦°øÇÏ¿© ´ÙÁß ¿î¿µ üÁ¦¿Í ´ÙÁß Ç÷§Æû¿¡¼­ »ç¿ëÇÒ ¼ö ÀÖµµ·Ï ÇÑ ÄÁÆ®·ÑÀÌ´Ù. OLE ÀÎÅÍÆäÀ̽º´Â ¸¶ÀÌÅ©·Î¼ÒÇÁÆ®»ç¿¡¼­ ºÐ»ê °´Ã¼ ¸ðµ¨·Î Á¦½ÃÇÑ COM ¸ðµ¨À» ÀϺΠ±¸ÇöÇÑ °ÍÀ̰í À̸¦ À©µµ¿ì NT¿Í À©µµ¿ì 95 ¿î¿µ üÁ¦¿¡¼­ Áö¿øÇϰí Àֱ⠶§¹®ÀÌ´Ù. À©µµ¿ì NTÀÇ ÇâÈÄ ¹öÀü¿¡¼­´Â ¿ÏÀüÇÑ ³×Æ®¿÷ OLE°¡ ±¸ÇöµÉ °ÍÀ¸·Î ¿¹»óµÈ´Ù. OCX ÄÁÆ®·ÑÀº Ŭ¶óÀÌ¾ðÆ® Åø°úÀÇ »óÈ£ Åë½ÅÀ» OCXÄÁÆ®·ÑÀÇ ¸Þ¼Òµå¸¦ Á÷Á¢ È£ÃâÇÏ´Â ¹æ¹ýÀ¸·Î ó¸®ÇÑ´Ù. Áï Åë½Å ±â´É¿¡ °´Ã¼°³³äÀ» Ãß°¡ÇÏ¿´´Ù .

- OCXÀÇ ±¸¼º ¿ä¼Ò

°¢ Ŭ¶óÀÌ¾ðÆ® ÅøÀº OLE ÀÎÅÍÆäÀ̽º¸¦ »ç¿ëÇØ OCX °´Ã¼¿¡ Á¢±ÙÇÒ ¼ö ÀÖ´Ù. Áï, OLEÀÎÅÍÆäÀ̽º¸¦ Á¦°øÇÏ´Â ¸ðµç Ŭ¶óÀÌ¾ðÆ® ÅøÀº ¸ðµç OCXÄÁÆ®·ÑµéÀ» »ç¿ëÇÒ ¼ö ÀÖ´Ù.

Ŭ¶óÀÌ¾ðÆ® ÅøÀº OCXÀÇ °¢ ¸Þ¼ÒµåµéÀ» È£ÃâÇÔÀ¸·Î½á OCX ÄÁÆ®·Ñ·Î ÇÏ¿©±Ý ƯÁ¤ ÀÛ¾÷À» ¼öÇàÇϵµ·Ï Áö½ÃÇÒ ¼ö ÀÖ´Ù.

OCX ÄÁÆ®·Ñ Àº ¼³Á¤µÈ ȯ°æÀ» º¯°æÇÒ ¼ö ÀÖ´Â ÇÁ·ÎÆÛƼ¸¦ Á¦°øÇÑ´Ù.

OCX ÄÁÆ®·Ñ ¿¡ ƯÁ¤ À̺¥Æ®°¡ ¹ß»ýÇÒ ¶§¸¶´Ù ÇØ´ç ÄÁÆ®·ÑÀÇ Å¬¶óÀÌ¾ðÆ®¿¡°Ô Á¦¾î±ÇÀ» ³Ñ°ÜÁÜÀ¸·Î½á Ŭ¶óÀÌ¾ðÆ® Åø·Î ÇÏ¿©±Ý ƯÁ¤ ÀÛ¾÷À» ¼öÇàÇÒ ¼ö ÀÖ°Ô ÇÑ´Ù.

1.5 CORBA ´ë COM

¾Õ¼­ ¹ÌÈíÇϳª¸¶ CORBA¿Í CORBA¼­ºñ½º ±×¸®°í COM°ú COMÀ» ±â¹ÝÀ¸·Î ÇÏ´Â OLE¿¡ ´ëÇØ¼­ »ìÆìº¸¾Ò´Ù. ÀÌÁ¦ ¸¶Áö¸·À¸·Î ÀÌ µÎ °´Ã¼±â¼úÀ» ºñ±³ÇØ º¸µµ·Ï ÇϰڴÙ. »çÁ·ÀÌÁö¸¸ ¸¶ÀÌÅ©·Î¼ÒÇÁÆ® ¿ËÈ£·ÐÀÚµéÀº ¸¶ÀÌÅ©·Î¼ÒÇÁÆ®°¡ °¡Áö°í ÀÖ´Â Àý´ëÀûÀÎ Áö¹è·ÂÀ» ¹è°æÀ¸·Î ÇÏ¿© COM/OLE°¡ ¸¶Áö¸· ½Â¸®ÀÚ°¡ µÉ °ÍÀ̶ó°í ¸»Çϰí ÀÖ´Ù. ±×·¯³ª ¼ö¹é °³ÀÇ ±â¾÷ÀÌ °¡ÀÔÇÏ¿© °´Ã¼Ç¥ÁØ ±â¼úÀ» Á¤ÀÇÇϰí ÀÌ Ç¥ÁØÀ» ÁؼöÇÏ´Â Á¦Ç° °³¹ßÀ» ±ÇÀåÇϰí ÀÖ´Â OMG´Â COM/OLEÀÇ ½ÇÁ¦¸¦ ÀÎÁ¤ÇÏ°í °øÁ¸ÀÇ ±æÀ» ¸ð»öÇϰí ÀÖ´Ù. °ú¿¬ ¾ÕÀ¸·Î ÀÌ ÀüÀïÀÌ ¾î¶»°Ô ÆîÃÄÁúÁö´Â ¾Æ¹«µµ ¸ð¸£Áö¸¸ ÀÎÅͳÝÀ» Ç÷§ÆûÀ¸·Î ÇÑ »õ·Î¿î ȯ°æ¿¡¼­ ´õ ÀÌ»ó ºô°ÔÀÌÃ÷ÀÇ ¸¶ÀÌÅ©·Î¼ÒÇÁÆ®°¡ ¸ðµç ÁÖµµ±ÇÀ» Çà»çÇÏÁö´Â ¸øÇϰí ÀÖ´Ù. ¿Ö³ÄÇÏ¸é ¸ðµç ÄÄÇ»ÆÃ ȯ°æÀÌ ºô°ÔÀÌÃ÷ÀÇ À©µµ¿ì´Â ¾Æ´Ï±â ¶§¹®ÀÌ´Ù. °á±¹ ÀÌ µÎ ¼¼°è´Â °øÁ¸ÇÏ°Ô µÉ °ÍÀÌ´Ù.

¸ÕÀú ÀÌ µÎ °´Ã¼ ±â¼úÀÇ ºñ±³¸¦ À§ÇØ Å©°Ô ¸î°¡Áö ±âÁØÀ» ¼³Á¤ÇØ º¸µµ·Ï ÇÑ´Ù. ¸ÕÀú µÎ °´Ã¼±â¼úÀÇ ¹ÙÅÁÀÎ °´Ã¼ÀÇ ¸ðµ¨À» ±âÁØÀ¸·Î ºñ±³ÇÏ°í °´Ã¼ ¹ö½º·Î¼­ÀÇ ±â´É , IDL¿¡ ÀÇÇÑ ¾ð¾î ¸ÅÇÎ ±â´É , Á¦°øµÇ´Â ½Ã½ºÅÛ ¼­ºñ½º¸¦ ±âÁØÀ¸·Î »ìÆìº¸µµ·Ï ÇÑ´Ù.

1.5.1 °´ ü ¸ðµ¨À» ÅëÇÑ ºñ±³

CORBA¿¡¼­ Áö¿øÇÏ´Â °´Ã¼ ¸ðµ¨Àº °´Ã¼ ÁöÇâ ±â¼ú¿¡¼­ ¸»ÇÏ´Â ÀüÅëÀûÀÎ °´Ã¼ÀÌ´Ù. µû¶ó¼­ ÀÌ °´Ã¼´Â ³»ºÎ¿¡ µ¥ÀÌŸ¿Í ¸Þ¼Òµå·Î °¸½¶È­µÇ¾î ÀÖÀ¸¸ç ´ÜÀÏÇÑ ÀÎÅÍÆäÀ̽ºÀÎ Çã°¡µÈ public¸Þ¼Òµå¿¡ ÀÇÇØ¼­¸¸ ³»ºÎ¿¡ Á¢±ÙÇÒ ¼ö ÀÖ´Ù. ¶ÇÇÑ °´Ã¼µéÀÇ ±âº» ƲÀΠŬ·¡½ºµé »çÀÌÀÇ »ó¼Ó ±â´É°ú ´ÙÇü¼º µî ´Ù¾çÇÑ °´Ã¼ÁöÇâ ±â´ÉÀ» Á¦°øÇÑ´Ù. ¶ÇÇÑ ¸ðµç °´Ã¼´Â À¯ÀÏÇÑ ½Äº°ÀÚ¸¦ °®À¸¸ç °´Ã¼¿¡ Á¢±Ù½Ã À̸§À» ÀÌ¿ëÇÑ´Ù. ÀÌ¿¡ ¹ÝÇØ COM °´Ã¼´Â ÀüÅëÀûÀÎ °´Ã¼°¡ ¾Æ´Ï´Ù . ¸ÕÀú »ó¼ÓÀ» ÅëÇØ ±âÁ¸ÀÇ Å¬·¡½º¸¦ È®ÀåÇÒ ¼ö ¾ø´Ù. µû¶ó¼­ OLE ÄÄÆ÷³ÍÆ®ÀÇ Àç»ç¿ëÀº °¡´ÉÇϳª ÀÌÀÇ È®ÀåÀº ºÒ°¡´ÉÇÏ´Ù. ¶ÇÇÑ º¹¼ö °³ÀÇ ÀÎÅÍÆäÀ̽º¸¦ Á¦°øÇÔÀ¸·Î¼­ ĸ½¶È­ÀÇ °­µµ°¡ ¸¹ÀÌ ¾àÈ­µÇ¾ú´Ù.

´ÙÀ½ [Ç¥5-1]Àº CORBA¿Í COMÀÇ °´Ã¼ ¸ðµ¨À» ºñ±³ ¼³¸íÇÑ ³»¿ëÀÌ´Ù.
±â ´É CORBA COM/OLE
»ó¼ÓÀ» ÅëÇÑ È® Àå °¡´É ºÒ°¡´É
º¹¼öÀÇ ÀÎÅÍÆäÀ̽º °¡´É(»ó¼Ó±â´É) °¡´É
¿ÜºÎ¿ÍÀÇ ÀÎÅÍÆäÀ̽º °¡´É(Event¼­ºñ½º) °¡´É(Aggregation±â´É )
GUID Áö¿ø Áö¿ø
½Ç½Ã°£½Ã À¯ÀÏÇÑ °´ üID Áö¿ø Áö¿ø ¾ÈÇÔ
Àç»ç¿ë Áö¿ø(»ó¼Ó) Áö¿ø(Containment,

Aggregation)

Áö¿ø Ç÷§Æû À©µµ¿ì , ¸ÆÅ²Åä½Ã , OS/2 , À¯´Ð½º , VMS À©µµ¿ì

[ Ç¥ 5-1 ] CORBA¿Í COM/OLEÀÇ °´Ã¼ ¸ðµ¨ ºñ±³

1.5.2 °´ ü ¹ö½º·Î¼­ÀÇ ±â´É ºñ±³

°´Ã¼ ¹ö½º·Î¼­ CORBA¿Í COM/OLEÀ» ºñ±³ÇÏ´Â µ¥ ÀÖ¾î °¡Àå ÁÖ¿äÇÑ Á¡Àº ¿ø°ÝÁö°£ÀÇ °´Ã¼ ¼­ºñ½º Áö¿ø°ú ´Ù¾çÇÑ Ç÷§ÆûÀ» Áö¿øÇϴ°¡ ÇÏ´Â Á¡ÀÌ´Ù. ¿Ö³ÄÇϸé ÀÌ Á¡¿¡ µû¶ó ¸¹Àº ±â´ÉÀÌ Á¿ìµÇ±â ¶§¹®ÀÌ´Ù. ¿¹¸¦ µé¾î , ¿ø°ÝÁö°£ÀÇ °´Ã¼ ¼­ºñ½º¸¦ Áö¿øÇÑ´Ù¸é ÀÌ ¼­ºñ½º¸¦ À§ÇØ ¿ø°ÝÁö°£ÀÇ À̸§ ¼­ºñ½º, °´Ã¼IDº¯È¯ ¼­ºñ½º µîÀ» ¼ö¹ÝÇØ¾ß Çϱ⠶§¹®ÀÌ´Ù. ´ÙÀ½Àº ÀÌ¿¡ ´ëÇÑ ±â´ÉµéÀ» ºñ±³ÇÑ °ÍÀÌ´Ù. Âü°í·Î COMÀº ÀÎÅÍÆäÀ̽º Á¤Àǽà ODL(Object Definition Language)¶ó´Â ¸ÞŸ µ¥ÀÌŸ¸¦ Á¤ÀÇÇÒ ¼ö ÀÖ´Â ¾ð¾î¸¦ Á¦°øÇÑ´Ù. ÀÌ ¾ð¾î¸¦ ÀÎÅÍÆäÀ̽ºÀÇ Å¸ÀÔ Á¤º¸ µî ´Ù¾çÇÑ ¸ÞŸ Á¤º¸¸¦ ÀúÀåÇØ ÁØ´Ù.
±â ´É CORBA COM/OLE
¿ø°ÝÁö°£ °´Ã¼ ¼­ ºñ½º Áö¿ø Áö¿ø ¾ÈÇÔ
Á¤Àû ¸Þ¼Òµå È£Ãâ Áö¿ø Áö¿ø
µ¿Àû ¸Þ¼Òµå È£Ãâ Áö¿ø Áö¿ø
ÀÎÅÍÆäÀ̽º ÀúÀå¼Ò Áö¿ø Áö¿ø
ÄÄÆ÷³ÍÆ®°£ Àڷắȯ Áö¿ø(Stub-Skeleton) Áö¿ø
IDL Áö¿ø(IDL¸¸) Áö¿ø(ODL°ú MDL)
±¸Çö ÀúÀå¼Ò Áö¿ø(±¸Çö ÀúÀå¼Ò) Áö¿ø(·¹Áö½ºÆ®¸®)

[ Ç¥ 5-2 ] CORBA¿Í COM/OLEÀÇ °´Ã¼ ¹ö½º ºñ±³

1.5.3 ¾ð ¾î ¸ÅÇÎ ±â´É ºñ±³

CORBA¿Í COM/OLE¸ðµÎ ÀÀ¿ë ÇÁ·Î±×·¥°£ÀÇ È£È¯À» ±âº»À¸·Î ÇÑ´Ù. ±×·¯³ª À̸¦ À§ÇØ µÎ ¸ðµ¨ÀÌ Áö¿øÇÏ´Â ¹æ¹ý¿¡´Â »ó´çÇÑ Â÷À̰¡ ÀÖ´Ù.

¸ÕÀú COM/OLEÀÇ °æ¿ì´Â ÇѸ¶µð·Î ¸¶ÀÌÅ©·Î¼ÒÇÁÆ®ÀÇ C++À» ÅëÇÑ À©µµ¿ì °´Ã¼»çÀÌÀÇ ¹ÙÀ̳ʸ® ȣȯÀ» Áö¿øÇÑ´Ù¶ó°í ¸»ÇÒ ¼ö ÀÖ´Ù. ¿Ö³ÄÇϸé COM/OLEÀº ³»ºÎ ÀÎÅÍÆäÀ̽º Á¢±Ù½Ã ¸¶ÀÌÅ©·Î¼ÒÇÁÆ® C++ÄÄÆÄÀÏ·¯¿¡¼­ »ç¿ëÇÏ´Â vtableÀÇ ±¸Á¶¸¦ »ç¿ëÇϱ⠶§¹®¿¡ À̸¦ ÅëÇÑ ¾ð¾î ¸ÅÇÎÀº ÇÁ·Î±×·¡¸Ó³ª ´Ù¸¥ ÄÄÆÄÀÏ·¯ °³¹ßÀÚÀÇ Ã¥ÀÓÀÌ µÈ´Ù. ¶ÇÇÑ COM/OLE¿¡¼­ Á¦°øÇÏ´Â MIDLÀº DCE IDLÀ» ±â¹ÝÀ¸·Î Çϱ⠶§¹®¿¡ ±âº»ÀûÀ¸·Î C¸¸À» Áö¿øÇÑ´Ù.

ÀÌ¿¡ ¹ÝÇØ CORBAÀÇ °æ¿ì °³¹ß¾ð¾î µ¶¸³ÀûÀÎ ÀÀ¿ë ÇÁ·Î±×·¥ °³¹ßÀ» À§ÇØ IDL ¾ð¾î¸¦ ÅëÇØ ´Ù¸¥ ¾ð¾î·ÎÀÇ º¯È¯À» Áö¿øÇÑ´Ù. ÇöÀç C , C++, ½º¸ôÅåÀ» Áö¿øÁßÀ̸ç ÀÌÈÄ ÄÚº¼, ¿¡ÀÌ´Ù(Ada), ÀÚ¹Ù·ÎÀÇ º¯È¯À» ÃßÁøÁßÀÌ´Ù.
±â´É CORBACOM/OLE
¹ÙÀ̳ʸ® ȣȯ Áö¿ø Áö¿ø
C ¹ÙÀεù Áö¿ø Áö¿ø
C++ ¹ÙÀεù Áö¿ø Áö¿ø ¾ÈÇÔ
½º¸ôÅå ¹ÙÀεù Áö¿ø Áö¿ø ¾ÈÇÔ
±âŸ Ada , COBOL, Java,.. Áö¿ø¿¹Á¤ °í·Á ¾øÀ½

[ Ç¥ 5-3 ] CORBA¿Í COM/OLEÀÇ ¾ð¾î ¸ÅÇÎ ±â´É ºñ±³

1.5.4 ½Ã ½ºÅÛ ¼­ºñ½º ºñ±³

CORBA¿Í COM/OLE´Â °´Ã¼ ¹ö½º·Î¼­ÀÇ ¿ªÇÒÀ» À§ÇØ ´Ù¾çÇÑ ¼­ºñ½º¸¦ Á¦°øÇϰí ÀÖ´Ù. ±×·¯³ª ÀÌ µÎ ¸ðµ¨Àº ¼­ºñ½º¿¡¼­ ¸¹Àº Â÷À̸¦ º¸À̰í ÀÖ´Ù. ƯÈ÷ CORBAÀÇ °æ¿ì ºÐ»êȯ°æÀ» ±âº»À¸·Î Çϱ⠶§¹®¿¡ ´Ù¾çÇÑ ³×Æ®¿÷ °ü·Ã ¼­ºñ½º°¡ Æ÷ÇԵǾî ÀÖÀ¸¸ç ¹öÀüÀ̳ª °´Ã¼ Ư¼º µî ¼ø¼öÇÑ °´Ã¼ ÁöÇâ °³³äÀ» Áö¿øÇϱâ À§ÇÑ ¿©·¯ ¼­ºñ½ºµéÀÌ Á¦°øµÈ´Ù. ÀÌ¿¡ ¹ÝÇØ COM/OLEÀº À©µµ¿ì °´Ã¼ ¸ðµ¨À» ±â¹ÝÀ¸·Î Çϱ⠶§¹®¿¡ Á¦°øµÇ´Â ¼­ºñ½ºµµ ÀÌ¿¡ ÀÇÁ¸Çϰí ÀÖ´Ù. ´ÙÀ½ [Ç¥ 5-4]´Â ÀÌ·¯ÇÑ ¼­ºñ½ºµé¿¡ ´ëÇÑ ºñ±³Ç¥ÀÌ´Ù.
±â´É CORBACOM/OLE
À̺¥Æ® Áö¿øÁö¿ø
»ý¸íÁÖ±â Áö¿øÁö¿ø
À̸§ Áö¿øÁö¿ø
Áö¼Ó¼º Áö¿øÁö¿ø(¸ð´ÏÄ¿ ÀÌ¿ë )
ODBMSÅëÇÕ Áö¿ø Áö¿ø ¾ÈÇÔ
RDBMSÅëÇÕ Áö¿ø Áö¿ø¿¹Á¤(OLE DB)
¿ÜÇüÈ­(Externalization) Áö¿ø Áö¿ø
Æ®·»Á§¼Ç Áö¿øÁö¿ø¿¹Á¤(OLEÆ®·»Á§¼Ç )
µ¿½Ã¼º Á¦¾î Áö¿ø Áö¿ø ¾ÈÇÔ
°´Ã¼°£ °ü°è Áö¿ø Áö¿ø ¾ÈÇÔ
ÁúÀÇ Áö¿øÁö¿ø¿¹Á¤(OLE DB)
¶óÀ̼¾½Ì Áö¿øÁö¿ø
°´Ã¼ Ư¼º Áö¿ø Áö¿ø
¹öÀü Áö¿ø(º¯È­°ü¸®±â´É ) Áö¿ø ¾ÈÇÔ
º¸¾È Áö¿øÁö¿ø ¾ÈÇÔ
°´Ã¼ ÀÚµ¿ Á¦°Å Áö¿ø(ÂüÁ¶ Ä« ¿îÆ®) Áö¿ø(ÂüÁ¶ Ä« ¿îÆ®)

[ Ç¥ 5-4 ] CORBA¿Í COM/OLEÀÇ ¼­ºñ½º ºñ±³

1.6 CORBA¿Í COM/OLEÀÇ Çö »óÅÂ

ÇöÀç ¸¶ÀÌÅ©·Î¼ÒÇÁÆ®°¡ CORBA Ç¥ÁØÀ» Áö¿øÇÒ °ÍÀ̶ó´Â ¡Á¶´Â ±× ¾îµð¿¡µµ º¸ÀÌÁö ¾Ê´ÂÀÖ´Ù. ±×·¯³ª CORBA Ç¥ÁØ¿¡¼­´Â COM °´Ã¼¿ÍÀÇ Ç¥ÁØÀ» À§ÇØ ¸¹Àº ÇÒ¾Ö¸¦ Çϰí ÀÖ´Ù. »ó½ÄÀûÀ¸·Î ¸¶ÀÌÅ©·Î¼ÒÇÁÆ®ÀÇ À©µµ¿ì °´Ã¼°¡ Â÷ÁöÇϰí ÀÖ´Â ºÎºÐÀ» ¹«½ÃÇÒ ¼ö´Â ¾ø±â ¶§¹®ÀÏ °ÍÀÌ´Ù. À̸¦ À§ÇØ OMG´Â Å©°Ô 2°¡Áö ºÎºÐÀ¸·Î ³ª´©¾î COM°ú °áÇÕÀ» ÁغñÇϰí ÀÖ´Ù. ù¹øÂ° ºÎºÐÀº ÇöÀç COM°úÀÇ ÅëÇÕÀ» À§ÇÑ ±â¼úÀû Ç¥ÁØÀ» Á¦Á¤Çϰí ÀÖ´Â »óÅÂÀÌ¸ç µÎ¹øÂ° ºÎºÐÀº ¾ÕÀ¸·Î ¿¹°ßµÇ´Â ºÐ»êCOM°úÀÇ È£È¯À» À§ÇÑ Ç¥ÁØÀ» Áغñ Áß¿¡ ÀÖ´Ù.

±×·¸´Ù¸é Á» ´õ ±¸Ã¼ÀûÀ¸·Î OMG¿¡ ÀÇÇØ¼­ ÁøÇàµÇ°í ÀÖ´Â ÀϵéÀ» »ìÆìº¸¸é¼­ CORBA-COM°áÇÕÀ» À§ÇÑ ±¸Ã¼Àû ¹æ¹ýµé¿¡ ´ëÇØ »ìÆìº¸ÀÚ.

CORBA-COM ȣȯ¿¡ °üÇÑ ¸ðµç »çÇ׿¡ ´ëÇÑ ¹®¼­ÆíÁý ÀÛ¾÷Àº »çÀ̺£À̽º»ç¿¡¼­ ÁÖ°üÇϰí ÀÖÀ¸¸ç CORBA2.0°ú COM(OLE lib version 2.03)°úÀÇ ÀÎÅÍ³×Æ®¿öÅ·À» ¿¢½ºÆÛ¼ÒÇÁÆ®»ç¿¡¼­ , CORBA-COM¸ÅÇÎÀ» DEC¿Í ºñÁÖ¾ó¿§Áö»ç¿¡¼­ , CORBA-OLE¿ÀÅä¸ÞÀ̼ÇÀ» ¾ÆÀÌ¿À³ª¿¡¼­ ÁøÇàÇϰí ÀÖ´Ù. ÀÌ·¯ÇÑ ¸ðµç ÀÛ¾÷ÀÇ °øµ¿ÀÇ ¸ñÇ¥´Â ¾î¶² °´Ã¼ ¸ðµ¨À̳ª Ç¥ÁØ¿¡ ÀÎÀ§ÀûÀÎ º¯È­¸¦ °¡ÇÏÁö ¾Ê°í Åõ¸íÇÑ ¹æ¹ýÀ¸·Î CORBA°´Ã¼¿Í ȣȯ½ÃŰÀÚ´Â °ÍÀÌ´Ù. CORBA-COM ȣȯÀº ÇÁ·Î±×·¡¸Ó¿¡°Ô ¸¹Àº ±â´É°ú °¡´É¼ºÀ» ÁÖ°í ÀÖ´Ù. ¿¹¸¦ µé¸é, ÇöÀç »ó¿ëÈ­µÈ CORBA-OLE ¿ÀÅä¸ÞÀÌ¼Ç ±â´ÉÀ» ÀÌ¿ëÇϰí ÀÖ´Â ÇÁ·Î±×·¡¸Ó´Â ºÐ»êOLE±â´ÉÀ» ½ÇÁ¦ ±¸ÇöÇÒ ¼ö ÀÖÀ¸¸ç À©µµ¿ì µ¥½ºÅ©Å¾¿¡¼­ À¯´Ð½º¸¦ Æ÷ÇÔÇÑ ÀÌÁ¾ÀÇ ½Ã½ºÅÛ¿¡¼­ ¾òÀº µ¥ÀÌŸ¸¦ °¡°øÇÏ¿© Ç¥ÇöÇÒ ¼ö ÀÖ´Ù.

1.7 CORBA-COM ÅëÇÕ ¹æ¹ý

1.7.1 ¾î ¶² ÅëÇÕ ¹æ¹ýÀ¸·Î Ãâ¹ßÇÒ °ÍÀΰ¡?

½ÇÁ¦ CORBA´Â ¿÷½ºÅ×À̼ÇÀ̳ª ±âŸ ÁßÇü ¼­¹ö±Þ ȯ°æ¿¡¼­ °­¼¼¸¦ º¸À̰í ÀÖ´Ù. ±×·¯³ª À©µµ¿ì¶ó´Â ±×¸² ¿î¿µ üÁ¦·Î Ŭ¶óÀÌ¾ðÆ® ½ÃÀå¿¡ ±º¸²Çϰí ÀÖ´Â ¸¶ÀÌÅ©·Î¼ÒÇÁÆ®·Î ÀÎÇØ Ŭ¶óÀÌ¾ðÆ® ½ÃÀå¿¡¼­´Â ¾ÆÁ÷ È®½ÇÇÑ ÀÚ¸®¸¦ ÀâÁö ¸øÇϰí ÀÖ´Â ½ÇÁ¤ÀÌ´Ù. ´Ù½Ã ¸»ÇØ COM/OLE´Â À©µµ¿ì °´Ã¼µéÀÇ ´ëÇ¥À̰í CORBA´Â ±âŸ ´Ù¸¥ °´Ã¼µéÀÇ ´ëÇ¥ÀÎ »óȲÀÌ´Ù.±×·¯³ª ¾ÆÁ÷ ¸¶ÀÌÅ©·Î¼ÒÇÁÆ®ÀÇ °æ¿ì ±×µé ±â¼úÀÇ ÇÙ½ÉÀÎ COM/OLE°¡ ¾ÆÁ÷ ³×Æ®¿÷ ȯ°æÀ» Áö¿øÇÏÁö ¸øÇϱ⠶§¹®¿¡ ¸¹Àº CORBAÁ¦Ç°µéÀÌ À©µµ¿ì¸¦ ÁÖ¿ä °ø·« ´ë»óÀ¸·Î »ï°í ÀÖ´Ù. ÀÌ·¯ÇÑ »óȲÀ¸·Î ÆÇ´ÜÇϰǵ¥ ºÐ»ê °´Ã¼ ±â¼ú Ãø¸é¿¡¼­ CORBA°¡ COM/OLEº¸´Ù ¼ö ³âÀº ¾Õ¼­ ÀÖ´Â °ÍÀÌ ºÐ¸íÇÏ´Ù. ÀÌ·¯ÇÑ ¹è°æÇÏ¿¡¼­ ÅëÇÕ ½Ã½ºÅÛÀ» ±¸ÃàÇÏ·Á´Â ±â¾÷ ÀÔÀå¿¡¼­ º¸¸é ¾î¶² ±â¼úÀ» ÁÖ¿ä ±â¹Ý ±â¼ú·Î »ïÀ» °ÍÀÎÁö °áÁ¤ÇØ¾ß ÇÑ´Ù. ¸¸¾à ¾ÕÀ¸·Î ³ª¿Ã ³×Æ®¿÷ COM/OLE¸¦ ÀÌ¿ëÇÏ·Á¸é ¸ðµç ȯ°æÀ» À©µµ¿ì·Î ÅëÀÏÇϰųª ¿©·¯ ´Ù¸¥ ½Ã½ºÅÛ°ú ³×Æ®¿÷ COM/OLEÀÀ¿ë ½Ã½ºÅÛÀ» ¿¬µ¿½Ã۱â À§ÇÑ ¹æ¹ýÀ» ã¾Æ¾ß ÇÒ °ÍÀÌ´Ù.

±×·¯³ª ÇöÀç CORBA±â¼úÀ» ÀÌ¿ëÇÑ´Ù¸é ÇöÀçÀÇ COM/OLE±â¼ú°úÀÇ ¿¬µ¿°ú ¾ÕÀ¸·Î ³ª¿Ã ³×Æ®¿÷ COM/OLE±â¼ú°úÀÇ ¿¬µ¿¿¡ ´ëÇÑ ¹æ¹ýÀ» ã¾Æ¾ß ÇÑ´Ù. ´ÙÇàÈ÷µµ CORBAÇ¥ÁØÀ» ÁÖµµÇϰí ÀÖ´Â OMG¿¡¼­ CORBA¸¦ ±Ù°£À¸·Î Çϰí COM/OLE±â¼úÀ» ÅëÇÕÇϱâ À§ÇÑ ³ë·ÂµéÀ» °æÁÖÇϰí ÀÖÀ¸¸ç ±× °á°ú COM/OLE¿Í CORBAÀÇ ¿¬µ¿ ±â¼úÀÌ ¿©·¯ °³¹ß ¾÷ü¿¡ ÀÇÇØ¼­ °³¹ßµÇ¾úÀ¸¸ç ¾ÕÀ¸·Î ³ª¿Ã ³×Æ®¿÷ COM/OLE¿Í CORBA¿ÍÀÇ ¿¬µ¿À» À§ÇØ Áغñ Áß¿¡ ÀÖ´Ù. ƯÈ÷ ÀÌ·¯ÇÑ Á¢±Ù ¹æ¹ýÀº ´ë±Ô¸ðÀÇ ÄÄÇ»ÆÃ ȯ°æ°ú ´Ù¾çÇÑ ¿î¿µ üÁ¦ ¹× ÀÀ¿ë ÇÁ·Î±×·¥À» »ç¿ëÇϰí Àִ ȯ°æ¿¡ °¡Àå ÀûÇÕÇÏ´Ù°í ¸»ÇÒ ¼ö ÀÖ´Ù. ¶Ç Çϳª CORBA¿Í COM/OLE¸¦ ÅëÇÕÇÔÀ¸·Î¼­ ÇöÀçÀÇ COM/OLE¿¡ ³×Æ®¿÷ ±â¼úÀ» ºÒ¾î ³ÖÀ» ¼ö ÀÖÀ¸¸ç COM/OLE¸¦ ÅëÇØ À¯´Ð½º µî ´Ù¾çÇÑ È¯°æÇÏ¿¡¼­ À©µµ¿ì °´Ã¼¸¦ ÀÌ¿ëÇÒ ¼ö ÀÖ´Ù´Â È¿°ú¸¦ ¾òÀ» ¼ö ÀÖ´Ù.

1.7.2 COM/OLE¿Í ¿¬µ¿Çϱâ À§ÇÑ OMGÀÇ ³ë·Âµé

COM/OLE¿Í CORBA¸¦ ÅëÇÕÇϱâ À§ÇÑ ³ë·ÂÀº OMG¿¡ ÀÇÇØ¼­ ÁÖµµµÇ°í ÀÖ´Ù. ½ÇÁ¦ OMG´Â ºñ¿µ¸® ȸ»ç·Î¼­ ºÐ»ê °´Ã¼ Ç¥ÁØÀÎ CORBAÀÇ Ç¥ÁØÀ» ÁÖµµÇϰí ÀÖÀ¸¸ç ¼ö ¹é °³ÀÇ À¯¼öÇÑ ±â¾÷µéÀÌ ¿©±â¿¡ °¡ÀÔÇÏ¿© Ȱµ¿Çϰí ÀÖ´Ù. ÀÌ È°µ¿ Áß °ø½ÄÀûÀÎ COM/OLE¿Í CORBA¸¦ ÅëÇÕÇϱâ À§ÇÑ È°µ¿ ¸íĪÀº COM-CORBA Interworking ÀÌ´Ù. ÀÌ È°µ¿Àº 1995³â 4¿ù ½ÃÀ۵Ǿú´Âµ¥ Å©°Ô Part A¿Í Part B·Î ±¸ºÐµÇ¾î Ȱµ¿Çϰí ÀÖ´Ù. ÀÌ È°µ¿ÀÇ ±âº»ÀûÀÎ ¸ñÀûÀº COM/OLE¿Í CORBAÀÇ °´Ã¼ ¸ðµ¨¿¡ º¯È­¸¦ °¡ÇÏÁö ¾Ê°í »óÈ£ ¿¬µ¿ÇÏ°Ô ¸¸µå´Â °ÍÀÌ´Ù.

°¢ ºÎºÐ¿¡¼­ ÇÏ´Â ÀÏÀ» »ìÆìº¸¸é ¸ÕÀú Part A¿¡¼­´Â ±âÁ¸ÀÇ COM°ú CORBA»çÀÌÀÇ »óÈ£ ¿¬µ¿À» À§ÇÑ ¹æ¹ýÀ» À§ÇØ È°µ¿Çϰí ÀÖÀ¸¸ç ÇöÀç ´ëºÎºÐÀÇ ¿¬µ¿ ¹æ¹ýÀÌ Á¦¾ÈµÇ¾ú°í ¸¹Àº ȸ»ç¿¡¼­ ÀÌ ¹æ¹ýÀ» Áö¿øÇϰí ÀÖ´Ù. ÇöÀç ¸ñÇ¥´Â CORBA2.0 °ú OLE ¶óÀ̺귯¸® ¹öÀü 2.03»çÀÌÀÇ ¿¬µ¿ ¹æ¾È°ú ¾ç¹æÇâ Åë½ÅÀ» ¸ñÇ¥·Î Çϰí ÀÖ´Ù.

´ÙÀ½Àº Part A¿¡ Âü¿©Çϰí Àִ ȸ»çµé°ú À̵éÀÇ ¿ªÇÒµéÀÌ´Ù.

Âü¿©È¸»ç : Digital Equipment Corporation -> COM-CORBA ¸ÅÇÎ ±â¼ú

Expersoft Corporation -> »óÈ£ ¿¬µ¿ ±¸Á¶

FUJITSU LIMITED

Hewlett-Packard Company

Genesis Development Corporation -> OLE Automation°ú CORBA¿¬µ¿

International Business Machine Corporation

IONA Technologies,Ltd -> OLE Automation°ú CORBA¿¬µ¿

Simens Nixdorf Information System AG

SunSoft, Inc

Sybase, Inc -> Àü¹ÝÀû ÀÎ ¹®¼­ÀÛ¾÷

Visual Edge Software, Ltd -> COM-CORBA ¸ÅÇÎ ±â¼ú

Part B¿¡¼­´Â COMÀÇ ³×Æ®¿÷ ¹öÀü°ú CORBA»çÀÌÀÇ »óÈ£ ¿¬µ¿À» À§ÇÑ ¹æ¹ý¿¡ ´ëÇØ ¿¬±¸Çϰí ÀÖ´Ù. ÇöÀç Part BÀÇ È°µ¿¿¡ Âü¿©Çϰí ÀÖ´Â ±â¾÷À¸·Î´Â ¾Æ·¡¿Í °°´Ù.

ÅõÇ¥ °¡´ÉÇÑ Âü¿© ±â¾÷µé: APM, AT&T, BNR, Bull, CI Labs, Data Access, Defense Information Systems Agency, Digital, Expersoft, Fujitsu, GPT Ltd., Genesis, Gensym , Hewlett-Packard, HyperDesk, ICL, IONA, Informix, International Business Machines, MITRE, Micro Focus, Microsoft , NEC, NIIIP, NSA, Nokia, Novell, OGIS, OSF, Objective Interface Systems, Objectivity, Odyssey, Olivetti, Oracle, POSC, Protocol Systems , Raytheon, Rogue Wave Software, SNI, Santz Cruz Operations, SunSoft, Sybase, Taligent, Tandem, Tivoli, Unisys, Univ. Michigan, Visual Edge

1.7.3 COM/OLE¿ÍÀÇ ¿¬µ¿ ¹æ¹ý

1.7.3.1 COM/OLE - CORBA¿¬µ¿ ½Ã Áö¿øÇØ¾ß ÇÏ´Â Çʼö ±â´Éµé

¹Ù·Î º»·Ð¿¡ µé¾î°¡±â¿¡ ¾Õ¼­ COM/OLE¿Í CORBA¸¦ ÅëÇÕÇÏ´Â µ¥ ÀÖ¾î Áö¿øÇØ¾ß ÇÏ´Â ±âº»ÀûÀÎ ±â´ÉµéÀ» Á¤¸®ÇØ º¸ÀÚ.

COM °´Ã¼¿Í CORBA°´Ã¼´Â °íÀ¯ÇÑ ¸Þ¼Òµå È£Ãâ ¹æ½ÄÀ» °¡Áö°í ÀÖ´Ù. ±×·¯³ª COM/OLE-CORBA¿¬µ¿½Ã¿¡´Â COM/OLE°´Ã¼°¡ CORBAÀÇ ¸Þ¼Òµå¸¦ È£ÃâÇÒ ¼ö ÀÖ¾î¾ß ÇÏ¸ç ¹Ý´ë·Î CORBA°´Ã¼°¡ COM/OLEÀÇ ¸Þ¼Òµå¸¦ È£ÃâÇÒ ¼ö ÀÖ¾î¾ß ÇÑ´Ù. ÀÌ·¯ÇÑ ±â´ÉÀ» Áö¿øÇϱâ À§ÇÑ ¸ðµ¨·Î´Â °¢°¢ÀÇ °´Ã¼¿¡ ¸Þ¼Òµå È£ÃâÀ» ¼öÇàÇÏ´Â ´ë¸® °´Ã¼·Î¼­ ÇÁ·Ï½Ã °´Ã¼¸¦ ¸¸µé ¼ö ÀÖ´Ù. ¿¹¸¦ µé¸é, CORBA ÇÁ·Ï½Ã °´Ã¼ÀÇ °æ¿ì OLEÀÇ IUnknown ÀÎÅÍÆäÀ̽º¸¦ ÀÌ¿ëÇϸç COM/OLEÇÁ·Ï½ÃÀÇ °æ¿ì CORBAÀÇ µ¿Àû È£ÃâÀ̳ª Á¤Àû È£Ã⠱׸®°í ±¸Çö ÀúÀå¼Ò µîÀ» ÀÌ¿ëÇÒ ÁÙ ¾Ë¸é »ó´ë¹æÀÇ ¸Þ¼Òµå¸¦ È£ÃâÇÒ ¼ö ÀÖ´Â Á¤º¸¸¦ ÁغñÇÑ ¼ÀÀÌ´Ù.

COM/OLE¿¡ ¼­ »ç¿ëÇÏ´Â µ¥ÀÌŸ ŸÀÔ°ú CORBA¿¡¼­ÀÇ µ¥ÀÌŸ ŸÀÔÀº ¼­·Î °£¿¡ ¸ÅÇεǾßÇÑ´Ù. ½ÇÁ¦ ÀÌ °æ¿ì ¼ýÀÚ°°Àº ±âº»ÀûÀΠŸÀÔÀº º°¹®Á¦¸¦ ÀÏÀ¸Å°Áö ¾ÊÁö¸¸ CORBAÀÇ any ŸÀÔ°ú OLEÀÇ VariantŸÀÔ»çÀÌÀÇ º¯È¯Àº ¸¹Àº ±â¼úÀ» ¿ä±¸ÇÑ´Ù.

CORBAÀÇ ÀÀ¿ë ÇÁ·Î±×·¥ ÀÛ¼º ¾ð¾î´Â IDLÀÌ´Ù. ¸¶Âù°¡Áö·Î COMÀº MIDL(Microsoft IDL), OLEÀÇ °æ¿ì ODLÀ» »ç¿ëÇÏ¿© ÀÎÅÍÆäÀ̽º¸¦ ÀÛ¼ºÇÑ´Ù. µû¶ó¼­ À̵é IDL¾ð¾îµé »çÀÌÀÇ ¸ÅÇÎÀº ÇʼöÀûÀÌ´Ù. ƯÈ÷ CORBA IDL°æ¿ì º¹¼ö »ó¼ÓÀ» Áö¿øÇϱ⠶§¹®¿¡ º¹¼ö »ó¼Ó °³³äÀÌ ¾ø´Â MIDL°ú ODL¿¡¼­ ÀÌµé °ü°è¸¦ Ç¥ÇöÇÒ ¼ö ÀÖ´Â ¹æ¹ýµéÀÌ °í¾ÈµÇ¾ß ÇÑ´Ù.

CORBA¿¡¼­ ÀÇ ¿¹¿Ü »óȲ ó¸®¿Í COM/OLE´Â ¿¹¿Ü »óȲ 󸮽à ±× ¹æ¹ýÀÌ ´Ù¸£´Ù. µû¶ó¼­ °¢ÀÚ ¹ß»ýÇÑ ¿¹¿Ü »óȲÀ» ´Ù¸¥ ÂÊÀ¸·Î Àü´ÞÇÏ¿© ÀûÀýÇÏ°Ô ´ëóÇÏ°Ô ÇÏ´Â ¹æ¹ýÀÌ ÇÊ¿äÇÏ´Ù.

CORBAÀÇ °æ¿ì °´Ã¼ÀÇ »ý¼º°ú ¼Ò¸êÀÌ »ç¿ëÀÚ³ª ¼­¹ö ÇÁ·Î±×·¥¿¡ ÀÇÇØ¼­ ÀÚÀ¯·Ó°Ô ÀÌ·ç¾îÁø´Ù. ±×·¯³ª COM/OLEÀÇ °æ¿ì ÆÑÅ丮(Factory)¶ó´Â Ŭ·¡½º¸¦ ÅëÇØ °´Ã¼¸¦ »ý¼ºÇÏ¸ç °´Ã¼¿¡ ´ëÇÑ ÂüÁ¶ º¯¼ö¿¡ ÀÇÇØ¼­ °´Ã¼¸¦ ¼Ò¸êÇÑ´Ù. µû¶ó¼­ ¼­·Î °£ÀÇ °´Ã¼¸¦ »ý¼º½ÃŰ°í ¼Ò¸ê½Ãų ¼ö ÀÖ´Â ÀϰüÀûÀÎ ¹æ¹ýÀÌ Áö¿øµÅ¾ß ÇÑ´Ù.

COM/OLE°´ üÀÇ ¸ðµç Á¤º¸´Â ·¹Áö½ºÆ®¸®¶ó´Â À©µµ¿ì Á¤º¸ ÀúÀå¼Ò¿¡ ÀúÀåµÈ´Ù. ÀÌ¿¡ ¹ÝÇØ CORBA°´Ã¼ÀÇ °æ¿ì ±¸Çö ÀúÀå¼Ò¿Í ÀÎÅÍÆäÀ̽º ÀúÀå¼Ò¿¡ ¸ðµç Á¤º¸°¡ ÀúÀåµÈ´Ù. µû¶ó¼­ CORBA¿Í COM/OLEÀÇ »óÈ£ ¿¬µ¿½Ã ¼­·Î °£ÀÇ °´Ã¼¸¦ ·¹Áö½ºÆ®¸®¿Í ±¸Çö ÀúÀå¼Ò, ÀÎÅÍÆäÀ̽º ÀúÀå¼Ò¿¡ ÀúÀåÇϱâ À§ÇÑ ¹æ¹ýÀÌ ÇÊ¿äÇÏ´Ù.

1.7.3.2 COM/OLE-CORBA »óÈ£ ¿¬µ¿ ¿øÄ¢°ú ±¸Á¶

¾Õ¼­µµ ¾ð±ÞÇßÁö¸¸ COM/OLE¿Í CORBA»çÀÌÀÇ ¿¬µ¿½Ã ´ÙÀ½ÀÇ »ç¾ÈÀ» ±¸Á¶»óÀÇ ¸ñÇ¥·Î Çϰí ÀÖ´Ù.

ÀÌ·¯ÇÑ ¸ñÇ¥¸¦ Áö¿øÇϱâ À§ÇØ ÇöÀç »ç¿ëµÇ°í ÀÖ´Â ¹æ¹ýÀº ¾ç¹æÇâ º¯È¯ÀÌ °¡´ÉÇÑ °ÔÀÌÆ®¿þÀ̸¦ ÀÛ¼ºÇÏ´Â °ÍÀÌ´Ù.( ȤÀÚ´Â À̸¦ ºê¸®Áö¶ó°íµµ ÇÑ´Ù .)

¸ÕÀú °ÔÀÌÆ®¿þÀ̸¦ ÅëÇØ COM/OLE°´Ã¼°¡ CORBA±¸Çö °´Ã¼¸¦ È£ÃâÇÏ´Â °úÁ¤À» Á¤¸®Çغ¸ÀÚ. ÀÌ °úÁ¤Àº ¿¬ÀÌ¾î ¼³¸íµÇ´Â ¸¹Àº ÅëÇÕ ±â´ÉÀ» ÀÌÇØÇϴµ¥ ÇÊ¿äÇÑ ¹Ø°Å¸§ÀÌ µÉ °ÍÀÌ´Ù. ÃÖÃÊ OLE°´Ã¼´Â CORBA±¸Çö °´Ã¼¸¦ È£ÃâÇϱâ À§ÇØ ÇÁ·Ï½Ã °´Ã¼ÀÇ IUnknown°ú IDispatch¸¦ ÅëÇØ CORBA±¸Çö °´Ã¼¸¦ È£ÃâÇÑ´Ù. À̶§ °ÔÀÌÆ®¿þÀÌ´Â ÀÌ È£ÃâÀ» CORBA¿¡¼­ È£Ãâ°¡´ÉÇϵµ·Ï º¯È¯ÇØÁØ´Ù. º¯È¯µÈ È£ÃâÀº CORBAÀÇ µ¿Àû È£Ãâ ¹æ¹ýÀ» »ç¿ëÇÏ¿© ÇØ´ç CORBA ¼­¹ö°´Ã¼¿¡°Ô Àü´ÞµÈ´Ù. ÀÌ °úÁ¤¿¡¼­ ÇÊ¿äÇÑ ÇÁ·Ï½Ã °´Ã¼¿Í º¯È¯ ±â´ÉÀº °ÔÀÌÆ®¿þÀÌ¿¡¼­ Á¦°øÇØ¾ß ÇÑ´Ù.


[ ±×¸² 5-15 ] OLEŬ¶óÀÌ¾ðÆ®¿¡¼­ CORBA ±¸Çö °´Ã¼·ÎÀÇ È£Ãâ

¾Õ¼± °æ¿ì¿Í ¹Ý´ë·Î CORBAŬ¶óÀÌ¾ðÆ® °´Ã¼¿¡¼­ OLE¼­¹ö¸¦ È£ÃâÇÏ´Â °úÁ¤À» »ý°¢Çغ¸ÀÚ. CORBAŬ¶óÀÌ¾ðÆ®´Â COM/OLE¼­¹öÀÇ Á¸Àç¿¡ ¹«°üÇÏ°Ô ÇØ´ç ¼­¹ö¿¡ ´ëÇÑ È£ÃâÀ» ¿äûÇÑ´Ù. ÀÌ ¿äûÀº CORBA2.0¸í¼¼¿¡¼­ Á¦¾ÈµÈ µ¿Àû ½ºÄÌ·ÎÅÏ ÀÎÅÍÆäÀ̽º¸¦ ÅëÇØ ·ÎÄà ¶Ç´Â ¸®¸ðÆ®¿¡ Á¸ÀçÇÏ´Â COM ±¸Çö °´Ã¼¿¡°Ô Àü´ÞµÈ´Ù. ÀÌ °úÁ¤¿¡¼­ COM/OLE¼­ºñ½º¸¦ ÀÌ¿ëÇϱâ À§ÇØ CORBA¿äûÀº COM/OLE¿äûÀ¸·Î º¯È¯µÇ¸ç °á±¹ COMÀ» ÅëÇØ ÇØ´ç OLE¼­¹öÀÇ IDispatch¸¦ »ç¿ëÇÏ¿© ¿øÇÏ´Â ¸Þ¼Òµå¸¦ È£ÃâÇÒ ¼ö ÀÖ°Ô µÇ´Â °ÍÀÌ´Ù. ÀÌ °úÁ¤¿¡¼­ ÇÊ¿äÇÑ ¸ðµç ÀÛ¾÷Àº °ÔÀÌÆ®¿þÀ̰¡ ´ã´çÇÏ¸ç ¸ðµç º¹ÀâÇÑ ±â´ÉÀº »ç¿ëÀÚ¿¡°Ô °¡·ÁÁø´Ù. µû¶ó¼­ »ç¿ëÀÚ´Â ÇØ´ç ¼­¹ö°¡ CORBAÀ̵ç COM/OLEÀÌµç »ó°ü¾øÀÌ ¿øÇÏ´Â ¼­ºñ½º¸¦ ÀÌ¿ëÇÒ ¼ö ÀÖ´Ù.

[ ±×¸²5-16 ] CORBAŬ¶óÀÌ¾ðÆ®¿¡¼­ OLE¼­¹ö·ÎÀÇ È£Ãâ

1.7.3.3 COM/OLE-CORBA ¿¬µ¿ ±â¼ú

1.7.3.3.1 COM/OLE-CORBA »óÈ£ ȣȯ °´Ã¼ ¸ðµ¨ ÀÌÇØ

CORBA¿Í COM/OLE´Â °øÅëÀûÀ¸·Î °´Ã¼ÁöÇâ ±â¼úÀ» Áö¿øÇÏ´Ù´Â Ãø¸é¿¡¼­ ÀÏÁ¤ Á¤µµ °øÅëÁ¡À» °®°í ÀÖ´Ù. ±×·¯³ª CORBA°¡ ¼ø¼ö °´Ã¼ÁöÇâ ±â¼úÀ» Áö¿øÇÑ´Ù¸é COM/OLE´Â ¼ø¼ö °´Ã¼ÁöÇâ ±â¼ú Áß ÀÏÁ¤ ºÎºÐ¸¸À» Áö¿øÇϰí ÀÖ´Ù. °¡·É, CORBAÀÇ °æ¿ì ´ÜÀÏ »ó¼Ó°ú ´ÙÁß »ó¼Ó ¸ðµÎ¸¦ Áö¿øÇÏ´Â µ¥ ¹ÝÇØ COM/OLEÀÇ °æ¿ì »ó¼Óº¸´Ù´Â ¿¡±×¸®°ÔÀ̼Ç(Aggregation)À̶ó´Â °³³ä¸¸À» Áö¿øÇϰí ÀÖ´Ù. ´ÙÀ½Àº ÀÌ µÎ ¸ðµ¨µé¿¡¼­ Á¦°øÇÏ´Â ±â´Éµé¿¡ ´ëÇÑ ºñ±³ÀÌ´Ù.( CORBA¿Í COMÀÇ ÀÚ¼¼ÇÑ ºñ±³´Â ¾Õ ÀåÀ» ÂüÁ¶Çϱ⠹ٶõ´Ù. )
CORBA COM OLE ¿ÀÅä¸ÞÀ̼Ç
ÀÎÅÍÆäÀ̽º IDL·Î ÀÛ¼ºµÇ¸ç ±× Á¤º¸°¡ ÀÎÅÍÆäÀ̽º ÀúÀå¼Ò¿¡ ÀúÀåµÈ´Ù . ´ÙÁß »ó¼Óµî °¢Á¾ °´Ã¼ÁöÇâ ±â´ÉÀ» Áö¿øÇÑ´Ù. MIDL·Î ÀÛ¼ºµÇ¸ç ¿¡±×¸®°ÔÀ̼ÇÀ» Áö¿øÇÑ´Ù. ODL·Î ÀÛ¼ºµÇ¸ç TypeLib¶ó´Â °÷¿¡ Á¤º¸°¡ Àú ÀåµÈ´Ù.
¸Å°³º¯¼ö ±âº» µ¥ÀÌŸ Ÿ ÀÔ, °´Ã¼ ÂüÁ¶ÀÚ, »ç¿ëÀÚ Á¤ÀÇ Å¸ÀÔ ±âº» µ¥ÀÌŸ Ÿ ÀÔ, °´Ã¼ ÂüÁ¶ÀÚ, »ç¿ëÀÚ Á¤ÀÇ Å¸ÀÔ ±âº» µ¥ÀÌŸ Ÿ ÀÔ, °´Ã¼ ÂüÁ¶ÀÚ, ¹è¿­
°´Ã¼ ÂüÁ¶ÀÚ Æ¯Á¤ ¹æ½ÄÀ¸·Î ¼± ¾ðµÊ C++ÀÇ vtblÀ̶ó´Â ÇÔ¼ö Å×ÀÌºí¿¡ ´ëÇÑ Æ÷ ÀÎÅÍ C++ÀÇ vtblÀ̶ó´Â ÇÔ¼ö Å×ÀÌºí¿¡ ´ëÇÑ Æ÷ ÀÎÅÍ
¼­¹ö È£Ãâ ¹æ¹ý Á¤Àû,µ¿Àû ¸ð µÎ °¡´ÉÇϸç ORB¿¡ ÀÇÇØ¼­ °üÀåµÈ´Ù. vtblÀ» ÅëÇØ È£ÃâµÇ¸ç ÇÁ·Ï½Ã¿Í ½ºÅͺê·Î ÀÌ·ç¾îÁ® ÀÖ ´Ù. ½Ç½Ã°£ ÀÎÅÍÇÁ¸®Å͸¦ Åë ÇØ È£ÃâÇÑ´Ù.

[ Ç¥5-5 ] COM/OLE/CORBA °´Ã¼ ¸ðµ¨ ºñ±³

¾Õ¼­ »ìÆìº» °Íó·³ COM/OLE¿Í CORBAÀÇ °´Ã¼ ¸ðµ¨ÀÌ ´Ù¸£´Ù ÇÏ´õ¶óµµ À̵éÀÇ »óÈ£ ¿¬µ¿À» À§ÇÑ °ÔÀÌÆ®¿þÀÌ´Â À̵éÀÇ Â÷ÀÌÁ¡¿¡ ¹«°üÇÏ°Ô ÀÌ¿ëÇÒ ¼ö ÀÖ¾î¾ß ÇÑ´Ù. µû¶ó¼­ µÎ °´Ã¼ ¸ðµ¨Àº ´ÙÀ½Ã³·³ »óÈ£ ¿¬µ¿µÅ¾ß ÇÑ´Ù.

¸ÕÀú ÇÑ °´Ã¼A°¡ ´Ù¸¥ °´Ã¼B¸¦ È£ÃâÇϱâ À§Çؼ­´Â ÇØ´ç °´Ã¼¿¡ ´ëÇÑ °´Ã¼ ÂüÁ¶ÀÚ¸¦ ¾ò¾î¾ß ÇÑ´Ù. À̸¦ À§ÇØ °´Ã¼A´Â °´Ã¼BÀ» ÀϹÝÀûÀΠȣÃâ ¹æ¹ýÀ» »ç¿ëÇÏ¿© ÂüÁ¶ÇÑ´Ù. À̶§ ÀÌ ÂüÁ¶´Â °ÔÀÌÆ®¿þÀ̸¦ ÅëÇØ ÇØ´ç °´Ã¼B¿¡°Ô Àü´ÞµÇ°í °ÔÀÌÆ®¿þÀÌ´Â °´Ã¼BÀÇ °´Ã¼ ÂüÁ¶ÀÚ¸¦ °´Ã¼A¿¡°Ô Á¦°øÇØÁØ´Ù. °´Ã¼A´Â °´Ã¼BÀÇ ¸ðµ¨¿¡ »ó°ü¾øÀÌ »óÈ£ ¿¬µ¿ÇÒ ¼ö ÀÖ´Ù.

[ ±×¸²5-17 ] COM/OLE-CORBA °´Ã¼°£ »óÈ£ ¿¬µ¿ ¸ðµ¨

1.7.3.3.2 COM/OLE-CORBA »óÈ£ ¿¬µ¿ ±¸Á¶

¾Õ¼± °´Ã¼ ¸ðµ¨¿¡ ±Ù°ÅÇÏ¿© COM/OLE¿Í CORBA»çÀÌ¿¡¼­´Â [±× ¸²5-18]¿Í [±× ¸²5-19]ó·³ »óÈ£ ¿¬µ¿ÀÌ °¡´ÉÇÏ´Ù. [±×¸²5-18]ÀÇ °æ¿ì ·ÎÄà ÄÄÇ»Åͻ󿡼­ ³×Æ®¿÷À» °æÀ¯ÇÏÁö ¾Ê°í »óÈ£ ¿¬µ¿½Ã ¹ß»ýÇÏ´Â °úÁ¤À» ¹¦»çÇÑ °ÍÀÌ´Ù. ÀÌ¿¡ ¹ÝÇØ [±×¸²5-19]ÀÇ °æ¿ì´Â TCP/IP³×Æ®¿÷»ó¿¡¼­ IIOP¸¦ ÅëÇÑ »óÈ£¿¬µ¿ °úÁ¤À» ÀǹÌÇÑ´Ù.

[ ±×¸²5-18 ] ·ÎÄà ÄÄÇ»ÅÍ¿¡¼­ COM/OLE - CORBA °´Ã¼ »óÈ£¿¬µ¿ ±¸Á¶

[ ±×¸²5-19 ] ³×Æ®¿÷»ó¿¡¼­ COM/OLE - CORBA °´Ã¼ »óÈ£¿¬µ¿ ±¸Á¶

  1. 7.3.3.3±¸¼º¿ä¼Òº° »óÈ£ ¿¬µ¿ ¹æ¹ý

½ÇÁ¦ COM°ú OLE, CORBA¸ðµÎ ´Ù¸¥ ÀÎÅÍÆäÀ̽º¸¦ °¡Áö°í ÀÖ´Ù. ¸ÕÀú OLE´Â ¸Þ¼ÒµéÀÇ ÁýÇÕÀ¸·Î¼­ ÀÌ ÁýÇÕÀÇ ´ëÇ¥ Æ÷ÀÎÅ͸¦ ÅëÇØ ¿øÇÏ´Â ¸Þ¼Òµå¸¦ ÀÌ¿ëÇÑ´Ù. ¶ÇÇÑ COMÀº »ó¼Óº¸´Ù´Â ¿¡±×¸®°ÔÀ̼ÇÀ» Áö¿øÇÑ´Ù. ¸¶Áö¸·À¸·Î CORBAÀÇ °æ¿ì ´ÙÁß »ó¼ÓÀ» ¹ÙÅÁÀ¸·Î ÀÎÅÍÆäÀ̽ºÀÇ »ó¼Ó ±â´ÉÀ» Áß½ÃÇϴ Ư¡À» °¡Áö°í ÀÖ´Ù. ÀÌ·¯ÇÑ »óȲ¿¡¼­ À̵é ÀÎÅÍÆäÀ̽º »çÀÌÀÇ ¸ÅÇÎÀº Áö¿øµÅ¾ß ÇÑ´Ù.

CORBA IDL ÀÇ »ó¼Ó ±â´ÉÀº COM MIDL·Î 1:1 ¸ÅÇεȴÙ. ÀÌ ¶§ ¸Þ¼Òµå ½ÇÇà½Ã ÇÊ¿äÇÑ ¼ø¼­µîÀº ¸í½ÃµÅ¾ß ÇÑ´Ù. ÀÌ¿¡ ¹ÝÇØCOM MIDLÀÎÅÍÆäÀ̽ºµéÀ» CORBA IDL»óÀÇ ÀÎÅÍÆäÀ̽ºµéµµ ´ÜÀÏÇÏ°Ô º¯È¯ÇÒ ¼ö ¾ø´Ù. µû¶ó¼­ CORBA IDL»óÀÇ º¹ÇÕ°´Ã¼ °³³ä(´Ù¸¥ ÀÎÅÍÆäÀ̽º¸¦ ÇÑ ÀÎÅÍÆäÀ̽ºÀÇ Å¸ÀÔÀ¸·Î »ç¿ë)À» ÀÌ¿ëÇÏ¿© º¯È¯ÇÑ´Ù.

OLE »ó¿¡ ¸Þ¼ÒµåµéÀº ¼ø¼­¸¦ °¡Áö°í ÀÖÁö ¾Ê´Ù. µû¶ó¼­ CORBA ¸Þ¼ÒµåµéÀº ÇϳªÀÇ OLE ¿ÀÅä¸ÞÀÌ¼Ç ÀÎÅÍÆäÀ̽º·Î º¯È¯ÇÒ ¼ö ÀÖ´Ù. ÀÌ ¶§ ¿ÀÅä¸ÞÀÌ¼Ç ÀÎÅÍÆäÀ̽º´Â µÎ°¡Áö Ãø¸é¿¡¼­ CORBA IDLÀ» ¸ÅÇÎÇÑ´Ù. Çϳª´Â ¸ðµç ¸Þ¼ÒµåµéÀ» ´ÜÀÏÇÑ vtbl·Î ¸ÅÇνÃŰ´Â °ÍÀÌ°í ´Ù¸¥ Çϳª´Â ¸Þ¼ÒµåµéÀÇ ¼ø¼­³ª ÀÎÅÍÆäÀ̽ºµéÀÇ ¼ø¼­¸¦ ¹Ì¸® °áÁ¤ÇØ ³õ´Â °ÍÀÌ´Ù.


[ ±×¸² 5-20 ] CORBA IDL¿¡¼­ COM/OLE·ÎÀÇ º¯È¯

°´Ã¼ÀÇ »ý¼º¿¡¼­ ¼Ò¸ê·Î À̾îÁö´Â °úÁ¤ ¿ª½Ã COM/OLE¿Í CORBA´Â °¢±â ´Ù¸£´Ù. COM/OLEÀÇ °æ¿ì º»·¡ °´Ã¼ÀÇ »ý¼ºÀº FactoriesŬ·¡½º¿¡ ÀÇÇØ¼­ »ý¼ºµÇ¸ç ÀϽÃÀûÀ¸·Î »ç¿ëµÇ¾î Áö´Â Ư¡À» °¡Áö°í ÀÖ´Ù. ¶ÇÇÑ COM/OLEÀÇ °´Ã¼ ÂüÁ¶ Ä«¿îÆÃ ¹æ¹ýÀº ºÐ»ê ȯ°æÀÇ ±Ô¸ð°¡ Ä¿Áú¼ö·Ï ¸¹Àº ¹®Á¦Á¡À» ¾ß±â½ÃŲ´Ù. ÀÌ¿¡ ¹ÝÇØ CORBA´Â C ³ª C++µî¿¡¼­ »ç¿ëÇÏ´ø ÀüÅëÀûÀÎ °´Ã¼ »ý¼º ¹æ¹ýÀ» »ç¿ëÇϸç FactoriesŬ·¡½º¸¦ ÅëÇÑ °´Ã¼ »ý¼ºÀº factory±â´ÉÀ» Á¦°øÇϴ Ŭ·¡½º¿¡ ¿øÇÏ´Â °´Ã¼¸¦ µî·ÏÇÑ ÈÄ »ç¿ëÇÒ ¼ö ÀÖ´Ù.

ÀÌ·¯ÇÑ Â÷À̸¦ ±Øº¹Çϱâ À§ÇÑ Á¦¾ÈµÈ ¹æ¹ýÀ¸·Î´Â COM/OLEÃø¿¡ CosLifeCycle :: LifeCycleObject ¶ó´Â ÀÎÅÍÆäÀ̽º¸¦ µÎ°í ÀÌ ÀÎÅÍÆäÀ̽º¿¡ CORBA°´Ã¼ ÂüÁ¶ÀÚ¸¦ Ãß°¡ÇÏ°í »èÁ¦ÇÏ´Â ±â´ÉÀ» Á¦°øÇÏ¿© CORBA°´Ã¼ÀÇ ¶óÀÌÇÁ»çÀÌŬÀ» °ü¸®ÇÏ´Â ¹æ¹ý µîÀ» µé ¼ö ÀÖ´Ù.

CORBAÀÇ °´Ã¼ ÂüÁ¶ÀÚ¸¦ ÀúÀåÇϰí COMÃø¸é¿¡¼­ Á¶ÀÛÇÒ ¼ö ÀÖµµ·Ï ÇØÁÖ´Â IMonikerProvider ÀÎÅÍÆäÀ̽º¿Í COMŬ¶óÀÌ¾ðÆ®°¡ CORBA°´Ã¼¸¦ »ý¼ºÇÒ ¼ö ÀÖµµ·Ï ÇØÁÖ´Â ICORBAFactory ÀÎÅÍÆäÀ̽º µî °¢Á¾ ÀÎÅÍÆäÀ̽ºµéÀÌ COM/OLE¿Í CORBA»çÀÌÀÇ »óÈ£ ¿¬µ¿À» À§ÇØ Á¦¾ÈµÇ°í ÀÖ´Ù.

1.8 COM/OLE-CORBA¿¬µ¿ Á¦Ç°µé

1.8.1 ÀÌ ¿ë °¡´ÉÇÑ Á¦Ç°µé

ÇöÀç CORBAÁ¦Ç°À» Á¦°øÇϰí ÀÖ´Â ¸¹Àº ȸ»çµéÀÌ COM/OLE-CORBA¿¬µ¿ ±â´ÉÀ» Á¦°øÇϰí ÀÖÀ¸¸ç Á¦°øÇÒ ¿¹Á¤¿¡ ÀÖ´Ù. ÇöÀç ¾ç ¹æÇâ °ÔÀÌÆ®¿þÀ̸¦ Á¦°øÇϰí ÀÖ´Â Á¦Ç°µé·Î´Â µðÁöÅ»ÀÇ ObjectBroker¿Í IBMÀÇ SOMobjects for Windows, ¿¢½ºÆÛ¼ÒÇÁÆ®ÀÇ COM/CORBA/OLE , ¾ÆÀÌ¿À³ªÀÇ Orbix-OLEµîÀÌ ÀÖ´Ù. ¶ÇÇÑ CORBAÁ¦Ç° ¿Ü¿¡ ºñÁÖ¾ó ¿¡Áö(Visual Edge)»ç¿Í ĵµé»ç¿¡¼­ Á¦°øÇÏ´Â COM/CORBAŸŶÀ» ÀÌ¿ëÇÒ ¼öµµ ÀÖ´Ù. ´ÙÀ½Àº À̵é Á¦Ç°µé°ú ŸŶ¿¡ ´ëÇÑ Á¤º¸¸¦ ¾òÀ» ¼ö ÀÖ´Â WWW URLÀÌ´Ù. À̵é Á¦Ç°¿Ü¿¡ ¿©·¯ Á¦Ç°µéÀÌ COM/OLE ¿¬µ¿À» Áö¿øÇϰí ÀÖ´Ù. º¸´Ù ÀÚ¼¼ÇÑ Á¤º¸´Â 6¸·À» ÂüÁ¶Çϱ⠹ٶõ´Ù.

http://www2.service.digital.com/ddi/html/ObjectBroker-V2.5.html

http://www.digital.com/info/objectbroker/obb.htm

http://www.software.ibm.com

http://www.expersoft.com

http://www.iona.com

http://www.visual-edge.com/

http://www.candle.com

1.8.2 Orbix-OLE¸¦ ÅëÇÑ CORBA-OLE ¿¬µ¿ ¹æ¹ý °íÂû

¾Õ¼­ ¼Ò°³ÇÑ Á¦Ç°Áß Orbix-OLE¸¦ ÅëÇØ CORBA¿Í OLEÀÇ ¿¬µ¿ ¹æ¹ý¿¡ ´ëÇØ »ìÆìº»´Ù.Orbix-OLE´Â ¾ÆÀÌ¿À³ª¿¡¼­ °³¹ßÇÑ CORBAÁ¦Ç°ÀÎ OrbixÀÇ OLE ¿¬µ¿¹öÀüÀÌ´Ù. µû¶ó¼­ Orbix-OLE´Â Orbix Ŭ¶óÀ̾ðÆ®ÀÌÀÚ OLE¼­¹ö ¿ªÇÒÀ» ÇÏ´Â ÀÀ¿ë¼­¹ö¸¦ °³¹ßÇØÁØ´Ù. µû¶ó¼­ À©µµ¿ì ÀÀ¿ë ÇÁ·Î±×·¥Àº ¼Õ½±°Ô OLE¿ÀÅä¸ÞÀÌ¼Ç ¼­¹ö¸¦ ÅëÇØ CORBA¼­¹öÀÇ ¸Þ¼Òµå¸¦ ÀÌ¿ëÇÒ ¼ö ÀÖ°Ô ÇØÁØ´Ù.

- Orbix-OLE ÇÁ·Î±×·¥ ÀÛ¼º °úÁ¤ ÀÌÇØ

Orbix-OLE´Â ´ÙÀ½ [±×¸²5-21]°ú °°Àº °úÁ¤À» ÅëÇØ Orbix-OLE ÀÀ¿ë ÇÁ·Î±×·¥À» ÀÛ¼ºÇÏ°Ô ÇØÁØ´Ù. ¸ÕÀú »ç¿ëÀÚ´Â CORBA IDLÀ» »ç¿ëÇÏ¿© ¿øÇÏ´Â ÀÀ¿ë ÇÁ·Î±×·¥À» ÀÛ¼ºÇÑ´Ù.

ÀÏ´Ü ÀÛ¼ºµÈ ÇÁ·Î±×·¥Àº Orbix-OLE IDLÄÄÆÄÀÏ·¯¿¡ ÀÇÇØ¼­ CORBA¼­¹ö¿ë ÇÁ·Î±×·¥°ú OLE ¿ÀÅä¸ÞÀÌ¼Ç ¼­¹ö °â Orbix Ŭ¶óÀÌ¾ðÆ® Äڵ带 »ý¼ºÇØ ÁØ´Ù. »ý¼ºµÈ Äڵ忡´Â OLE¼­¹ö¸¦ ÅëÇØ Á¦ÃâµÈ ¸Þ¼Òµå È£ÃâÀ» CORBA¼­¹ö¿¡°Ô Àü´ÞÇØÁÖ°í ¼­¹ö¿¡¼­ ¼öÇàµÈ ¸Þ¼ÒµåÀÇ °á°ú¸¦ ´Ù½Ã OLE¼­¹ö¿¡°Ô ÀüÇØÁÖ´Â µî °¢Á¾ OLE-CORBA °ÔÀÌÆ®¿þÀÌ ¿ªÇÒÀ» ¼öÇàÇÑ´Ù. ¶ÇÇϳª Áß¿äÇÑ Á¡Àº Orbix-OLE IDLÄÄÆÄÀÏ °úÁ¤¿¡¼­ OLE¸¦ À§ÇÑ Å¸ÀÔÁ¤º¸°¡ OLEŸÀÔ ¶óÀ̺귯¸®¿¡ ÀúÀåµÈ´Ù´Â Á¡ÀÌ´Ù.

°á±¹ »ç¿ëÀÚ´Â ³ª¸ÓÁö ºÎºÐ¿¡ ´ëÇÑ ·ÎÁ÷À» ±¸ÇöÇϰí À̸¦ OLE¼­¹ö·Î »ý¼ºÇÑ ÈÄ ºñÁÖ¾ó º£ÀÌÁ÷µé ±âŸ OLEÀÀ¿ë ÇÁ·Î±×·¥ ÀÛ¼º ÅøÀ» »ç¿ëÇÏ¿© À©µµ¿ì»ó¿¡¼­ ¼Õ½±°Ô ¿øÇÏ´Â CORBA¼­¹ö¸¦ ÀÌ¿ëÇÒ ¼ö ÀÖ´Ù.


[ ±×¸²5-21 ] Orbix-OLE °³¹ßȯ°æ

- Orbix-OLE °ÔÀÌÆ®¿þÀÌÀÇ °æ·Î ÀÌÇØ

¾Õ¼­ °è¼Ó »ìÆìº» °Íó·³ À©µµ¿ì ÀÀ¿ë ÇÁ·Î±×·¥°ú CORBA ¼­¹ö »çÀÌÀÇ »óÈ£ ¿¬µ¿À» À§Çؼ­´Â °ÔÀÌÆ®¿þÀÌ ¿ªÇÒÀ» ÇÏ´Â ºÎºÐÀÌ ÇÊ¿äÇÏ´Ù. ¹Ù·Î ÀÌ ºÎºÐÀÌ OLE¿ÀÅä¸ÞÀÌ¼Ç ¼­¹öÀÌÀÚ Orbix Ŭ¶óÀ̾ðÆ®ÀÌ´Ù. ½ÇÁ¦ ÀÌ ºÎºÐÀº °ÔÀÌÆ®¿þÀ̷μ­ ¸¹Àº ¿ªÇÒÀ» ÇϰÚÁö¸¸ »ç¿ëÀÚÀÇ ÀÔÀå¿¡¼­ º¸¸é °ÆÁ¤ÇÒ Çʿ䰡 ¾ø´Ù. ¿Ö³ÄÇϸé Orbix-OLE IDLÄÄÆÄÀÏ·¯°¡ ÀÚµ¿ÀûÀ¸·Î ÀÌ ºÎºÐ¿¡ ÇÊ¿äÇÑ Äڵ带 Á¦°øÇϱ⠶§¹®ÀÌ´Ù.

´ÙÀ½ [±×¸²5-22]´Â °ÔÀÌÆ®¿þÀ̸¦ °æÀ¯ÇÏ¿© OLEŬ¶óÀÌ¾ðÆ®¿¡¼­ CORBA±¸Çö °´Ã¼±îÁöÀÇ °æ·Î¸¦ ³ªÅ¸³­ °ÍÀÌ´Ù. ¸ÕÀú ºñÁÖ¾ó º£ÀÌÁ÷°°Àº ÀÀ¿ë ÇÁ·Î±×·¥ ÀÛ¼º µµ±¸¸¦ ÀÌ¿ëÇÏ¿© ÀÛ¼ºµÈ OLEŬ¶óÀÌ¾ðÆ® ÇÁ·Î±×·¥Àº °ÔÀÌÆ®¿þÀÌÀÇ ÀϺÎÀÎ OLE ¿ÀÅä¸ÞÀÌ¼Ç ¼­¹ö¸¦ ÀÌ¿ëÇÏ¿© ¿øÇÏ´Â ¸Þ¼ÒµåµéÀ» È£ÃâÇÏ¿© ÀÛ¾÷À» ¼öÇàÇÑ´Ù. ÀÌ ¶§ È£ÃâµÈ ¸Þ¼Òµå´Â °ÔÀÌÆ®¿þÀÌÀÇ ¶Ç ´Ù¸¥ Ãø¸éÀÎ Orbix Ŭ¶óÀÌ¾ðÆ®·Î¼­ ÇØ´çCORBA¼­¹ö¿¡°Ô Àü´ÞµÈ´Ù. Àü´ÞµÈ ¸Þ¼Òµå´Â CORBA¼­¹ö»ó¿¡¼­ ¼öÇàµÇ°í ÀÌ °á°ú´Â ´Ù½Ã ¿ª¼øÀ¸·Î OLEŬ¶óÀÌ¾ðÆ® ÇÁ·Î±×·¥¿¡°Ô Àü´ÞµÈ´Ù.


[ ±×¸²5-22 ] OLEŬ¶óÀÌ¾ðÆ®¿¡¼­ CORBA¼­¹ö±îÁöÀÇ Á¢±Ù °æ·Î

Á» ´õ ÀÚ¼¼È÷ ÀÌ °úÁ¤À» »ìÆìº¸¸é OLE Ŭ¶óÀÌ¾ðÆ® ÇÁ·Î±×·¥¿¡¼­ È£ÃâµÈ ¸Þ¼Òµå´Â °ÔÀÌÆ®¿þÀÌ ºÎºÐ¿¡¼­ OLE ÇÁ·Ï½Ã °´Ã¼¸¦ ÅëÇØ CORBA°´Ã¼¿¡°Ô Àü´ÞµÈ´Ù. ¹Ù²Ù¾î ¸»Çϸé ÀÏ´Ü »ç¿ëÀÚ´Â ¿øÇÏ´Â ¸Þ¼Òµå¸¦ È£ÃâÇϱâ À§ÇØ ÇØ´ç CORBA °´Ã¼¿¡ ´ëÇÑ ÂüÁ¶ÀÚ¸¦ ¾ò¾î¾ß ÇÑ´Ù. À̶§ CORBA°´Ã¼´Â ·ÎÄà ÄÄÇ»ÅÍ¿¡ ÀÖÀ» ¼öµµ ÀÖ°í ³×Æ®¿÷»óÀÇ ´Ù¸¥ ÄÄÇ»ÅÍ¿¡ À§Ä¡ÇÒ ¼öµµ ÀÖ´Ù. ÀÌ °´Ã¼¿¡ ´ëÇÑ ÂüÁ¶ÀÚ¸¦ ¾ò±â À§ÇØ »ç¿ëÀÚ´Â ·ÎÄà ÄÄÇ»ÅÍ»ó¿¡ OLE ÇÁ·Ï½Ã °´Ã¼¸¦ »ý¼ºÇØ¾ß ÇÑ´Ù . ÀÌ ÇÁ·Ï½Ã ¼­¹ö´Â ½ÇÁ¦ CORBA°´Ã¼¸¦ ´ëÇ¥ÇÏ´Â °´Ã¼·Î¼­ °¢Á¾ »óÈ£ ¿¬µ¿ ±â´ÉÀ» Á¦°øÇÑ´Ù.

[ ±×¸²5-23 ] ³×Æ®¿÷»ó¿¡¼­ OLE ¸Þ¼Òµå È£Ãâ °úÁ¤

- °£´ÜÇÑ Orbix-OLE ÇÁ·Î±×·¥ ÀÛ¼º ¿¹

´ÙÀ½Àº °£´ÜÇÑ Orbix-OLE ÀÀ¿ë ÇÁ·Î±×·¥À» ÀÛ¼ºÇÏ´Â °úÁ¤À» ÅëÇØ Áö±Ý±îÁö »ìÆìº» ³»¿ëÀ» Á¤¸®ÇØ º¸µµ·Ï ÇÑ´Ù.

´Ü°è1) IDLÆÄÀÏ ÀÛ¼º

¸ÕÀú ¿øÇÏ´Â ÇÁ·Î±×·¥À» IDLÀ» ÅëÇØ ÀÛ¼ºÇÑ´Ù. ´ÙÀ½Àº ÀüÇüÀûÀÎ bank ÀÀ¿ë ÇÁ·Î±×·¥ÀÇ IDL ÀÌ´Ù.

// bankSrv.idl

interface bank {

exception reject { string reason; };

account newAccount{ in string owner} raises(reject);

void deleteAccount(in account a);

}

´Ü°è2) ÄÄÆÄÀÏ

ÀÏ´Ü ÀÛ¼ºµÈ bankSrv.idlÀ» ÄÄÆÄÀÏÇÑ´Ù.

C:> idl -wem bankSrv.idl

-wemÀº OLE2¿¡ ¹ÙÀεùÇϱâ À§ÇÑ ÄÚµå¿Í °¢Á¾ ¸ÞÀÌÅ© ÆÄÀÏ(Makefile)°ú ÄÚµåµéÀ» »ý¼ºÇس»´Â ¿É¼ÇÀÌ´Ù. ÀÌ °úÁ¤¿¡¼­ Áß¿äÇÑ °ÍÀº IDLÄڵ尡 OLE¿Í CORBA¸¦ ¿¬µ¿½Ã۱â À§ÇÑ Äڵ带 »ý¼ºÇÏ´Â °úÁ¤¿¡¼­ ÇÊ¿äÇÑ Á¤º¸¸¦ Á¦°øÇÏ´Â °ÍÀÌ´Ù. °¡·É, OLE¿¡¼­ »ç¿ëÇÏ´Â UUIDµîÀÌ ±×°ÍÀÌ´Ù. ´ÙÀ½Àº ¾Õ¼± ¿¹¿¡¼­ »ç¿ëÇϱâ À§ÇÑ Á¶Á¤ ÆÄÀÏÀÌ´Ù. Á¶Á¤ ÆÄÀÏÀº .ole¶ó´Â È®ÀåÀÚ·Î ³¡³ª¸ç ÆÄÀÏ À̸§Àº IDLÆÄÀÏ¿¡¼­ ¼±¾ðµÈ º£À̽º ÀÎÅÍÆäÀ̽º¿Í µ¿ÀÏÇØ¾ß ÇÑ´Ù. ¿¹¸¦ µé¾î, ¾Õ¼± ¿¹ÀÇ Á¶Á¤ ÆÄÀÏÀº bank.oleÀÌ´Ù .

# OLE configuration

# bank.old

ServerName = BankSrv

BaseUUID = E5ABFA40-8C94-101C-AD9B-0020AF51E7E2

´Ü°è3) Ŭ¶óÀÌ¾ðÆ® ÇÁ·Î±×·¥ ÀÛ¼º

´Ü°è2)¿¡¼­ IDLÄÄÆÄÀÏ·¯´Â bankSrv.mak¶ó´Â ¸ÞÀÌÅ© ÆÄÀÏÀ» ºñ·ÔÇÏ¿© °¢Á¾ Äڵ带 Á¦°øÇØÁØ´Ù. À̶§ »ç¿ëÀÚ´Â ¼­¹ö ÆÄÀÏ¿¡ ¿øÇÏ´Â Äڵ带 ÀÛ¼ºÇØ¾ß ÇÑ´Ù. ÀÏ´Ü ¼­¹ö ÆÄÀÏ¿¡ account newAccount{ in string owner} raises(reject)¿Í void deleteAccount(in account a)¸¦ ±¸ÇöÇß´Ù°í °¡Á¤ÇÏÀÚ. ¼­¹öÃøÀÇ ÀÛ¼ºÀÌ ³¡³­ ÈÄ ÀÌÁ¨ OLEŬ¶óÀÌ¾ðÆ®¸¦ ÀÛ¼ºÇØ¾ß ÇÑ´Ù.

ÀÏ´Ü OLEŬ¶óÀÌ¾ðÆ® ÇÁ·Î±×·¥Àº ºñÁÖ¾ó º£ÀÌÁ÷°°ÀÌ ¼Õ½±°Ô »ç¿ëÇÒ ¼ö ÀÖ´Â °ÍÀ» ÀÌ¿ëÇÏ´Â °ÍÀÌ Æí¸®ÇÏ´Ù. ¿øÇϴ Ŭ¶óÀ̾ðÆ®ÀÇ È­¸éÀ» ºñÁÖ¾ó º£ÀÌÁ÷À¸·Î ´ÙÀ½°ú °°ÀÌ µðÀÚÀÎÇÑ´Ù°í ÇÏÀÚ.


»ç¿ëÀÚ´Â µðÀÚÀÎÇÑ È­¸é¿¡ ¸Â°Ô ¼­¹ö¿¡ ¿¬°á ¶Ç´Â ¿¬°áÇØÁ¦, ±×¸®°í °èÁ¤ »ý¼º ¹× »èÁ¦, ¿¹±Ý, ÀÎÃâ µîÀÇ ÄÁÆ®·ÑÀ» ÀÛ¼ºÇØ¾ß ÇÑ´Ù. ¸ðµç ºñÁÖ¾ó º£ÀÌÁ÷ ÄÁÆ®·ÑÀ» ´Ù ÀÛ¼ºÇÏ´Â °úÁ¤À» ¼Ò°³Çϱâ´Â ¾î·ÆÁö¸¸ Á» ´õ ±íÀº ÀÌÇØ¸¦ À§ÇØ ¼­¹ö¿¡ ¿¬°áÇÏ´Â °úÁ¤¿¡ ÇÊ¿äÇÑ Äڵ带 ¼Ò°³ÇÑ´Ù.

connect_button_Click()Àº ¼­¹ö¿¬°á ¹öư Ŭ¸¯½Ã ¼­¹ö·ÎÀÇ ¿¬°áÀ» ½ÃµµÇÑ´Ù. ´Ù½Ã ¸»ÇØ ³×Æ®¿÷À» °æÀ¯ÇÏ¿© À©µµ¿ì °´Ã¼°¡ CORBA¼­¹ö·ÎÀÇ Á¢±ÙÀ» ½ÃµµÇÏ´Â °ÍÀÌ´Ù. ÀÌ °úÁ¤¿¡¼­ »ç¿ëÀÚ´Â Orbix ÇÁ·Ï½Ã°¡ Á¦°øÇÏ´Â CreateObjects()ÇÔ¼ö¸¦ ÀÌ¿ëÇÏ¿© ¿øÇÏ´Â ¼­¹ö·ÎÀÇ Á¢±ÙÀ» ½ÃµµÇÑ´Ù. ÀÏ´Ü CreateObjects()¸¦ ÅëÇØ ¿øÇÏ´Â Orbix ¼­¹ö¿¡ ´ëÇÑ ÇÁ·Ï½Ã¸¦ »ý¼ºÇϰí ÀÌ ÇÁ·Ï½ÃÀÇ IT_Bind() ¶Ç´Â IT_BindHost()¸¦ ÅëÇØ ¿øÇÏ´Â ÇÏ´Â ¼­¹ö¿¡ ¿¬°áÇÑ´Ù.

Sub connect_button_Click()

Set b = CreateObject("BankSrv.bank")

If host_name.Text = "" Then

b.IT_Bind

Else

b.IT_BindHost(host_name.Text)

End If

disconnect_button.Enables = True

connect_button.Enabled = False

new_acc_button.Enabled = True

End Sub

´Ü°è4) ÇÁ·Î±×·¥ ½ÇÇà

¸ðµç ÇÁ·Î±×·¥ÀÇ ÀÛ¼ºÀÌ ³¡³ª¸é ÇØ´ç ¼­¹öÀÇ ÄÄÇ»Åͻ󿡼­ Orbix µ¥¸ó°ú ¼­¹ö ÇÁ·Î±×·¥À» ¼öÇà½ÃÄÑ ³õÀº ÈÄ ÀÛ¼ºÇÑ Å¬¶óÀÌ¾ðÆ®¸¦ ¼öÇàÇÏ¸é ¿øÇÏ´Â ÀÛ¾÷À» ¼öÇàÇÒ ¼ö ÀÖ´Ù.

Áö±Ý±îÁö COM/OLE¿Í CORBA¸¦ ¿¬µ¿ÇÏ´Â ¹æ¹ý¿¡ ´ëÇØ »ìÆìº¸¾Ò´Ù. ÇöÀç ÀÌ ±â¼úÀº ½Ã½ºÅÛ ÅëÇսà °¡Àå ÇÊ¿äÇÑ ±â¼úÁß Çϳª·Î ¼Õ²ÅÈ÷°í ÀÖ´Ù. ºÐ¸í ±× ÀÌÀ¯´Â COM/OLE°´Ã¼¿¡ CORBA¶ó´Â Àß µðÀÚÀÎµÈ ¼ÒÇÁÆ®¿þ¾î ¹ö½º¸¦ »ç¿ëÇÔÀ¸·Î¼­ ±× °£ ¸¹Àº ÀÀ¿ë ºÐ¾ß¿¡¼­ ÇÊ¿ä·Î ÇÏ´Â ºÐ»êOLE°¡ °¡´ÉÇϱ⠶§¹®À̶ó°í »ý°¢ÇÑ´Ù. ±×·¯³ª ³²Àº ¼÷Á¦´Â ºÐ»êCOM/³×Æ®¿÷ OLEÀÇ ½ÇÁ¦ ¸ð½ÀÀÌ´Ù. ¾ÆÁ÷±îÁö Á¤È®ÇÑ Á¦Ç°ÀÌ Á¦°øµÇÁö ¾Ê¾Æ ´ÜÁ¤Çϱä ÈûµéÁö¸¸ ±âÁ¸ÀÇ COM/OLEÀÇ ÇѰ踦 ±Øº¹Çϱâ À§ÇÑ ¸¹Àº ³ë·ÂÀÌ ±¸Ã¼È­µÉ °ÍÀÓÀÌ ºÐ¸íÇÏ´Ù. ±×·¯³ª Àç¹Ì³­ »ç½ÇÇϳª´Â ÀÌ¹Ì OS/2 , ¸ÅŲÅä½Ã µî¿¡¼­ ÄÄÆ÷³ÍÆ® °´Ã¼Ç¥ÁØÀ¸·Î »ç¿ëµÇ°í ÀÖ´Â OpenDocÀÌ´Ù . »ç½Ç OLEÀÇ °¡Àå Å« Àû¼ö´Â CORBAº¸´Ù´Â OpenDocÀÌ´Ù. ¿Ö³ÄÇϸé OpenDocÀºCORBA±â¹ÝÀÇ ÄÄÆ÷³ÍÆ® °´Ã¼¸¦ À§ÇÑ À©µµ¿ì ±â¼úÀ̱⠶§¹®ÀÌ´Ù. µû¶ó¼­ ¾ö¹ÐÇÑ µî½ÄÀ¸·Î´Â COM/OLE ´ë CORBA/OpenDocÀÇ ±â¼ú ÀüÀïÀ̶ó°í ¸»ÇØ¾ß ¿Ç´Ù. ¿Ö³ÄÇϸé OLE°¡ COMÀ» ±× ÇϺα¸Á¶·Î »ï´Âµ¥ ¹ÝÇØ OpenDocÀº CORBA¸¦ ÇϺα¸Á¶·Î »ç¿ëÇϱ⠶§¹®ÀÌ´Ù. °ú¿¬ ÀÌ ÀüÀïÀÇ ½Â¸®ÀÚ°¡ ´©±¸ÀÎÁö¿¡ ´ëÇØ¼­´Â ´Ü¾ðÇϱâ ÈûµéÁö¸¸ ¸¶ÀÌÅ©·Î¼ÒÇÁÆ®ÀÇ COM/OLE°¡ ¿¹ÀüÀÇ ´Ù¸¥ ºÐ¾ß¿¡¼­ ó·³ ¿øÇÏ´Â ´ë·Î ¿Ï½ÂÀ» °ÅµÎÁö´Â ¸øÇϸ®¶ó »ý°¢ÇÑ´Ù. ¿Ö³ÄÇϸé CORBAÀÇ ºÐ»ê±â¼úÀÌ COM/OLEÀÇ ±â¼úº¸´Ù »ó´çÈ÷ ¾Õ¼­ÀÖ´Ù°í Æò°¡µÇ±â ¶§¹®ÀÌ´Ù.






2Àå ÀÎÅÍ³Ý ¸Å´Ï¾îÀÇ Èñ¸Á, WWW

ÇöÀç ÄÄÇ»Å͸¦ »ç¿ëÇÏ´Â ´ë´Ù¼öÀÇ »ç¶÷µé¿¡°Ô °¡Àå Áß¿äÇÏ°í ¾ÕÀ¸·Î ¿ì¸®ÀÇ »ýȰ¿¡ °¡Àå ¸¹Àº ¿µÇâÀ» ¹ÌÄ¥ ÄÄÇ»ÅÍÀÇ ºÐ¾ß¸¦ ãÀ¸¶ó°í ¹¯´Â´Ù¸é ½ÊÁßÆÈ±¸, ÀÎÅͳÝÀ̶ó°í ¸»ÇÒ °ÍÀÌ´Ù. ¾Æ¸¶µµ ±×·¸°Ô ´ë´äÇÏ´Â ÀÌÀ¯´Â ÀÎÅͳÝÀÌ ÁÖ´Â ¼ö¸¹Àº Á¤º¸¿Í °¡´É¼º¿¡ ÀÖ´Ù°í ¸»ÇÒ ¼ö ÀÖ´Ù. ¼ö¸¹Àº ÀÏ¹Ý »ç¿ëÀÚµéÀº ÀÎÅͳÝÀÌ Á¦°øÇÏ´Â ¹«±Ã¹«ÁøÇÑ ¹ÝÂë »ì¾Æ ÀÖ´Â Á¤º¸¸¦ ¾ò±â À§ÇØ µ¿ºÐ¼­ÁÖÇϰí ÀÖÀ¸¸ç ¼ö¸¹Àº ÇÁ·Î±×·¡¸ÓµéÀº ÀÚ½ÅÀÌ °¡Áö°í ÀÖ´ø ±â¼ú°ú ¾ÆÀ̵ð¾î¸¦ ÀÎÅÍ³Ý»ó¿¡ ÆîÃÄ º¸±â À§ÇØ ³ë·ÂÇϰí ÀÖ´Ù. ±×·¯³ª ½ÇÁ¦ ÀÎÅͳÝÀ» °¡Àå Àû±ØÀûÀ¸·Î Ȱ¿ëÇÏ°í °³¹ßÇϰí ÀÖ´Â ºÎ¹®Àº ÀÏ¹Ý »ç¿ëÀڵ鿡¼­ ±â¾÷À̳ª ´Üü »ç¿ëÀÚµéÂÊÀ¸·Î ¿Å°Ü °¡°í ÀÖ´Ù°í ¸»ÇÒ ¼ö ÀÖ´Ù. ¿Ö³ÄÇÏ¸é ´õ ÀÌ»ó ÀÎÅͳÝÀº ºÒƯÁ¤ ´Ù¼ö¸¦ ÁöÇâÇÏ´Â °ø°ø ¼­ºñ½º°¡ ¾Æ´Ï¶ó ƯÁ¤ ´Üü³ª ±â°üµî¿¡¼­ ÀڽŵéÀÇ Á¤º¸ ½Ã½ºÅÛÀ» º¸´Ù Áøº¸ÀûÀ¸·Î Ȱ¿ëÇϱâ À§ÇÑ ¸¶´çÀ¸·Î ÀÚ¸® ÀâÇô°¡°í Àֱ⠶§¹®ÀÌ´Ù. ÀÌ·¯ÇÑ ¿òÁ÷ÀÓÀ» ÈçÈ÷µé "ÀÎÆ®¶ó³Ý"À̶ó°í ºÎ¸¥´Ù. ÀÌ·¯ÇÑ "ÀÎÆ®¶ó³Ý"»óȲ¿¡¼­ °¡Àå Áß¿äÇÑ ¿ä¼Ò Áß Çϳª°¡ ÀÌÁ¾ÀÇ È¯°æÀ» ÇϳªÀÇ ¾îÇ׾ȿ¡ ¸ô¾Æ³Ö´Â °ÍÀÌ´Ù. ¼­·Î ´Ù¸¥ ÀÀ¿ë ÇÁ·Î±×·¥µé°ú µ¥ÀÌŸº£À̽º, ±âŸ ¿©·¯ Á¤º¸ ÀÚ¿øÀ» ÇϳªÀÇ ¾îÇ׾ȿ¡ ³Ö°í ¼­·Îµé ÀÎÅͳÝ( Á» ´õ Á¤È®È÷ ¸»ÇÏÀÚ¸é ÀÎÅÍ³Ý ÇÁ·ÎÅäÄÝ , TCP/IP )À» ÅëÇØ ¿øÈ°È÷ Á¤º¸¸¦ °øÀ¯ÇÏ´Â °ÍÀÌ´Ù. ÀÌ ¶§ ÀÎÅͳÝÀº Á¤º¸ÀÇ ±³È¯À» À§ÇÑ ÇÁ·ÎÅäÄݷμ­ , CORBA´Â ¼­·Î ´Ù¸¥ ÇüÅÂÀÇ Á¤º¸ ÀÚ¿øÀ» ´ã¾Æ³»´Â ¾îÇ×À¸·Î¼­ ÈûÀ» ¹ßÇÑ´Ù°í ¸»ÇÒ ¼ö ÀÖ´Ù. À̹ø Àå¿¡´Â ÀÌ µÎ ±â¼úÀÌ ÇÕÃÄÁö´Â °úÁ¤°ú ±× ¹æ¹ý, ±×¸®°í °¢Á¾ À̵濡 ´ëÇØ¼­ ¾Ë¾Æº¸µµ·Ï ÇÑ´Ù.

2.I ¹è°æ ÀÌÇØ

2.1.1»õ·Î ¿î ½Ã´ëÀÇ »õ·Î¿î ¿ä±¸ »çÇ×µé

ÇöÀç ±â¾÷À̳ª ±âŸ Á¶Á÷ÀÌ ´ç¸éÇÑ ¿©·¯ ÄÄÇ»ÆÃ »óȲ Áß °¡Àå µÎµå·¯Áø ºÎºÐÀº ÀÌÁ¾ÀÇ ½Ã½ºÅÛÀ» ÅëÇÕ.ÀçÁ¶Á¤Çϱâ À§ÇÑ ±â¼ú°ú ÀÎÅͳÝÀ» ÇʵηΠÇÑ ³×Æ®¿÷ ȯ°æÀÌ´Ù. ¶Ç Çϳª Ãß°¡ÇÒ ¼ö ÀÖ´Â ºÎºÐÀº ¸ÖƼ¹Ìµð¾î ÄÁÅÏÆ® Á¤º¸¶ó°í ¸»ÇÒ ¼ö ÀÖ´Ù. ÀÌ·¯ÇÑ È¯°æ¿¡¼­ ±âÁ¸ÀÇ Á¤º¸°ü¸® ½Ã½ºÅÛÀº ±× ¸ñÇ¥¸¦ »õ·Ó°Ô ¼öÁ¤Çؾ߸¸ ÇÑ´Ù. ´ÙÀ½Àº ÀÌ·¯ÇÑ È¯°æ¿¡¼­ Á¤º¸°ü¸® ½Ã½ºÅÛÀÌ °¡Á®¾ß ÇÒ ¸ñÇ¥ÀÌ´Ù.

"Á¤º¸°ü¸® ½Ã½ºÅÛÀº Á¶Á÷À̳ª ±â°üÀÇ Á¤º¸Ã³¸® °úÁ¤°ú °æ¿µ öÇÐÀ» Áö¿øÇÔ¿¡ ÀÖ¾î Áö¸®ÀûÀ¸·Î ºÐ»êµÇ°í ÀÌÁ¾ÀÎ Á¤º¸ ÀÚ¿øÀ» º¸´Ù ½±°í , ¾ÈÁ¤µÇ°í, ÀϰüµÈ ¹æ¹ýÀ¸·Î °ü¸®ÇØ¾ß ÇÑ´Ù ."

À§ÀÇ ¸ñÇ¥´Â ÇöÀç, ±×¸®°í ¾ÕÀ¸·Î ±¸ÃàÇØ¾ß ÇÒ ½Ã½ºÅÛµéÀÌ ÁöÇâÇØ¾ß ÇÒ Çʼö ¸ñÇ¥¶ó ¸»ÇÒ ¼ö ÀÖ´Ù. ½ÇÁ¦ ÀÌ·¯ÇÑ ¸ñÇ¥¸¦ ÁöÇâÇÏ´Â ½Ã½ºÅÛµéÀÌ °®Ãß¾î¾ß ÇÒ ¿ä±¸ »çÇ×µéÀº ´ÙÀ½°ú °°´Ù.

2.1.2 ÇöÀçÀÇ »óȲÀº ?

ÀÚ! ¿ì¸®°¡ ±¸ÃàÇØ¾ß ÇÒ ½Ã½ºÅÛÀÇ ¸ñÇ¥¿Í ¿ä±¸ »çÇ×µéÀ» »ìÆìº¸¾Ò´Ù¸é ÀÌÁ¦ ÇÒ ÀÏÀº ÇöÀç ¿ì¸®ÀÇ ½Ã½ºÅÛÀ» ³ÃÁ¤È÷ »ìÆìº¸´Â °ÍÀÌ´Ù. ´ÙÀ½Àº ÇöÀç ¿ì¸®°¡ ´ç¸éÇÑ Çö½Ç »óȲµéÀÌ´Ù.

2.1.3. ÇØ°áÃ¥Àº?

ÇöÀç ¿ì¸®ÀÇ ½Ã½ºÅÛÀÌ ´ç¸éÇÑ »óȲ°ú ¾ÕÀ¸·Î ¿ì¸®°¡ ÁöÇâÇØ¾ß ÇÒ ½Ã½ºÅÛÀÇ ¸ñÇ¥¸¦ »ìÆìº¸¾Ò´Ù. ±×·¸´Ù¸é °ú¿¬ ¾î¶² ¹æ¹ýÀ» »ç¿ëÇÏ¿© ´Ù¸éÇÑ »óȲÀ» µ¹ÆÄÇÏ°í ¿ì¸®°¡ ¿øÇÏ´Â ¸ñÇ¥ ½Ã½ºÅÛÀ» ±¸ÃàÇÒ ¼ö ÀÖÀ» Áö »ìÆìº¸ÀÚ.

Ãʱ⠴ëºÎºÐÀÇ ½Ã½ºÅÛ ±¸Ãà°¡µéÀº Áß¾Ó¿¡ ¿øÇÏ´Â ÀÛ¾÷À» ¼öÇàÇÏ´Â ¼­¹ö¸¦ Áß½ÉÀ¸·Î Çϰí ÀÌ¿¡ °¢Á¾ ´õ¹Ì Å͹̳¯À» Ãß°¡ÇÏ¿© ½Ã½ºÅÛÀ» ±¸ÃàÇÏ¿´´Ù. ÀÌ·¯ÇÑ ¹æ¹ýÀº ¼­¹ö¿¡ ÁýÁߵǴ ÀÏÀÇ ºÎÇÏ¿Í °¡°Ý °æÀï·Â, Ÿ ½Ã½ºÅÛ°úÀÇ ¿¬µ¿ µî ¸¹Àº ¹®Á¦Á¡µéÀ» ³»Æ÷Çϰí ÀÖ´Ù.

ÇöÀç ±¸ÃàµÇ´Â ´ëºÎºÐÀÇ ½Ã½ºÅÛ¿¡¼­ »ç¿ëÇÏ´Â ¹æ¹ýÀ¸·Î ½Ã½ºÅÛ°£ÀÇ °³º°ÀûÀÎ ÀÎÅÍÆäÀ̽º¸¦ ÅëÇØ ¿øÇÏ´Â ½Ã½ºÅÛµéÀ» ¹­¾î³»´Â ±â¼úÀ» ¸»ÇÑ´Ù. ¶ÇÇÑ °³º°ÀûÀÎ ÀÎÅÍÆäÀ̽º¸¦ ¸¸µå´Â µ¥¼­ ¹ß»ýÇÏ´Â ¹®Á¦Á¡µéÀ» ÇÇÇϰíÀÚ ³ª¿Â ±â¼úÀÌ ¹Ù·Î ¹Ìµé¿þ¾î¶ó´Â ¼ÒÇÁÆ®¿þ¾î ¿¬µ¿ ±â¼úÀÌ´Ù.

ÀÎÅÍ³Ý °Ë»ö¿£ÁøÀ̳ª ºñ¼­ ÇÁ·Î±×·¥Ã³·³ ƯÁ¤ µµ¸ÞÀÎ ºÐ¾ß¿¡¼­ »ç¿ëÀÚ¿¡°Ô ÀÚµ¿À¸·Î ¿øÇÏ´Â Á¤º¸¿Í ¼­ºñ½º¸¦ Á¦°øÇÏ´Â ¸ðµ¨·Î Áö´É ¿¡ÀÌÁ¯Æ® ½Ã½ºÅÛÀÌ ÀÖ´Ù. ÇâÈÄ °³¹ßµÇ´Â ½Ã½ºÅÛÀº Áö¿ªÀ̳ª Á¤º¸ÀÇ Á¾·ù¿¡ ¹«°üÇÏ°Ô ¿øÇÏ´Â ¼­ºñ½º ¿¡ÀÌÁ¯Æ®¸¦ ¼öÇàÇÔÀ¸·Î¼­ ¿¡ÀÌÁ¯Æ®°¡ Ȱµ¿ÇÒ ¼ö ÀÖ´Â ¿µ¿ª³»ÀÇ ¸ðµç Á¤º¸¸¦ °¡°øÇØ ¾òÀ» ¼ö ÀÖ´Ù.

À§¿¡ Á¦½ÃÇÑ ±¸Çö ¹æ¹ýÁß ÇöÀç »ç¿ë°¡´ÉÇÑ ¹æ¹ýÀ» Á» ´õ ÀÚ¼¼È÷ »ìÆìº¸ÀÚ. ´ÙÀ½Àº ¿¬¹æ ¸ðµ¨À» ÅëÇØ ½Ã½ºÅÛÀ» ±¸ÃàÇÒ ¶§ ÇÊ¿ä·Î ÇÑ ±â¼úµéÀÌ´Ù.

ÀÌ·¯ÇÑ °³º°ÀûÀÎ ±â¼úµéÀº °¢±â ³ª¸§´ë·ÎÀÇ °íÀ¯ÇÑ ¿µ¿ªÀ» °¡Áö°í ÀÖ´Â °ÍµéÀÌ´Ù. °¡·É, Á¤º¸ °ü¸® ±â¼úÀº ÁÖ·Î µ¥ÀÌŸ¸¦ °¡°øÇÏ°í µ¥ÀÌŸÀÇ ¹«°á¼º°ú ¾ÈÀü¼ºÀ» º¸ÀåÇÏ´Â ±â´ÉÀ» Á¦°øÇÑ´Ù. ¶ÇÇÑ ÀÎÅÍ³Ý ±â¼úÀº TCP/IP¶õ Åë½Å ÇÁ·ÎÅäÄÝÀ» »ç¿ëÇÏ¿© ÀÎÅͳݻóÀÇ Á¤º¸¸¦ Ŭ¶óÀÌ¾ðÆ®¿¡°Ô Á¦°øÇÏ´Â ¼­ºñ½º¸¦ Á¦°øÇÑ´Ù. ÀÌµé µÎ ¼­ºñ½ºµéÀº Çö½ÇÀûÀÎ ¿ä±¸ »çÇ׵鿡 ÀÇÇØ Á¢¸ñµÇ°í ÀÖ´Ù. ÀÌ·¯ÇÑ ¿ä±¸ »çÇ׿¡´Â Áõ±Çȸ»çÀÇ Áõ±Ç ½Ã¼¼¶óµçÁö ½Å¹®»çÀÇ µ¥ÀÌŸº£À̽º °Ë»ö µîÀ» ¿¹·Î µé ¼ö ÀÖ´Ù. ±×·¯³ª ÀÌ µÎ ¼­ºñ½º¸¦ Á¢¸ñÇÏ´Â °úÁ¤¿¡´Â ¸¹Àº ¹®Á¦Á¡ÀÌ ÀÖ´Ù.

¸ÕÀú ÇöÀç »ç¿ëµÇ´Â ¹æ¹ýÀ¸·Î´Â CGI(Common Gateway Interface)°¡ ÀÖ´Ù. ÀÌ ¹æ¹ýÀº WWW°¡ ½Ã½ºÅÛÀÇ È¯°æ º¯¼ö¸¦ ÅëÇØ ¿ÜºÎÀÇ ÇÁ·Î±×·¥°ú ¿¬µ¿ÇÏ´Â ¹æ¹ýÀÌ´Ù. ÀÌ ¶§ ¹ß»ýÇÏ´Â ¹®Á¦·Î´Â ÇÁ·Î±×·¡¸ÓÀÇ °æ¿ì ÀÏÀÏÀÌ ¸ðµç CGIÀÎÅÍÆäÀ̽º¸¦ ÀÛ¼ºÇϱâ À§ÇØ WWW±â¼ú°ú µ¥ÀÌŸº£À̽º ±â¼úÀ» Àß ¾Ë¾Æ¾ß ÇÏ°í ¿©·¯ °³ÀÇ µ¥ÀÌŸº£À̽º ½Ã½ºÅÛÀ» »ç¿ëÇÒ °æ¿ì ÀÏÀÏÀÌ ¸ðµç ÀÎÅÍÆäÀ̽º¸¦ ÀÛ¼ºÇؾ߸¸ ÇÑ´Ù. ¶ÇÇÑ µÎ ½Ã½ºÅÛÀÌ »óÈ£¿¬µ¿µÇ¾î ÀÛµ¿ÇÒ ¶§ ¸¹Àº ½Ã½ºÅÛ ÀÚ¿øÀ» »ç¿ëÇϹǷΠ±â´ëÇß´ø ¼º´ÉÀ» º¸Àå¹Þ±â Èûµé´Ù. ÀÌ ¹æ¹ý ¿Ü¿¡µµ ÀÚ¹Ù ¾ð¾î¿¡¼­ Á¦°øÇÏ´Â JDBC(Java DataBase Connectivity)¶ó´Â µ¥ÀÌŸº£À̽º ¿¬µ¿ ±â¼úÀ̳ª OLE¸¦ ÅëÇØ µ¥ÀÌŸº£À̽º¿¡ Á¢±ÙÇÑ ÈÄ ÀÌ ±â¼úÀ» WWW¿¡ ÅëÇÕÇÒ ¼ö ÀÖ´Â ¸¶ÀÌÅ©·Î¼ÒÇÁÆ®ÀÇ ActiveX µîÀÇ ±â¼úÀÌ ÀÖ´Ù. ±×·¯³ª ÇÑ °¡Áö Áß¿äÇÑ Á¡Àº ¾ÕÀ¸·Î ¿ä±¸µÇ´Â Á¤º¸ ½Ã½ºÅÛÀÇ °æ¿ì ´Ü¼øÈ÷ µ¥ÀÌŸº£À̽º ½Ã½ºÅÛ»Ó ¸¸ ¾Æ´Ï¶ó ±âŸ ¼ö¸¹Àº Á¤º¸ ½Ã½ºÅÛ°úÀÇ ¿¬µ¿ÀÌ ºÒ°¡ÇÇ ÇÏ´Ù´Â °ÍÀÌ´Ù. ÀÌ·±ÇÑ »óȲ¿¡¼­ ÇÁ·Î±×·¡¸Ó´Â º¸´Ù ¸¹Àº ÀÎÅÍÆäÀ̽º¸¦ ÀÛ¼ºÇؾ߸¸ ÇÑ´Ù.

¾Õ¼± ¹®Á¦Á¡µéÀ» ±Øº¹ÇÏ°í ¿¬¹æ ½Ã½ºÅÛÀ» ±¸ÃàÇϱâ À§ÇÑ ¹æ¹ýÀ¸·Î´Â CORBA ½Ã½ºÅÛ ¿¬µ¿±â¼ú°ú ÀÎÅÍ³Ý ±â¼úÀÇ °áÇÕÀ» µé ¼ö ÀÖ´Ù. Âü°í·Î ÇöÀç COMÀÇ °æ¿ì À©µµ¿ì ÀÀ¿ë ÇÁ·Î±×·¥°£ÀÇ ¿¬µ¿¸¸À» Á¦°øÇϹǷΠ¸ñÇ¥·Î ÇÏ´Â ½Ã½ºÅÛ ±¸¼º¿¡´Â ÀûÇÕÇÏÁö ¾Ê´Ù. ÀÌ·¯ÇÑ ±â¼úÀû °áÇÕÀ» ÅëÇØ ¾òÀ» ¼ö ÀÖ´Â ÀåÁ¡Àº ´ÙÀ½°ú °°´Ù.

Áö±Ý±îÁö »õ·Î¿î ȯ°æ¿¡ ÀûÇÕÇÑ ½Ã½ºÅÛÀ» ±¸¼ºÇϱâ À§ÇØ ÇÊ¿äÇÑ ¿©·¯ »çÇ×µéÀ» Á¾ÇÕÇØº¸¾Ò´Ù. °á·ÐÀûÀ¸·Î ÇâÈÄ ÀÎÅͳÝÀ» ±â¹ÝÀ¸·Î ÇÑ Á¤º¸ ½Ã½ºÅÛÀ» ±¸ÃàÇϱâ À§ÇØ °¡Àå ÇÊ¿äÇÑ ±â¼úµé·Î´Â WWW·Î ´ëº°µÇ´Â ÀÎÅÍ³Ý ±â¼ú°ú CORBA·Î ´ëº°µÇ´Â ½Ã½ºÅÛ ÅëÇÕ ±â¼úÀÇ Á¢¸ñÀÌ¶ó ¸»ÇÒ ¼ö ÀÖ´Ù. ƯÈ÷ ÀÌ µÎ ±â¼ú ¸ðµÎ °¢°¢ÀÇ ºÐ¾ß¿¡¼­ Ç¥ÁØÀ¸·Î ÀÚ¸®Àâ°í ÀÖ´Â °ÍÀ» °¨¾ÈÇØ º¸¸é ´ç¿¬ÇÑ °á°ú¶ó°í ¸»ÇÒ ¼ö ÀÖÀ¸¸ç ÀÌ µÎ ±â¼úÀÇ °áÇÕÀ» ÅëÇØ °¡Àå ¾ÈÁ¤ÀûÀ̰í À¯¿¬ÇÑ ½Ã½ºÅÛÀ» ±¸ÃàÇÒ ¼ö ÀÖÀ» °ÍÀÌ´Ù. ´ÙÀ½ Àý¿¡¼­ ÀÌ·¯ÇÑ µÎ ±â¼úÀÇ °áÇÕÀ» À§ÇÑ ¹è°æ ±â¼ú°ú °áÇÕ ¹æ¹ý¿¡ ´ëÇØ »ìÆìº¸µµ·Ï ÇÑ´Ù.

2.2 ÀÎÅÍ ³Ý ±â¼ú µ¿Çâ

2.2.1 ÀÎ ÅÍ³Ý È¯°æ ÀÌÇØ

ÀÎÅͳÝÀº ÀÚ¿¬¹ß»ýÀûÀ¸·Î °Ç¼³µÈ °¡»óÀÇ »çȸ¶ó ¸»ÇÒ ¼ö ÀÖ´Ù. ¼ö¸¹Àº ÄÄÇ»ÅÍ ½Ã½ºÅÛµé°ú »ç¶÷µéÀÌ ÀüÀÚ ½ÅÈ£¿¡ ¿øÇÏ´Â Á¤º¸¿Í ¸Þ¼¼Áö¸¦ ½Ç¾î ±³È¯Çϰí ÀÖ´Ù. ÀÌ ¶§ °¡Àå Áß¿äÇÑ Àü¼Û ¸Å°³Ã¼·Î TCP/IP ÇÁ·ÎÅäÄÝÀÌ ÀÖ´Ù. TCP/IP ÇÁ·ÎÅäÄÝÀº ÀÎÅÍ³Ý È¯°æ¿¡ ¼ÓÇØ ÀÖ´Â ¸ðµç ½Ã½ºÅÛµéÀÌ ´Ù¸¥ ½Ã½ºÅÛ°ú Á¤º¸¸¦ ±³È¯ÇÏ°í »õ·Î¿î ½Ã½ºÅÛ°ú ³×Æ®¿÷À» ÀÎÅͳÝÀÇ ÀϺηΠȮÀåÇϴ ǥÁØ ¹æ¹ýÀ» Á¦°øÇϰí ÀÖ´Ù. ÀÌ·± ȯ°æ¿¡¼­ ÀÎÅͳÝÀº 6õ¸¸ ¸íÀÌ ³Ñ´Â »ç¶÷µéÀÌ ÀÌ¿ëÇÏ´Â ±×¾ß¸»·Î Àü ¼¼°è¸¦ ¹«´ë·Î ÇÑ ¸í½Ç»óºÎÇÑ ¼¼°èÃÖ´ëÀÇ ³×Æ®¿÷À¸·Î ÀÚ¸®Àâ°Ô µÇ¾ú´Ù. ±×·¸´Ù¸é ¾î¶² ¿¬À¯¿¡¼­ ÀÎÅͳÝÀÌ ÇöÀçó·³ ¼ºÀåÇÏ°Ô µÇ¾ú´ÂÁö ÀÎÅͳݿ¡¼­ Á¦°øÇÏ´Â Á¤º¸ ½Ã½ºÅÛÀÇ Á¾·ù¿Í ±× ¹ßÀü ¹æÇâÀ» Áß½ÉÀ¸·Î »ý°¢Çغ¸ÀÚ.

¸ÕÀú ÀÎÅÍ³Ý Á¤º¸ ½Ã½ºÅÛÀ̶õ ÀÎÅͳÝÀ» ±â¹ÝÀ¸·Î ÇÏ¿© °¢Á¾ Á¤º¸ ¼­ºñ½º¸¦ Á¦°øÇÏ´Â ½Ã½ºÅÛÀ» ¸»ÇÑ´Ù. ¿¹¸¦ µé¸é, ÀÎÅͳݻóÀÇ ÀüÀÚ¿ìÆí ½Ã½ºÅÛÀ̳ª ¿øÇÏ´Â ¹®¼­¸¦ °Ë»öÇϱâ À§ÇÑ ½Ã½ºÅÛÀÌ ÀÖ´Ù. ½ÇÁ¦ ÀÌ·¯ÇÑ ÀÎÅÍ³Ý Á¤º¸ ½Ã½ºÅÛÀº ´ÙÀ½ÀÇ ¸î °¡Áö ÁÖ¿äÇÑ ¹æÇâÀ» °¡Áö°í ¹ßÀüµÇ¾î ¿Ô´Ù.

ÀÌ·¯ÇÑ ¹æÇâÀº ±âÁ¸ÀÇ ÀÎÅÍ³Ý Á¤º¸ ½Ã½ºÅÛÀÌ »õ·Î¿î ȯ°æ¿¡ ÀûÇÕÇÑ ¹æÇâÀ¸·Î º¯È­Çϰí ÀÖ´Ù°í ¿ä¾àÇÒ ¼ö ÀÖ´Ù. ´ÙÀ½ [±×¸²5-24]Àº ÇöÀç ÀÌ¿ë °¡´ÉÇÑ ÀÎÅÍ³Ý Á¤º¸ ½Ã½ºÅÛÀ» ºÐ·ùÇÑ °ÍÀÌ´Ù.

[ ±×¸²5-24 ] ÀÎÅÍ³Ý Á¤ º¸ ½Ã½ºÅÛÀÇ ºÐ·ù


Ãʱâ ÀÎÅͳÝÀ» ÀÌ¿ëÇÏ´Â »ç¶÷µé¿¡°Ô ÀÖ ¾î °¡Àå À¯¿ëÇÏ°í ¾Ö¿ëµÇ´Â ¼­ºñ½º°¡ ¹Ù·Î ÀüÀÚ¿ìÆí°ú ÀüÀÚ´º½º(USENET News) °° Àº Åë½Å ¼­ºñ½º¿´´Ù. ±¹°æÀ» ÃÊ¿ùÇÏ¿© ¿øÇÏ´Â »ç¶÷¿¡°Ô ÆíÁö¸¦ ÁÖ °í¹Þ´Â ÀüÀÚ¿ìÆí°ú °øÅëÀÇ °ü½É°Å¸®¸¦ °®°í ÀÖ´Â »ç¶÷µéÀÌ ±× ·ìÀ» ¸¸µé°í ÀÚ½ÅÀÇ °ßÇØ¿Í ÀǰßÀ» ÁÖ°í¹Þ´Â ÀüÀÚ´º½º´Â ¸¹Àº »ç ¿ëÀڵ鿡 ÀÇÇØ¼­ »ç¿ëµÇ°í ÀÖ´Ù. Âü°í·Î SMTP(Simple Mail Transfer Protocol)´Â ÀüÀÚ¿ìÆíÀ» Àü´ÞÇÒ ¶§ ÀÌ¿ëÇÏ´Â ÇÁ·ÎÅäÄÝÀ̰í NNTP(Network News Transfer Protocol)´Â ÀüÀÚ´º½º¸¦ Àü´ÞÇÒ ¶§ »ç¿ëÇÏ´Â ÇÁ·ÎÅäÄÝÀÌ´Ù . µÚ¸¦ À̾î Űº¸µå ÀÔ·ÂÀ» ÅëÇØ ¿øÇÏ´Â »ç¶÷°ú ÀÏ ´ë ÀÏ·Î ´ëÈ­¸¦ ³ª ´©´Â Talk¿Í ´Ù ´ë ´Ù ´ëÈ­¸¦ ³ª´©´Â IRC(Internet Relay Chat)°¡ ÀÎÅÍ³Ý Åë½Å ¼­ ºñ½º·Î µîÀåÇßÀ¸¸ç ÃÖ±Ù µé¾î ÀÎÅÍ³Ý ÀüÈ­¿Í È­»ó Åë È­ , »ç¼³ °Ô½ÃÆÇ (BBS , Bulletin Board system) µî ÀÌ °¢±¤À» ¹Þ°í ÀÖ´Ù .

¼­ºñ½º ÇüÅÂ

´ëÈ­Çü Åë ½Å ¼­ºñ½º

¹èÄ¡Çü Åë ½Å ¼­ºñ½º

¼­ºñ½º ¸í

¼­ºñ½º ¿¹

¼­ºñ½º ¸í

¼­ºñ½º ¿¹

ÀÏ ´ë ÀÏ

´ëÈ­

Talk , Phone

ÀüÀÚ ¿ìÆí

SMTP

´Ù ´ë ´Ù

Åä·Ð

IRC

ÀüÀÚ ´º½º

NNTP

[ Ç¥5-6 ] ÀÎÅÍ³Ý Åë ½Å ½Ã½ºÅÛ


ÀÎÅͳÝÀÌ ÀÌó·³ ¼ºÀåÇÏ°Ô µÈ °áÁ¤ÀûÀÎ ¹è °æ¿¡´Â Å©°Ô ¸î °¡Áö°¡ ÀÖÀ» ¼ö ÀÖ´Ù. ¸ÕÀú °¡Àå °¡±õ°Ô´Â WWW(World Wide Web)ÀÇ Æø¹ßÀû ¼ºÀåÀ» µé ¼ö ÀÖ°Ú°í ¸Ö°Ô´Â TCP/IP ÇÁ·ÎÅäÄÝÀ» µé ¼ö ÀÖ´Ù. ƯÈ÷ ÀÌ ÇÁ·ÎÅäÄÝÀÌ À¯´Ð½º ¿î¿µ ü Á¦ÀÇ ÀϺημ­ ÀÚ¸®ÀâÀ¸¸é¼­ ÀÎÅͳÝÀÌ Åµ¿µÇ±â ½ÃÀÛÇß´Ù°í ¸»ÇÒ ¼ö ÀÖ ´Ù. ÀÌ·¸°Ô µÈ µ¥¿¡´Â TCP/IP°¡ Á¦°øÇÏ´Â ´Ù¾çÇÑ Á¤º¸ °øÀ¯ ¼­ºñ½º°¡ ¸¹ Àº »ç¿ëÀÚ¿¡°Ô Å« À¯¿ë¼ºÀ» Á¦°øÇÑ µ¥ ±âÀÎÇÑ´Ù. ¸ÕÀú ÀÎÅÍ³Ý »ç¿ëÀÚ´Â TELNETÀ̳ª RloginÀ» ÀÌ¿ëÇÏ¿© ¿ø°ÝÁö¿¡ ÀÖ´Â ÄÄÇ»ÅÍ¿¡ ·Î±×ÀÎ ÇÒ ¼ö ÀÖ À¸¸ç rsh(remote shell)°°Àº À¯´Ð½º ¸í·É¾î¸¦ ÅëÇØ ¿ø °ÝÁö ÄÄÇ»ÅÍ¿¡ ¸í·ÉÀ» Áö½ÃÇÒ ¼öµµ ÀÖ´Ù. ¶ÇÇÑ ÆÄÀÏ ¼Û.¼ö½ÅÀ» À§ ÇØ FTP(File Transfer Protocol)³ª À¯´Ð½ºÀÇ rcp(remote copy)°°Àº ¸í ·É¾î¸¦ »ç¿ëÇÒ ¼ö ÀÖÀ¸¸ç ¼± ¸¶ÀÌÅ©·Î½Ã½ºÅÛÀÇ NFS(Network File System)³ª Ä« ³×±â ¸á·Ð ´ëÇп¡¼­ °³¹ßÇÑ AFS(Andrew File System)¸¦ ÀÌ¿ëÇÏ¿© ¿ø°ÝÁö ÄÄ Ç»ÅÍÀÇ ÆÄÀÏ ½Ã½ºÅÛÀ» °øÀ¯ÇÒ ¼öµµ ÀÖ´Ù.

¼­ºñ½º Çü ÅÂ

´ëÈ­Çü Á¤ º¸ °øÀ¯ ¼­ºñ½º

¹èÄ¡Çü Á¤º¸ °øÀ¯ ¼­ºñ½º

¿ø°ÝÁö ·Î±×ÀÎ

TELNET , Rlogin

¿ø°ÝÁö ¸í·É ¼öÇà

rsh

UUCP

ÆÄÀÏ Àü¼Û

FTP , rcp

ÆÄÀÏ °øÀ¯ ¼­ºñ½º

NFS , AFS

[ Ç¥5-7 ] ÀÎÅÍ³Ý Á¤º¸ °ø À¯ ½Ã½ºÅÛµé


ÀÎÅÍ³Ý Á¤º¸ °Ë»ö ½Ã½ºÅÛÀº Çö Àç °¡Àå °¢±¤¹Þ°í ÀÖ´Â ÀÎÅÍ³Ý ¼­ºñ½º ºÐ¾ßÀÌ´Ù. ÀÎÅͳÝÀÌ Á¡Á¡ ´õ È® »êµÉ ¼ö·Ï °Ë»ö ¼­ºñ½º¿¡ ´ëÇÑ ¿ä±¸´Â Áõ°¡Çϱ⠶§¹®¿¡ º¸´Ù ½± °í ºü¸£°Ô ¿øÇÏ´Â Á¤º¸¸¦ ãÀ» ¼ö ÀÖ´Â °Ë»ö ¼­ºñ½º´Â Áß¿äÇÏ´Ù°í ¸» ÇÒ ¼ö ÀÖ´Ù. ¿©±â¼­ Çϳª ÁÖÀÇÇØ¾ß ÇÒ Á¡Àº ¹«¾ùÀ» °Ë»öÇÒ °ÍÀΰ¡ ÇÏ´Â ¹® Á¦ÀÌ´Ù. °¡·É , ¿ì¸®´Â ÀÎÅͳݻ󿡼­ ƯÁ¤ÇÑ »ç¶÷À» ãÀ» ¼ö µµ ÀÖÀ¸¸ç ƯÁ¤ ÄÄÇ»Å͸¦ ãÀ» ¼öµµ ÀÖ´Ù. ¶ÇÇÑ Æ¯Á¤ ÆÄ ÀÏÀ̳ª ¹®¼­¸¦ ãÀ» ¼öµµ ÀÖ´Ù. ÀÌ·¯ÇÑ °ÍÀ» °³º°ÀûÀÎ ¸ñ ÀûÀ¸·Î ÇÏ¿© ¸¹Àº ÀÎÅÍ³Ý ¼­ºñ½ºµéÀÌ °³¹ßµÇ¾î ¿Ô´Ù. ´ÙÇེ·´°Ôµµ ÀÌ ·¯ÇÑ °³º°ÀûÀÎ °Ë»ö ¼­ºñ½ºµéÀÌ WWW¸¦ Áß½ÉÀ¸·Î Çϳª·Î Åë ÇյǴ Ãß¼¼À̱⠶§¹®¿¡ ÀÌ ¸ðµç °Ë»ö ¼­ºñ½º¸¦ ÀÍÈú ÇÊ ¿ä´Â ¾øÀ» °ÍÀÌ´Ù. ±×·¯³ª ¾î¶² ¼­ºñ½ºµéÀÌ ÀÖ´Â Áö¿¡ ´ë ÇØ¼­´Â ¼÷ÁöÇØ¾ß ÇÒ °ÍÀÌ´Ù. ¿¹¸¦ µé¾î [Ç¥5-8]¿¡¼­ ó ·³ ÄÄÇ»ÅÍ¿¡ ´ëÇÑ Á¤º¸¸¦ Á¦°øÇØÁÖ´Â ¼­ºñ½º·Î X.500¿Í ¾Õ¼­ »ìÆìº» DNS , NIS°¡ ÀÖ´Ù. ƯÈ÷ X.500Àº µð·ºÅ丮¿Í À̸§ ¼­ºñ½º¸¦ Á¦°øÇØÁÖ±â À§ ÇÑ ISO-OSI Ç¥ÁØÀÌ´Ù. ¶ÇÇÑ ÀÎÅÍ³Ý »ç¿ëÀÚÀÇ À̸§°ú Àü È­¹øÈ£°°Àº Á¤º¸¸¦ Á¦°øÇØÁÖ´Â ¼­ºñ½º·Î Áß¾Ó¿¡ »ç¿ëÀÚ¿¡ ´ëÇÑ µ¥ ÀÌŸº£À̽º¸¦ °ü¸®Çϰí À̸¦ ÅëÇØ ¼­ºñ½º¸¦ Á¦°øÇÏ´Â WHOIS ¼­ºñ½º¿Í °³º°ÀûÀΠȣ½ºÆ®ÀÇ »ç¿ëÀÚ Á¤º¸¸¦ Á¦°øÇÏ´Â ÇÎ °Å(Finger) ¼­ºñ½º , °¢Á¾ ÀÎÅÍ³Ý ÇÁ·ÎÅäÄÝÀ» ÀÌ¿ëÇÏ¿© ÀÎÅÍ³Ý »ç ¿ëÀÚÀÇ Á¤º¸¸¦ Á¦°øÇÏ´Â ³ÝÆÄÀεå(Netfind)°¡ ÀÖ´Ù . ¿øÇÏ´Â ÆÄÀÏÀ» ã¾ÆÁÖ´Â ¼­ ºñ½º·Î´Â ÀÎÅͳݻóÀÇ Anonymous FTP¼­¹öµéÀÇ Á¤º¸¸¦ ¸ðÀº ÈÄ ÀÌ ¸¦ ÀÌ¿ëÇÏ¿© ¿øÇÏ´Â ÆÄÀÏÀ» °Ë»öÇØÁÖ´Â ¾ÆÅ°(Archie)¿Í Anonymous FTP¼­¹ö ÀÇ ÆÄÀϵéÀ» ¸¶Ä¡ ·ÎÄà ÄÄÇ»ÅÍÀÇ ÆÄÀÏó·³ Á¦°øÇÏ¿© °Ë»öÇØÁÖ´Â ÇÁ·Î½ºÆä·Î (Prospero) , ³×Æ®¿÷ ÆÄÀÏ ½Ã½ºÅÛÀ» ÀÌ¿ëÇÏ¿© Anonymous FTP»óÀÇ ÆÄ ÀÏÀ» °¡»ó ÆÄÀÏ ½Ã½ºÅÛ¿¡ À§Ä¡½ÃÄÑÁÖ´Â ¾Ë·º½º(Alex)µî ÀÌ ÀÖ´Ù . ¸¶Áö¸·À¸·Î °¢Á¾ Ű¿öµå¸¦ »ç¿ëÇÏ¿© ¿øÇÏ´Â ¹®¼­¸¦ ã¾ÆÁÖ´Â WAIS³ª °íÆÛ(Gopher)°°Àº ¼­ºñ½º¿Í ÇÏÀÌÆÛ ÅØ½ºÆ® ¹æ½ÄÀ¸·Î ¿ø ÇÏ´Â ¹®¼­³ª ÆÄÀÏÀ» ã±â À§ÇØ ÀÎÅͳÝÀ» Ç×ÇØÇÏ´Â WWW°¡ ÀÖ ´Ù.

¼­ºñ½º ÇüÅÂ


ÄÄÇ»ÅÍ


ÀÎÅÍ³Ý »ç¿ëÀÚ


ÆÄÀÏ


¹®¼­


Á¤º¸ °Ë»ö

X.500 DNS NIS

X.500 WHOIS ÇΰŠ³ÝÆÄÀεå

X.500 ¾ÆÅ° ÇÁ·Î½ºÆä·Î ¾Ë·º½º °íÆÛ WWW

X.500 ¿þÀÌÁî °íÆÛ WWW

Á¤º¸ ¼±ÅÃ

FTP NFS AFS ÇÁ·Î½ºÆä·Î

¿þÀÌÁî °íÆÛ WWW

Á¤º¸ ÃßÃâ

¿þÀÌÁî °íÆÛ WWW

[ Ç¥5-8 ] ÀÎÅÍ³Ý Á¤º¸ °Ë»ö ½Ã½ºÅÛµé


ÀÎÅÍ³Ý À̸§ Á¤º¸ ½Ã½ºÅÛÀº ÇÑ ¸¶µð·Î ÀÎÅÍ³Ý »ç¿ëÀÚµéÀÌ ÁÖ·Î »ç¿ëÇÏ´Â µµ¸ÞÀÎ À̸§(¶Ç´Â È£ ½ºÆ® À̸§)À» ÄÄÇ»Å͵éÀÌ ÀνÄÇÒ ¼ö ÀÖ´Â IPÁÖ¼Ò(Internet Protocol Address)·Î º¯ È¯ÇØÁÖ´Â ½Ã½ºÅÛÀ» ¸»ÇÑ´Ù. ´Ù½Ã ¸»ÇØ ÄÄÇ»ÅÍÀÇ °æ¿ì ¹® ÀÚ¸¦ ÀνÄÇÏÁö ¸øÇÑ´Ù. µû¶ó¼­ ÀÎÅͳݻóÀÇ ÄÄÇ»Å͵éÀº ¼­·Î°£¿¡ ±¸º°Çϱâ À§ ÇÑ ¹æ¹ýÀ¸·Î IPÁÖ¼Ò¶ó´Â °ÍÀ» »ç¿ëÇÑ´Ù.( ¿¹ , 202.30.143.10 ) ±×·±µ¥ ¹®Á¦´Â ÀÌ ·¯ÇÑ ÁÖ¼Ò´Â »ç¶÷µéÀÌ »ç¿ëÇϱ⿡´Â ºÒÆíÇϱ⠶§¹®¿¡ ´ëºÎºÐÀÇ »ç ¿ëÀÚ´Â µµ¸ÞÀÎ À̸§À̶ó´Â ¹æ½ÄÀ» »ç¿ëÇÏ¿© ÄÄÇ»Å͸¦ ±¸º°ÇÑ´Ù. (¿¹ , www.postech.ac.kr ) À̶§ IPÁÖ¼Ò¿Í µµ¸ÞÀÎ À̸§»çÀÌÀÇ º¯È¯Àº Ç×»ó Àϰü¼ºÀÌ À¯ ÁöµÅ¾ß ÇÑ´Ù. ¿Ö³ÄÇϸé ÀÎÅͳݻ󿡼­ ¿øÇÏ´Â ÄÄÇ»Å͸¦ Á¤È®È÷ Á¢ ¼ÓÇϱâ À§Çؼ­ÀÌ´Ù. µû¶ó¼­ »ç¿ëÀÚÀÇ µµ¸ÞÀÎ À̸§À» IPÁÖ¼Ò·Î ¹Ù ²ãÁÖ´Â ¼­ºñ½º°¡ ÀÎÅÍ³Ý À̸§ Á¤º¸ ½Ã½ºÅÛÀÌ´Ù.

2.2.2 ÀÎ ÅÍ³Ý ÅëÇÕ Á¤º¸ ½Ã½ºÅÛ, WWW ÀÌÇØ

¾Õ¼­ »ìÆìº» °Íó·³ ÀÎÅͳݿ¡´Â ¸¹Àº Á¤º¸ ½Ã½ºÅÛÀÌ Á¸ÀçÇÑ´Ù. ±×·¯³ª ÀÌ·¯ÇÑ ½Ã½ºÅÛµéÀº WWW¼­ºñ½º·Î ÅëÇյǰí ÀÖ´Â ½ÇÁ¤ÀÌ´Ù. ±× ÀÌÀ¯·Î´Â ¿©·¯ °¡Áö°¡ ÀÖÁö¸¸ °¡Àå Áß¿äÇÑ dlÀÌÀ¯µé·Î´Â ¼Õ½¬¿î »ç¿ëÀÚ ÀÎÅÍÆäÀ̽º , Æø³Ð°í ´Ù¾çÇÑ Á¤º¸ ¼­ºñ½º , ±âŸ Á¤º¸ ½Ã½ºÅÛÀÇ ÅëÇÕ ±â´É µîÀ» µé ¼ö ÀÖ´Ù.

2.2.2.1 WWWÀÇ Åµ¿°ú ÁÖ¿ä Æ¯Â¡

WWW´Â World-Wide-Web ¶Ç´Â W3 ¶ó ºÒ¸°´Ù. WWW´Â ½ºÀ§½º, Á¦³×¹Ù¿¡ À§Ä¡ÇÑ CERN ( the European Laboratory for Particle Physics )¿¡ ÀÇÇØ¼­ ÁÖµµµÈ ÇÁ·ÎÁ§Æ®ÀÇ ¼Ò»ê¹°·Î½á ÄÄÇ»ÅÍ ³×Æ®¿÷¿¡ ¿¬°áµÇ¾î ÀÖ´Â »ç¿ëÀÚµéÀÌ ¸ÖƼ¹Ìµð¾î¸¦ Æ÷ÇÔÇÑ ´Ù¾çÇÑ Á¤º¸¸¦ ÇÏÀÌÆÛ¹Ìµð¾î ÀÎÅÍÆäÀ̽º¸¦ ÅëÇÏ¿© °Ë»öÇÒ ¼ö ÀÖ°Ô ÇØÁØ´Ù. WWW´Â CERNÀÇ ÆÀ ¹ö³Ê½º ¸®(Tim Berners Lee )¿¡ ÀÇÇØ¼­ ÃÖÃÊ·Î Á¦¾ÈµÈ ÈÄ ±×ÀÇ ÁÖµµÇÏ¿¡ °³¹ßµÇ¾ú´Ù. º»·¡ WWW °³¹ß ½Ã ±âº» ¾ÆÀ̵ð¾î´Â ÇÁ·ÎÁ§Æ®¸¦ ¼öÇàÇÏ´Â ¿¬±¸¿øµéÀÇ °³ÀÎ Á¤º¸¸¦ °øÀ¯Çϱâ À§ÇØ »ç¿ëÇÏ´ø ¼Ò±Ô¸ðÀÇ °³Àοë ÇÏÀÌÆÛÅØ½ºÆ® ½Ã½ºÅÛ¿¡¼­ Ãâ¹ßÇÏ¿´´Ù. WWWÀº µÎ°³ ÀÌ»óÀÇ ÇÁ·ÎÁ§Æ® »çÀÌ¿¡¼­ ¼­·Î °ü°è¸¦ ¸Î°í ÀÖ´ø ÇÑ ÇÁ·ÎÁ§Æ®ÀÇ Á¤º¸°¡ º¯ÇÏ´õ¶óµµ ÀÌ º¯È­°¡ ´Ù¸¥ ÇÁ·ÎÁ§Æ®¿¡ ÀÚ¿¬½º·´°Ô À¶È­µÇµµ·Ï °í¾ÈµÇ¾ú´Ù.

ÇöÀç WWW´Â ÇöÀç ÀÎÅÍ³Ý ¼­ºñ½º Áß¿¡¼­ °¡Àå ÁÖ¸ñ ¹Þ´Â ¼­ºñ½º·Î ºÎ»óÇß°í ½ÇÁ¦ NSFNETÀÇ °æ¿ì WWWÀÇ Áõ°¡ ¼Óµµ°¡ ÀÎÅÍ³Ý Áõ°¡ÀÇ 2¹è ÀÌ»ó µÈ´Ù°í ÇÑ´Ù. ÀÌ·¸µí WWW°¡ ±Þ¼ÓÇÑ È®»êÀ» ÇÏ´Â µ¥´Â WWW°¡ °®°í ÀÖ´Â ´ÙÀ½ÀÇ Æ¯Â¡¿¡ ±âÀÎÇÑ´Ù.

WWWÀº TCP/IP»ó¿¡¼­ HTTP(Hypertext Transfer Protocol)¶ó´Â ÇÁ·ÎÅäÄÝÀ» »ç¿ëÇϴ Ŭ¶óÀ̾ðÆ®/¼­¹ö ±¸Á¶ÀÌ´Ù. ³Ý½ºÄÉÀÌÇÁ³ª ÀͽºÇ÷ξÀº WWWŬ¶óÀÌ¾ðÆ®´Â HTTP¸¦ ÅëÇØ ÇØ´ç WWW¼­¹ö¿¡ ¼­ºñ½º¸¦ ¿äûÇϰí ÀÌ¿¡ ´ëÇÑ °á°ú¸¦ ÁÖ°í¹Þ´Â´Ù. WWW¼­¹ö´Â WWWŬ¶óÀÌ¾ðÆ®¿¡´Â °íÆÛ³ª FTPó·³ ¸ðµç ŸÀÔÀÇ ¼­¹öµé¿¡ ´ëÇØ ÇϳªÀÇ ÀÎÅÍÆäÀ̽º¸¦ ÅëÇÑ Á¢±ÙÀ» °¡´ÉÇÏ°Ô ÇØÁØ´Ù. µû¶ó¼­ »õ·Î¿î ÇÁ·ÎÅäÄÝÀ» ±â¹ÝÀ¸·Î ÇÏ´Â ÀÎÅÍ³Ý ¼­ºñ½º°¡ ÃâÇöÇÑ´Ù°í ÇÏ´õ¶óµµ ÀÌ ÇÁ·ÎÅäÄÝÀ» WWW¿¡ Ãß°¡ÇÔÀ¸·Î¼­ ¿Ïº®ÇÑ ÇÁ·ÎÅäÄÝ È®À强À» º¸ÀåÇÒ ¼ö ÀÖ´Ù.

ÇÏÀÌÆÛÅØ½ºÆ®´Â ÇѰ¡Áö Â÷ÀÌÁ¡¸¸À» Á¦¿ÜÇϰí´Â ÀϹÝÀûÀÎ ¹®¼­¿Í µ¿ÀÏÇÏ´Ù. ÇѰ¡Áö Â÷ÀÌÁ¡Àº ÇÏÀÌÆÛÅØ½ºÆ® ¹®¼­´Â ¹®¼­ ³»ºÎ¿¡ ´Ù¸¥ ¹®¼­¿¡ ´ëÇÑ ¿¬°áÁ¡(hyperlink)À» °®À» ¼ö ÀÖ´Ù´Â °ÍÀÌ´Ù. ÀÌ ¿¬°áÁ¡À» ÅëÇØ ÇÑ ÇÏÀÌÆÛÅØ½ºÆ® ¹®¼­¿¡¼­ ´Ù¸¥ ÇÏÀÌÆÛÅØ½ºÆ® ¹®¼­·ÎÀÇ À̵¿ÀÌ °¡´ÉÇÏ´Ù. µû¶ó¼­ »ç¿ëÀÚ´Â ÃÖÃÊÀÇ ÇÏÀÌÆÛÅØ½ºÆ® ¹®¼­ ³»ºÎÀÇ ¿¬°áÁ¡Áß ¿øÇÏ´Â Á¤º¸¸¦ ¼±ÅÃÇÔÀ¸·Î¼­ Á¤º¸¸¦ °Ë»öÇÒ ¼ö ÀÖ´Ù. ÀÌ·¯ÇÑ ÇÏÀÌÆÛÅØ½ºÆ®ÀÇ È®ÀåµÈ °³³äÀÌ ÇÏÀÌÆÛ¹Ìµð¾îÀÌ´Ù. ÇÏÀÌÆÛ¹Ìµð¾î´Â ´Ü¼øÈ÷ ¹®¼­ÀÇ ÇüÅ»Ӹ¸ ¾Æ´Ï¶ó À½¼ºÀ̳ª Á¤Áö È­»ó, µ¿È­»ó µîÀÇ ¸ÖƼ¹Ìµð¾î µ¥ÀÌŸ¿¡ ´ëÇÑ ¿¬°áÁ¡À» ¼³Á¤ÇÒ ¼öµµ ÀÖ´Ù. µû¶ó¼­ »ç¿ëÀÚ´Â ¸ÖƼ¹Ìµð¾î¸¦ Æ÷ÇÔÇÑ ¹®¼­ Á¤º¸¸¦ °Ë»öÇÒ ¼ö ÀÖ´Ù. WWWÀÌ Àü¼¼°è¿¡ ±Þ¼ÓÈ÷ È®»êµÈ °ÍÀº ÇÏÀÌÆÛÅØ½ºÆ®¸¦ ÅëÇØ ¼ö¸¹Àº Á¤º¸µé »çÀÌÀÇ °ü°è¸¦ ¼³Á¤ÇÒ ¼ö ÀÖ´Â ´É·Â¿¡ ±âÀÎÇÏ´Â °ÍÀÌ´Ù. Àüü WWWÀÔÀå¿¡¼­ º¸¸é WWW È£½ºÆ®ÀÇ Áõ°¡³ª WWW È£½ºÆ®»óÀÇ Á¤º¸ º¯È­´Â Àüü WWWÀÇ ±¸¼º°ú Á¤º¸¿¡ ÀÚ¿¬½º·´°Ô À¶È­µÇ¸ç È®ÀåµÈ´Ù. WWWÀ» ÀÌ¿ëÇÏ´Â »ç¶÷Àº ÀüÇô ÀÌ·¯ÇÑ º¯È­¿¡ ´ëÇØ °ÆÁ¤ÇÒ Çʿ䰡 ¾ø´Ù.

  1. WWWÀÇ ÀÛµ¿ ¿ø¸®

WWW ¼­ºñ ½º´Â ³Ý½ºÄÉÀÌÇÁ°°Àº WWWŬ¶óÀÌ¾ðÆ®¿Í WWW¼­¹ö»çÀÌ¿¡¼­ ¿øÇÏ´Â ¼­ºñ½º ¿äû°ú ÀÌ¿¡ ´ëÇÑ °á°ú¸¦ ÁÖ°í ¹ÞÀ½À¸·Î¼­ ÀÌ·ç¾î Áø´Ù. µû¶ó¼­ ÀÌ »çÀÌ¿¡¼­ ÇÊ¿äÇÑ ¾ç½Ä°ú ±â´ÉÀÌ ½ÇÁ¦ WWWÀ» ¿î¿µÇÏ´Â µ¥ ÇÊ¿äÇÑ ±¸¼º¿ä¼ÒµéÀÌ´Ù. [ ±×¸²5-25 ]´Â ÀÌ ±¸¼º¿ä¼ÒµéÀ» ÅëÇØ WWW°¡ ¾î¶»°Ô ÀÛµ¿µÇ°í ÀÖ´ÂÁö º¸¿©ÁÖ°í ÀÖ´Ù.

¸ÕÀú WWWŬ¶óÀÌ¾ðÆ®´Â WWW¼­¹ö¿¡°Ô URL(Uniform Resource Locator)¶ó´Â ¾ç½ÄÀ¸·Î ¿øÇÏ´Â ¼­ºñ½º¸¦ ¿äûÇÑ´Ù. URLÀº ÇØ´ç WWW¼­¹öÀÇ À̸§°ú ¿øÇÏ´Â Á¤º¸¸¦ Ç¥ÇöÇϰí ÀÖ´Ù. [±×¸²5-25]¿¡¼­ http://home.netscape.com/real-index.html ÀÌ ¹Ù·Î URLÀÌ´Ù. µû¶ó¼­ WWW¿¡¼­ ¿øÇÏ´Â Á¤º¸¸¦ ¾ò±â À§Çؼ­´Â ÇØ´ç URLÀ» ¾Ë°í ÀÖ¾î¾ß ÇÑ´Ù. ¹°·Ð WWW¼­¹ö¿¡¼­ Á¦°øÇÏ´Â ¹®¼­ÀÇ ÇÏÀÌÆÛ¸µÅ©¸¦ ÀÌ¿ëÇÒ ¼öµµ ÀÖÁö¸¸ ÇÏÀÌÆÛ¸µÅ©¾øÀÌ ¿øÇÏ´Â WWW¼­¹ö·Î À̵¿Çϱâ À§Çؼ­´Â URLÀ» »ç¿ëÇØ¾ß ÇÑ´Ù.

ÀÏ´Ü URLÀ» ÅëÇØ ¼­ºñ½º ¿äûÀ» ¹ÞÀº WWW¼­¹ö´Â ÇØ´ç ¼­ºñ½ºÀÇ ¿äû¿¡ µû¸¥ Á¤º¸¸¦ ÁغñÇÑ ÈÄ ´Ù½Ã WWWŬ¶óÀÌ¾ðÆ®¿¡°Ô º¸³½´Ù. ÀÌ ¶§ ¼­ºñ½º °á°ú´Â HTMLÀ̶ó´Â ¹®¼­ÀÌ´Ù. ÀÌ ¹®¼­´Â ¸ÖƼ¹Ìµð¾î¸¦ Æ÷ÇÔÇÑ ÇÏÀÌÆÛÅØ½ºÆ® ¾ç½ÄÀ¸·Î ±¸¼ºµÇ¾î ÀÖ´Ù. µû¶ó¼­ ÀÌ Æ¯Á¤ÇÑ ¹®¼­¸¦ º¸³»±â À§ÇØ WWW´Â HTTP¶ó´Â ÇÁ·ÎÅäÄÝÀ» »ç¿ëÇÑ´Ù.

ÀÏ´Ü ¿øÇÏ´Â ¹®¼­¸¦ Àü´Þ¹ÞÀº WWWŬ¶óÀÌ¾ðÆ®´Â ÇØ´ç HTML¹®¼­¸¦ ÀÐÀº ÈÄ ÀÌ ¹®¼­¸¦ »ç¿ëÀÚ¿¡°Ô º¸¿©ÁØ´Ù. ½ÇÁ¦ ÀÌ °úÁ¤Àº ³Ý½ºÄÉÀÌÇÁ°°Àº WWW Ŭ¶óÀÌ¾ðÆ®°¡ ´ã´çÇϱ⠶§¹®¿¡ °ÆÁ¤ÇÒ Çʿ䰡 ¾ø´Ù. ±×·¯³ª »ç¿ëÀÚ´Â WWW»ó¿¡¼­ ¿øÇÏ´Â Á¤º¸°¡ HTMLÀ̶ó´Â ¾ç½ÄÀ¸·Î Ç¥ÇöµÇ°í ÀÌ ¹®¼­°¡ HTTP¶ó´Â ¹æ½ÄÀ¸·Î Àü´ÞµÇ°í ÀÖÀ½À» ÀÌÇØÇØ¾ß ÇÑ´Ù. µû¶ó¼­ »ç¿ëÀÚ´Â WWW»ó¿¡¼­ ¿øÇÏ´Â Á¤º¸¸¦ ¾Ë¸®±â À§ÇØ HTML¾ç½Ä¿¡ ¸Â°Ô Á¤º¸¸¦ ±¸¼ºÇØ¾ß ÇÑ´Ù. ¸¶Áö¸·À¸·Î WWW¼­¹ö´Â µ¥ÀÌŸº£À̽º ½Ã½ºÅÛÀ̳ª ±âŸ ¿ÜºÎÀÇ ÇÁ·Î±×·¥°ú ¿¬µ¿Çϱâ À§ÇØ CGI(Common Gateway Interface)¶ó´Â ±â´ÉÀ» Á¦°øÇÑ´Ù. ÀÌ ±â´ÉÀ» ÀÌ¿ëÇÏ¿© »ç¿ëÀÚ´Â ¿øÇÏ´Â Á¤º¸¸¦ °Ë»öÇϰųª °»½ÅÇÏ´Â µî ´Ù¾çÇÑ ¿ÜºÎÀÇ ÇÁ·Î±×·¥À» WWW¿¡¼­ ÀÌ¿ëÇÒ ¼ö ÀÖ´Ù.

[ ±×¸²5-25 ] WWWÀÇ ÀÛµ¿ ¿ø¸®

2.2.2.3 WWW ±¸¼º ¿ä¼ÒµéÀÇ ÀÌÇØ

¾Õ¼­ WWW°¡ ÀÛµ¿µÇ´Â ¿ø¸®¿Í ±¸¼º¿ä¼Ò¿¡ ´ëÇØ ÀÚ¼¼È÷ »ìÆìº¸¾Ò´Ù. ¿©±â¼­´Â ÇØ´ç ±¸¼º ¿ä¼ÒµéÀÇ ±â´É¿¡ ´ëÇØ Á» ´õ ÀÚ¼¼È÷ »ìÆìº»´Ù.

WWW Ŭ¶ó ÀÌ¾ðÆ®´Â WWW¼­¹ö¿¡°Ô URLÀ̶ó´Â ¾ç½ÄÀ» ÀÌ¿ëÇÏ¿© ¼­ºñ½º¸¦ ¿äûÇϰí ÀÌ¿¡ ´ëÇÑ °á°ú·Î Àü´Þ¹ÞÀº HTML¹®¼­¸¦ ÇØ¼®ÇÑ ÈÄ »ç¿ëÀÚ¿¡°Ô Ç¥ÇöÇØÁÖ´Â ¿ªÇÒÀ» ÇÑ´Ù. ´Ù¾çÇÑ ¸ÖƼ¹Ìµð¾î¸¦ Ç¥ÇöÇϱâ À§ÇØ ¿ÜºÎÀÇ ÇÁ·Î±×·¥À» »ç¿ëÇϱ⵵ ÇÑ´Ù. ±×·¯³ª ÃÖ±Ù¿¡´Â ¿ÜºÎÀÇ ÇÁ·Î±×·¥À» ÅëÇØ ¸ÖƼ¹Ìµð¾î¸¦ º°µµÀÇ À©µµ¿ì¿¡ Ç¥ÇöÇϱ⠺¸´Ù´Â WWWŬ¶óÀÌ¾ðÆ®³»¿¡ Á÷Á¢ ³»Àå(Plug-in)ÇÏ¿© ¸ÖƼ¹Ìµð¾î¸¦ Ç¥ÇöÇÑ´Ù. WWWŬ¶óÀÌ¾ðÆ® ÇÁ·Î±×·¥À¸·Î´Â ³Ý½ºÄÉÀÌÇÁ»çÀÇ ³Ý½ºÄÉÀÌÇÁ , ¸¶ÀÌÅ©·Î¼ÒÇÁÆ®»çÀÇ ÀÎÅÍ³Ý ÀͽºÇ÷ξî , Cello , WinWWW , Nynx , Emacs WWW-modeµî ´Ù¾çÇÏ´Ù.

WWW¼­¹ö´Â ÇØ´ç WWW ¼­ºñ½º ¿äû¿¡ ´ëÇÑ °á°úÀÎ HTML ¹®¼­¸¦ Á¦°øÇÑ´Ù. ƯÈ÷ WWW¼­¹ö´Â °íÆÛ , ¿þÀÌÁî , FTP , ¾ÆÅ° , ´º½º , ¸ÞÀÏ µî ´Ù¾çÇÑ ÇÁ·ÎÅäÄÝÀ» Áö¿øÇϱ⠶§¹®¿¡ º°µµÀÇ ÇÁ·Î±×·¥¾øÀÌ WWW»ó¿¡¼­ ÀÌ·¯ÇÑ ¼­ºñ½º¸¦ ÀÌ¿ëÇÒ ¼ö ÀÖ´Ù. ¶ÇÇÑ CGI¶ó´Â ¹æ¹ýÀ» »ç¿ëÇÏ¿© ¿ÜºÎÀÇ ÇÁ·Î±×·¥À» ¿¬µ¿ÇÏ¿© »ç¿ëÇÒ ¼öµµ ÀÖ´Ù. À̿밡´ÉÇÑ WWW¼­¹ö·Î´Â NCSA httpd , Apache , CERN , BESTWWWD , Machttp , WWWstar , HTTPS , NetscapeµîÀÌ ÀÖ´Ù.

º»·¡ WWW¿¡¼­ »ç¿ëµÇ´ø ÁÖ¼Ò ÁöÁ¤¹æ½ÄÀº URIs(Universal Resource Identifiers)¶ó ºÒ¸®´Â ÁÖ¼Ò ½Ã½ºÅÛÀ¸·Î¼­ WWW³»ÀÇ ¹®¼­³ª ¸ÖƼ¹Ìµð¾î Á¤º¸ µîÀ» ±¸º°Çϱâ À§Çؼ­ »ç¿ëµÈ´Ù. ±×·¯³ª ÀÎÅÍ³Ý Ç¥ÁØ ÇÁ·ÎÅäÄÝÀÇ °³¹ß°ú ±â¼ú °ËÁõÀ» ´ã´çÇϰí ÀÖ´Â IETF(Internet Engineering Task Force Team)¿¡¼­´Â ÀÌ¿Í À¯»çÇÑ °³³äÀ¸·Î URL (Uniform Resource Locators )À» Á¤ÀÇÇß´Ù . URIs¿Í URLÀº ±× ¿ëµµ¿Í °³³ä ÀÚü°¡ °ÅÀÇ °°´Ù°í ¸»ÇÒ ¼ö ÀÖ´Ù. ±×·¯³ª ½ÇÁ¦ÀÇ °æ¿ì URIs°¡ URLÀ» Æ÷ÇÔÇÏ´Â °³³äÀÌ´Ù. ±×·¯³ª ÀϹÝÀûÀ¸·Î IETFÀÇ URLÀ» WWWÀÇ ÁÖ¼Ò ½Ã½ºÅÛÀ¸·Î »ç¿ëÇÑ´Ù. URLÀº WWW¿¡¼­ »ç¿ëµÇ´Â ¸¸±¹ °øÅë¾îÀÌ´Ù. µû¶ó¼­ »ç¿ëÀÚ´Â ¿øÇÏ´Â ¹®¼­³ª Á¤º¸¸¦ ¸í½ÃÇÒ ¶§ URLÀÇ Çü½Ä¿¡ ¸ÂÃç ±â¼úÇÑ ÈÄ ¿øÇÏ´Â WWW¼­¹ö¿¡ ¼­ºñ½º¸¦ ¿äûÇϱ⸸ ÇÏ¸é µÈ´Ù.

URLÀº [ ±×¸²5-26 ] ó·³ ÇÁ·ÎÅäÄÝ , È£½ºÆ® ÁÖ¼Ò , ÇØ´ç ÆÄÀÏÁ¤º¸ µî 3°³ÀÇ ÁÖ¿äÇÑ ºÎºÐÀ¸·Î ±¸¼ºµÈ´Ù.

[ ±×¸² 5-26 ] WWWÀÇ URL ÁּҽýºÅÛ

[ ±×¸² 5-26 ]ÀÇ ¿¹¿¡¼­ »ç¿ëµÈ URLÀ» »ìÆìº¸ÀÚ. ( http://home.netscape.com/index.html ) ¾Õ¼± ¿¹´Â ´ÙÀ½°ú °°ÀÌ ÇØ¼®µÈ´Ù .

ÇÁ·ÎÅäÄÝ http

È£½ºÆ® ½Äº°ÀÚ ://

È£½ºÆ® À̸§ home.netscape.com

°æ·Î¸í /

ÆÄÀÏÀ̸§ index.html

URL¿¡¼­ ÇÁ·ÎÅäÄÝÀº »ç¿ëÇϰíÀÚ ÇÏ´Â ÇØ´ç ÀÎÅÍ³Ý ¼­ºñ½ºÀÇ ÇÁ·ÎÅäÄÝÀ» ¸í½ÃÇÑ´Ù. ¾Õ¼± ¿¹¿¡¼­ http´Â WWW ¼­ºñ½ºÀÇ »ç¿ëÀ» ÀǹÌÇÑ´Ù. ¶ÇÇÑ ftp ³ª gopher , wais , nntp ,telnet°°ÀÌ ´Ù¸¥ ÀÎÅÍ³Ý ÀÀ¿ë ÇÁ·Î±×·¥ µîÀ» ¸í½ÃÇÒ ¼ö ÀÖ´Ù.

URL¿¡¼­ ÇÁ·ÎÅäÄÝÀ» ¸í½ÃÇÑ ÀÌÈÄ¿¡´Â È£½ºÆ® ½Äº°ÀÚ·Î ://°¡ ³ª¿À´Â µ¥ :´Â ÇÁ·ÎÅäÄÝÀÌ ³¡³µÀ½À» ÀǹÌÇÑ´Ù. : ´ÙÀ½¿¡ ¼ö¹ÝµÇ´Â //´Â È£½ºÆ® À̸§ÀÌ ½ÃÀÛµÊÀ» ÀǹÌÇÑ´Ù. URL¿¡¼­ È£½ºÆ® ½Äº°ÀÚ ´ÙÀ½¿¡´Â È£½ºÆ® À̸§ÀÌ ¸í½ÃµÈ´Ù. ¾Õ¼± ¿¹¿¡¼­´Â home.netscape.comÀÌ È£½ºÆ® À̸§ÀÌ´Ù. º¸ÅëÀÇ °æ¿ì WWW´Â ±âº»ÀûÀ¸·Î 80¹ø Æ÷Æ®¸¦ »ç¿ëÇÏ¿© ¼­ºñ½º¸¦ Á¦°øÇÑ´Ù. ±×·¯³ª ¸¸¾à ½Ã½ºÅÛÀÇ »çÁ¤¿¡ ÀÇÇØ¼­ ±âÁ¸ 80¹ø Æ÷Æ®¸¦ ÀÌ¿ëÇÏÁö ¸øÇÏ´Â °æ¿ì¿¡´Â È£½ºÆ®À̸§:Æ÷Æ® ¹øÈ£¿Í °°Àº Çü½ÄÀ¸·Î ¸í½ÃÇØ¾ß ÇÑ´Ù. Âü°í·Î 8080À̳ª 8888°°Àº Æ÷Æ®´Â ÇØ´ç WWW¼­¹ö°¡ ½ÃÇè ¿î¿µÁßÀÓÀ» ÀǹÌÇÑ´Ù.

URL¿¡¼­ È£½ºÆ® À̸§ ´ÙÀ½¿¡´Â ¿øÇÏ´Â ÆÄÀÏÀÌ À§Ä¡ÇÑ °æ·Î¸íÀÌ Ç¥±âµÈ´Ù. À̶§ µð·ºÅ丮°£ÀÇ ±¸ºÐÀº /(½½·¡½¬ )¸¦ ÀÌ¿ëÇÑ´Ù. À©µµ¿ì³ª µµ½º»ó¿¡¼­ ¿ª½½·¡½¬´Â »ç¿ëÇÏÁö ¾Ê´Â´Ù´Â Á¡À» ÁÖÀÇÇϱ⠹ٶõ´Ù. URL¿¡¼­ °¡Àå ¸¶Áö¸·¿¡ ¸í½ÃµÇ´Â Á¤º¸´Â ÆÄÀÏÀÇ À̸§ÀÌ´Ù. ¾Õ¼± ¿¹¿¡¼­´Â index.htmlÀÌ´Ù. ¿©±â¼­ Áß¿äÇÑ °ÍÀº html ÇüÅÂÀÇ ÆÄÀÏÀÌ´Ù. WWW¿¡¼­ »ç¿ëÇÏ´Â ±âº» ÆÄÀÏ Çü½ÄÀº HTML(Hypertext Markup Language)ÀÌ´Ù. µû¶ó¼­ WWW¿¡¼­ Á¦°øÇÏ´Â ¸ðµç ÇÏÀÌÆÛ¹Ìµð¾î ¹®¼­ÀÇ È®Àå¸íÀº .htmlÀÌ´Ù. URLÀº ¸¶Ä¡ ÇÑ µð·ºÅ丮³»¿¡¼­ °°Àº À̸§ÀÇ ÆÄÀÏÀÌ µ¿½Ã¿¡ Á¸ÀçÇÒ ¼ö ¾øµíÀÌ URLÀº ÀÎÅÍ³Ý»ó¿¡ ¿¬°áµÇ¾î ÀÖ´Â ¸ðµç ÆÄÀÏÀ» À¯ÀÏÇÏ°Ô ÀνÄÇÒ ¼ö ÀÖ´Â ±â´ÉÀ» Á¦°øÇÑ´Ù. ¾Æ¿ï·¯ URLÀº ¿øÇÏ´Â ÀÎÅÍ³Ý ¼­ºñ½ºÀÇ ÇÁ·ÎÅäÄÝÀ» ¸í½ÃÇÏ°Ô ÇÔÀ¸·Î¼­ ÀÌÈÄ Ãß°¡µÇ´Â ÀÎÅÍ³Ý ¼­ºñ½º¸¦ È®ÀåÇÒ ¼ö ÀÖ´Â ±â´ÉÀ» Á¦°øÇÑ´Ù.

ÀÎÅͳݻ󿡴 ¼ö¸¹Àº WWW¼­¹ö¿Í Ŭ¶óÀÌ¾ðÆ®°¡ À§Ä¡Çϰí ÀÖÀ¸¸ç À̵éÀº °¢±â ÇÊ¿äÇÑ Á¤º¸¸¦ ¿äûÇϰí ÀÌ ¿äû¿¡ ºÎÈïÇÏ´Â Á¤º¸¸¦ ÁÖ°í¹ÞÀ½À¸·Î½á WWW¼­ºñ½º°¡ ÀÌ·ç¾îÁø´Ù. À̶§ WWWŬ¶óÀÌ¾ðÆ®¿Í WWW¼­¹ö »çÀÌ¿¡´Â ÀÏÁ¤ÇÑ ¾à¼ÓÀÌ ÀÖ´Â µ¥ À̸¦ HTTP(Hypertext Transfer Protocol) ¶ó ÇÑ´Ù. ´Ù½Ã ¸»ÇØ HTTP´Â WWWŬ¶óÀÌ¾ðÆ®¿Í WWW¼­¹ö »çÀÌ¿¡ »ç¿ëµÇ´Â Åë½Å ±Ô¾àÀÌ´Ù. ÀÌ ±Ô¾à¿¡´Â WWWŬ¶óÀÌ¾ðÆ®°¡ ¿øÇÏ´Â WWW ¹®¼­¸¦ ¿äûÇÒ ¼ö ÀÖ´Â ¹æ¹ý°ú À̸¦ ã°í ÀÌ¿¡ ´ëÇÑ °á°ú³ª »óŸ¦ Àü´ÞÇÏ´Â ¹æ¹ýµé·Î ±¸¼ºµÇ¾î ÀÖ´Ù. HTTP¿¡ ´ëÇÑ ÀÚ¼¼ÇÑ ³»¿ëÀº ÀÎÅͳݿ¡¼­ Á¦°øÇÏ´Â °¢Á¾ Á¤º¸¸¦ ÀÌ¿ëÇÏ¿© ÀÌÇØÇÏ±æ ¹Ù¶õ´Ù. ´ÜÁö ¿©±â¼­´Â HTTPÀÇ Áß¿äÇÑ Æ¯Â¡¿¡ ´ëÇØ¼­¸¸ »ìÆìº»´Ù.

-> HTTP ´Â WWWŬ¶óÀ̾ðÆ®ÀÇ ¿äû¿¡ ´ëÇÑ WWW¼­¹öÀÇ ÀÀ´äÀ¸·Î ÀÌ·ç¾îÁö´Â Åë½Å ±Ô¾àÀÌ´Ù. WWW»ç¿ëÀÚ´Â WWWŬ¶óÀÌ¾ðÆ®¸¦ ÀÌ¿ëÇÏ¿© ÇÏÀÌÆÛ ¿¬°áÁ¡(Hyperlink)À» ¼±ÅÃÇÔÀ¸·Î¼­ ÀÌ ÇÏÀÌÆÛ ¿¬°áÁ¡¿¡ ÇØ´çÇÏ´Â Á¤º¸¸¦ ¿äûÇϰí WWW¼­¹ö´Â ÀÌ ¿äû¿¡ ÇØ´çÇÏ´Â Á¤º¸¸¦ Á¦°øÇÑ´Ù. ÀÌ·¯ÇÑ °úÁ¤ÀÇ ¿¬¼Ó ÀÛ¾÷À¸·Î½á »ç¿ëÀÚ´Â ¿øÇÏ´Â ÇÏÀÌÆÛ ¿¬°áÁ¡À» ÅëÇØ ÀÎÅͳÝÀÇ ¸ðµç Á¤º¸¸¦ Ȱ¿ëÇÒ ¼ö ÀÖ´Ù. À̶§ Á¤º¸¶õ ´Ü¼øÈ÷ ÇÏÀÌÆÛÅØ½ºÆ®¸¸À» ÀǹÌÇÏ´Â °ÍÀÌ ¾Æ´Ï¶ó ÀÏ¹Ý ¹®¼­³ª ±×¸², ¼Ò¸®, µ¿È­»ó µîÀÇ °¡´ÉÇÑ ¸ðµç Á¤º¸¸¦ ÀǹÌÇÑ´Ù.

- HTTP´Â ´Ü¼øÈ÷ WWW¿¡¼­ »ç¿ëÇÏ´Â ¹®¼­ÀÎ HTML¸¸À» Àü¼ÛÇÏ´Â Åë½Å ±Ô¾àÀÌ ¾Æ´Ï´Ù. ½ÇÁ¦ WWWŬ¶óÀÌ¾ðÆ®¿¡¼­´Â HTML¹®¼­»Ó¸¸ ¾Æ´Ï¶ó ´Ù¸¥ ÇüÅÂÀÇ ¹®¼­µµ ó¸® °¡´ÉÇÏ´Ù. ÀÌ ¸»Àº ½ÇÁ¦ HTTP°¡ ¹®¼­¸¦ ó¸®ÇÒ °æ¿ì ƯÁ¤ÇÑ ÇüÅÂÀÇ ¹®¼­¿¡ ÀÇÁ¸ÇÏÁö ¾Ê´Â´Ù´Â ¸»ÀÌ´Ù. µû¶ó¼­ WWWŬ¶óÀÌ¾ðÆ®´Â Ã³¸® °¡´ÉÇÑ ¹®¼­ÀÇ Á¾·ù¿¡ ´ëÇÑ Á¤º¸¸¦ WWW¼­¹ö¿¡°Ô º¸³»°í WWW¼­¹ö´Â »ý¼º °¡´ÉÇÑ ¹®¼­¸¦ º¸³¿À¸·Î¼­ HTTP´Â ƯÁ¤ÇÑ ¹®¼­¿¡ ÀÇÁ¸ÇÏÁö ¾Ê´Â´Ù. ÀÌ·¯ÇÑ Ã³¸® ¹æ¹ýÀº °¢Á¾ ¾ÐÃàÆÄÀÏÀ̳ª Çѱ¹¾î³ª ¿µ¾î, ÀϾÀº ¾ð¾îµé»çÀÌ¿¡¼­µµ Àû¿ëµÈ´Ù.

- HTTP¿¡¼­ Ŭ¶óÀÌ¾ðÆ®´Â ¼­¹ö¿¡°Ô ¿øÇÏ´Â Á¤º¸¿¡ ´ëÇÑ URL°ú ÇÔ²² GET , PUT, POST°°Àº ¸Þ¼Òµå¸¦ ÇÔ²² WWW¼­¹ö¿¡°Ô º¸³½´Ù. WWW¼­¹ö´Â ¿äûµÈ URL¿¡ ÇØ´çÇÏ´Â Á¤º¸¸¦ ¸Þ¼Òµå¸¦ »ç¿ëÇÏ¿© º¸³½´Ù. ¿¹¸¦ µé¾î GET¸Þ¼Òµå´Â ´ÜÁö ¿äûÇÑ ¹®¼­¸¸À» Àü¼ÛÇÏ´Â ±â´ÉÀ» Á¦°øÇÑ´Ù.

- HTTP´Â Àü¼Û½Ã ÆÐŶÀÇ Çì´õºÎºÐ¿¡ Àü¼ÛµÉ °´Ã¼¿¡ ´ëÇÑ Á¤º¸¸¦ ´ã°í ÀÖ´Ù. À̶§ HTTP Çì´õ´Â MIME(Multipurpose Internet Mail Protocol)Çü½ÄÀ¸·Î ±¸¼ºµÇ¾î ÀÖ´Ù. µû¶ó¼­ ´Ù¸¥ ÇüÅÂÀÇ Á¤º¸¸¦ ó¸®ÇÒ ¼ö ÀÖ´Ù. °¡·É, ÇÏÀÌÆÛ¹Ìµð¾î ÀüÀÚ¿ìÆíÀ̳ª Ç¥ÁØÈ­µÇÁö ¾ÊÀº ¹®¼­ µîÀ» ó¸®ÇÒ ¼ö ÀÖ´Ù.

HTMLÀº ´Ü¼øÇÏÁö¸¸ ¸ÖƼ¹Ìµð¾î¸¦ Æ÷ÇÔÇÑ °­·ÂÇÑ ºñÁÖ¾ó È¿°ú¸¦ Á¦°øÇÏ´Â ¹®¼­ÀÌ´Ù . HTMLÀº µÎ °¡Áö Ãø¸é¿¡¼­ Áß¿äÇÑ ¿ø¸®¸¦ °®´Â´Ù. ù¹øÂ°·Î´Â WWW ¹®¼­¸¦ À§ÇÑ ¸¶Å©¾÷ ¾ð¾î·Î¼­ ¸¶Å©¾÷ Ç¥Áؾð¾îÀÎ SGML(Standard General Markup Language)ÀÇ ÀϺΠ±â´ÉÀ» Á¦°øÇÑ´Ù. Áï, ¹®¼­ÀÇ Çü½ÄÀ» Á¤ÀÇÇÒ ¼ö ÀÖ´Ù . ¶ÇÇÑ HTMLÀº ÇÑ ¹®¼­¿¡¼­ ´Ù¸¥ ¹®¼­·ÎÀÇ À̵¿À» °¡´ÉÇÏ°Ô ÇÏ°í °¢Á¾ ¸ÖƼ¹Ìµð¾î ¹®¼­ ±â´ÉÀ» Áö¿øÇÏ´Â ÇÏÀÌÆÛ¹Ìµð¾î ±â´ÉÀ» Á¦°øÇÑ´Ù. ¸¶Å©¾÷ ¾ð¾î¶õ ¿øÇÏ´Â ¹®¼­ÀÇ ÇüÅ¿¡ ÀûÇÕÇÑ ¸¶Å©¸¦ ¼±¾ðÇÔÀ¸·Î¼­ ÀÌ ¸¶Å©¸¦ ÇØ¼®ÇÏ´Â ÄÄÆÄÀÏ·¯¿¡ ÀÇÇØ¼­ ÀÚµ¿ÀûÀ¸·Î ¹®¼­¸¦ ¸¸µé¾î ³»´Â ¾ð¾î¸¦ ¸»ÇÑ´Ù. ÀÌ·¯ÇÑ Æ¯Â¡¶§¹®¿¡ HTML¹®¼­´Â Lynx°°ÀÌ ¹®ÀÚ¸¦ ±â¹ÝÀ¸·Î ÇÏ´Â WWWŬ¶óÀÌ¾ðÆ®¿¡¼­´Â ¹®ÀÚÀÇ Å©±â³ª ŸÀÔ, °¢Á¾ ¸ÖƼ¹Ìµð¾î Á¤º¸¸¦ Ç¥ÇöÇÒ ¼ö ¾ø´Ù. ±×·¯³ª ³Ý½ºÄÉÀÌÇÁ³ª ÀͽºÇ÷ξÀº ±×·¡ÇÈ ºê¶ó¿ìÀú µµ±¸¿¡¼­´Â ¸¶Å©¿¡¼­ Á¦°øÇÏ´Â ´Ù¾çÇÑ ±â´ÉÀ» ÀÌ¿ëÇÒ ¼ö ÀÖ´Ù.

°¡Àå ÀϹÝÀûÀÎ HTML ¹®¼­ ÀÛ¼º ¹æ½ÄÀº À¯´Ð½ºÀÇ vi³ª emacs°°Àº ÀϹÝÀûÀÎ ¹®¼­ÆíÁý±â³ª À©µµ¿ìÀÇ edit, hwp°°Àº ¹®¼­ÆíÁý±â¸¦ ÀÌ¿ëÇÏ¿© ¹®¼­¸¦ ÀÛ¼ºÇϰųª HTML¹®¼­ ÆíÁýÀ» µµ¿ÍÁÖ´Â °¢Á¾ HTMLÆíÁý±â¸¦ ÀÌ¿ëÇÏ´Â ¹æ¹ýÀÌ ÀÖ´Ù. »ç½Ç HTML¹®¼­ ÀÛ¼º¿¡ ÀÖ¾î °¡Àå ÈǸ¢ÇÑ µµ±¸´Â MS ÀͽºÇ÷ξîÀ̳ª ³Ý½ºÄÉÀÌÇÁ°°Àº WWWŬ¶óÀÌ¾ðÆ® ±× ÀÚüÀÌ´Ù. ¿Ö³ÄÇϸé À̵éÀº ·ÎÄà ½Ã½ºÅÛ¿¡¼­ ÀÛ¼ºµÈ HTML¹®¼­¸¦ È­¸é¿¡ º¸¿©ÁÖ´Â ±â´ÉÀ» Á¦°øÇÒ »Ó¸¸ ¾Æ´Ï¶ó È­¸é»óÀ¸·Î Ç¥ÇöµÇ´Â HTML¹®¼­ ±× ÀÚü ³»¿ëµµ È®ÀÎÇÒ ¼ö Àֱ⠶§¹®ÀÌ´Ù. ÀÌ ±â´ÉÀ» ÀÌ¿ëÇÏ¿© ¿ì¸®´Â ¿øÇÏ´Â ¹®¼­¸¦ ½±°Ô ÀÛ¼ºÇÒ ¼ö ÀÖ´Ù.

WWW´Â URLÀ» ÅëÇØ HTML¹®¼­°¡ Àü´ÞµÇ´Â Á¤ÀûÀÎ Á¤º¸ Àü´Þ ¹æ½ÄÀÇ ½Ã½ºÅÛÀÌ´Ù. ÀÌ·¯ÇÑ ¹®Á¦Á¡À» ¾à°£À̳ª¸¶ ÇØ°áÇϰíÀÚ ³ª¿Â ¹æ¹ýÀÌ CGIÀÌ´Ù. WWWŬ¶óÀÌ¾ðÆ®´Â HTML¹®¼­³»¿¡¼­ NAME="jhpark" , CreditID="1234"ó·³ ¿øÇÏ´Â ¸Å°³º¯¼ö¸¦ ÁöÁ¤ÇÏ¿© º¸³½´Ù. ¼­¹ö´Â ÀÌ ¸Å°³º¯¼ö¸¦ »ç¿ëÇÏ¿© ÇØ´ç È£½ºÆ®ÀÇ È¯°æ º¯¼ö¸¦ ÁöÁ¤ÇÏ°í ¿ÜºÎÀÇ ÇÁ·Î±×·¥¿¡ ÀÌ È¯°æ º¯¼ö¸¦ Àü´ÞÇÏ¿© ¿øÇÏ´Â ÀÛ¾÷À» ¼öÇà½ÃŲ´Ù. CGI¿¡¼­ »ç¿ëÇϴ ȯ°æ º¯¼öµéÀº ´ëºÎºÐÀÇ ¿î¿µ üÁ¦¿¡¼­ Áö¿øÇÑ´Ù´Â ÀåÁ¡ÀÌ ÀÖÁö¸¸ °¢ ÇÁ·Î±×·¥µéÀÌ ¹Ì¸® Á¤ÀÇµÈ È¯°æ º¯¼öµéÀ» ÀÌ¿ëÇϵµ·Ï ÀÛ¼ºµÅ¾ß Çϰí WWWŬ¶óÀÌ¾ðÆ®µµ »çÀü¿¡ ¾î¶² ȯ°æ º¯¼öµéÀÌ ÀÖ´ÂÁö ¾Ë°í ÀÖ¾î¾ß ÇÑ´Ù. CGI¹æ¹ý¸»°í ¿ÜºÎÀÇ ÇÁ·Î±×·¥À» È£ÃâÇÏ´Â ¹æ¹ýÀ¸·Î´Â BGI(Binary Gateway Interface)¶ó´Â °ÍÀÌ Àִµ¥ BGI´Â ȯ°æ º¯¼ö¸¦ ¼±¾ðÇÏ´Â ´ë½Å¿¡ WWW¼­¹ö»ó¿¡¼­ ¿ÜºÎÀÇ ÇÁ·Î±×·¥À̳ª DLLÀ» ¼öÇà½ÃŲ´Ù. ÀÌ °æ¿ì, ȯ°æ º¯¼ö ´ë½Å¿¡ ¹Ì¸® Á¤ÀÇµÈ API¸¦ »ç¿ëÇÑ´Ù.

  1. WWW¿Í CORBA

2.3.1 ÀÎ ÅÍ³Ý ±â¼ú°ú CORBA ±â¼úÀÇ ÁøÁ¤ÇÑ ÀǹÌ

ÃÖ±Ù µé¾î ÀÎÅÍ³Ý ±â¼úºÐ¾ß¿¡¼­ ±Þ¼Óµµ·Î È®»êµÇ°í ÀÖ´Â ºÐ¾ß°¡ ÀÎÆ®¶ó³ÝÀ̶õ ºÐ¾ßÀÌ´Ù. ÈçÈ÷µé ÀÎÆ®¶ó³ÝÀ» "ÀÛÀº ÀÎÅͳÝ' Á¤µµ·Î ÀνĵǴ °æÇâµµ ÀÖÁö¸¸ Á¤º¸ °ü¸® Â÷¿ø¿¡¼­ ÀÎÆ®¶ó³ÝÀº º¸´Ù Å« ÀÇ¹Ì¿Í °¡´É¼ºÀ» Á¦°øÇÑ´Ù. ¿Ö³ÄÇϸé ÀÎÆ®¶ó³ÝÀº ±â°üÀ̳ª ´Üü¿¡°Ô ÀÛÀº Á¤º¸ °í¼Óµµ·Î¸¦ Á¦°øÇϱ⠶§¹®ÀÌ´Ù. ƯÈ÷ ÀÌ °í¼Óµµ·Î´Â ¿ÜºÎ¿ÍÀÇ ¿¬°á¿¡µµ °¡Àå ¾ÈÀüÇÑ ¿¬°á¹æ¹ýÀ» Á¦°øÇÏ¸ç ±âÁ¸ÀÇ ÀÎÅͳݿ¡¼­ °³¹ßµÈ Á¤º¸ ½Ã½ºÅÛÀ» ±×´ë·Î ÀÌ¿ëÇÒ ¼ö ÀÖ°Ô ÇØÁØ´Ù. ¿¹¸¦ µé¾î, ƯÁ¤ ±â°ü¿¡¼­ TCP/IP¸¦ ÀÀ¿ëÇÑ ÀÎÆ®¶ó³ÝÀ» ±¸¼ºÇÑ´Ù¸é ´çÀå ±âÁ¸¿¡ ÀÎÅͳݿ¡¼­ »ç¿ëÇß´ø ÀüÀÚ¿ìÆíÀ̳ª ´º½º, WWW±â¼ú µîÀ» Àç»ç¿ëÇÒ ¼ö ÀÖ´Ù. À̸¦ ÅëÇØ °¡Àå Àú·ÅÇϰí È¿À²ÀûÀÎ Á¤º¸ ³×Æ®¿÷À» ±¸¼ºÇÒ ¼ö ÀÖ°Ô µÈ´Ù. ÀÌ ¶§ ÇØ´ç ÀÎÆ®¶ó³Ý¿¡´Â ±âÁ¸ÀÇ Á¶Á÷À̳ª ±â°ü¿¡¼­ »ç¿ëÇß´ø ÀÀ¿ë ÇÁ·Î±×·¥À̳ª ½Ã½ºÅÛÀ» ÅëÇÕÇØ¾ß ¸¸ ÇÑ´Ù. ÀÌ ¹®Á¦¸¦ ÇØ°áÇϱâ À§ÇÑ ¹æ¹ýÀ¸·Î °¡Àå ÀûÇÕÇÑ °ÍÀÌ ¹Ù·Î CORBA¸¦ ÀÌ¿ëÇÏ´Â °ÍÀÌ´Ù. ´ÙÀ½ [±× ¸²5-27]Àº CORBA¸¦ ÀÎÅͳݿ¡ ÀÌ»óÀûÀ¸·Î Àû¿ëÇϴ ȯ°æ Áß ÇϳªÀÌ´Ù. ÀÎÆ®¶ó³Ý ¶Ç´Â ÀÎÅͳÝÀ» ÀÌ¿ëÇÏ´Â »ç¶÷µéÀº ±âÁ¸¿¡ ÀÌ¿ëÇÏ´ø WWWŬ¶óÀÌ¾ðÆ®¸¦ ÅëÇØ ½±°Ô ±â¾÷¿¡¼­ Á¦°øÇÏ´Â WWW¼­¹ö¿¡ Á¢±ÙÇÑ´Ù. ÀÌ ¶§, WWW¼­¹ö´Â CORBA¸¦ ÅëÇØ ±âÁ¸ÀÇ »ç¿ëÇÏ´ø ¸ðµç ÀÀ¿ë ½Ã½ºÅÛÀ» ÅëÇØ º¸´Ù Àû±ØÀûÀ¸·Î Á¤º¸¸¦ Á¦°øÇÒ ¼ö ÀÖ´Ù. °¡·É, °´Ã¼ ÁöÇâ µ¥ÀÌŸº£À̽º¿¡ ÀúÀåµÇ¾î ÀÖ´Â µ¥ÀÌŸ³ª °ü°èÇü µ¥ÀÌŸº£À̽º¿¡ ÀúÀåµÇ¾î ÀÖ´Â µ¥ÀÌŸ, ÆÄÀÏ¿¡ ÀúÀåµÇ¾î ÀÖ´Â µ¥ÀÌŸ µî °¢Á¾ Á¤º¸ ½Ã½ºÅÛÀ» ÃѸÁ¶óÇÑ Á¤º¸ ½Ã½ºÅÛÀ» ±¸¼ºÇÒ ¼ö ÀÖ´Ù. ÀÌ ¶§ ½Ã½ºÅÛ ±¸ÃàÀÚ´Â ´ÜÁö CORBA ÀÎÅÍÆäÀ̽º¸¸ ¾Ë°í ÀÖÀ¸¸é µÈ´Ù .

[ ±×¸² 5-27 ] ÀÎÆ®¶ó³Ý°ú CORBA

2.3.2 CORBA-WWW¸¦ ¿¬µ¿Çϱâ À§ÇÑ ¿©·¯°¡Áö ¹æ¹ý

WWW¿Í CORBA¸¦ ÅëÇÕÇϱâ À§ÇÑ ¹æ¹ýÀº Å©°Ô ´ÙÀ½ÀÇ 2°¡Áö·Î ´ëº°ÇÒ ¼ö ÀÖ´Ù. ¸ÕÀú ÀÌ µÎ ½Ã½ºÅÛ¿¡ º¯°æÀ» °¡ÇÏÁö ¾Ê°í WWWÀÇ CGIó·³ ±âÁ¸ÀÇ ¹æ¹ýÀ» ÀÌ¿ëÇÏ¿© ÅëÇÕÇÏ´Â ¹æ¹ýÀÌ ÀÖ´Ù. ´Ù¸¥ ¹æ¹ýÀº ÀÌ µÎ ½Ã½ºÅÛÀ» È®ÀåÇϰųª º¯Çü½ÃÄÑ ÅëÇÕÇÏ´Â ¹æ¹ýÀ» µé ¼ö ÀÖ´Ù.

  1. ½Ã½ºÅÛÀÇ ±â´ÉÈ®ÀåÀ» ÅëÇÑ ÅëÇÕ

°¡Àå ±âÃÊÀûÀÎ WWW¿Í CORBAÀÇ ¿¬µ¿¹æ¹ýÀº WWW¼­¹öÀÇ ¿ÜºÎ ÇÁ·Î±×·¥ ¿¬µ¿¹æ¹ýÀÎ CGI(Common Gateway Interace)¸¦ ÀÌ¿ëÇÏ¿© CORBA°ÔÀÌÆ®¿þÀÌ ÇÁ·Î±×·¥À» ÀÛ¼ºÇÏ´Â °ÍÀÌ´Ù. À̶§ CGI°ÔÀÌÆ®¿þÀÌ´Â WWWÀÇ ¿äûÀ» CORBA¿¡°Ô Àü´ÞÇϰí CORBA°¡ À̸¦ ¹ÞÀº ÈÄ ¼öÇàÇÑ °á°ú¸¦ HTML¹®¼­ ¾ç½ÄÀ¸·Î ÀÛ¼ºÇÑ ÈÄ µ¹·ÁÁÖ´Â ¿ªÇÒÀ» ÇÑ´Ù. CGI´Â ȯ°æ º¯¼ö¸¦ ÅëÇØ ¿ÜºÎÀÇ ÇÁ·Î±×·¥À» »ç¿ëÇÏ´Â ¹æ¹ýÀÌ´Ù. ½ÇÁ¦ ÀÌ ¹æ¹ýÀÇ °æ¿ì WWW¼­¹ö°¡ CGIÇÁ·Î±×·¥ÀÇ ¿äû¿¡ ´ëÇØ CGI¸¦ ¼öÇàÇÏ´Â º°µµÀÇ WWW¼­¹ö(½ÇÁ¦ CGIÇÁ·Î±×·¥)¸¦ »ý¼ºÇϱ⠶§¹®¿¡ ´Ù¼öÀÇ ¼­ºñ½º°¡ ¿äûµÉ °æ¿ì ½Ã½ºÅÛ¿¡ ¸¹Àº ºÎÇϰ¡ °É¸°´Ù. ¶ÇÇÑ ÇÁ·Î±×·¥ °³¹ß ½Ã CGI ÇÁ·Î±×·¥ ¹æ¹ý°ú CORBA ÀÀ¿ë ÇÁ·Î±×·¥ ÀÛ¼º¹æ¹ýÀ» ¸ðµÎ¸¦ ¾Ë¾Æ¾ß ¸¸ ÇÑ´Ù.

[ ±×¸² 5-28 ] ÀüÇüÀûÀÎ CGI¹æ¹ýÀ» ÅëÇÑ WWW-CORBA ÅëÇÕ

CGI¹æ¹ý ¿Ü¿¡ ½Ã½ºÅÛ¿¡ ¾î¶² °­Á¦ÀûÀÎ º¯ÇüÀ» ÁÖÁö¾Ê´Â ¹æ¹ýÀ¸·Î ÀÚ¹Ù ¾ð¾î·Î ÀÛ¼ºµÈ CORBAÀÀ¿ë ÇÁ·Î±×·¥À» µé ¼ö ÀÖ´Ù. ÀÚ¹Ù ¾ð¾î´Â ¾ÖÇø´À̶ó°í ÇÏ´Â ÀÎÅÍ³Ý ÀÀ¿ë ÇÁ·Î±×·¥ÀÇ ÀÛ¼ºÀ» °¡´ÉÇÏ°Ô ÇØÁØ´Ù. ´Ù½Ã ¸»ÇØ ÀÚ¹Ù·Î ÀÛ¼ºÇÑ ¾ÖÇø´Àº ³Ý½ºÄÉÀÌÇÁ³ª ÀͽºÇ÷ξÀº À¥ºÎ¶ó¿ìÁ®³»¿¡¼­ ÀÛµ¿µÇ´Â ÇÁ·Î±×·¥ÀÌ´Ù. µû¶ó¼­ CORBA IDL·Î ÀÛ¼ºÇÑ ÇÁ·Î±×·¥À» ÀÚ¹Ù·Î º¯È¯ÇÏ¿© »ç¿ëÇÏ¸é ½Ã½ºÅÛ»óÀÇ ¾î¶°ÇÑ º¯Çü¾øÀÌ ÀÎÅͳݻ󿡼­ CORBAÀÇ ÀÀ¿ë ÇÁ·Î±×·¥À» ÀÌ¿ëÇÏ°Ô µÈ´Ù. ÀÌ ¹æ¹ý¿¡ ´ëÇÑ ÀÚ¼¼ÇÑ ³»¿ëÀº ´ÙÀ½ Àå¿¡¼­ ÁßÁ¡ÀûÀ¸·Î ´Ù·ç±â·Î ÇÑ´Ù. ¿Ö³ÄÇϸé CORBA IDL-ÀÚ¹Ù ¸ÅÇÎÀº ÀÎÅÍ³Ý È¯°æ¿¡¼­ ÁøÁ¤ÇÑ ÅëÇÕ ¼Ö·ç¼ÇÀ» ±¸ÃàÇϱâ À§ÇÑ ´Ü¼­¸¦ Á¦°øÇϱ⠶§¹®ÀÌ´Ù. ÀÚ¹Ù ¾ð¾î¿Ü¿¡µµ ÀÌ¿Í À¯»çÇÑ ¸ñÀûÀ¸·Î »ç¿ëµÇ¾îÁö´Â ¾ð¾î·Î TCL(Tool Command Language)¿Í Telescript°¡ ÀÖ´Ù.

2.3.2.2 ½Ã ½ºÅÛÀÇ º¯ÇüÀ» ÅëÇÑ ÅëÇÕ

´ÙÀ½ÀÇ ¹æ¹ýµéÀº CORBA½Ã½ºÅÛÀ» Ȱ¿ëÇϱâ À§ÇØ WWW½Ã½ºÅÛ¿¡ º¯ÇüÀ» °¡ÇÏ´Â ¹æ¹ýµéÀÌ´Ù.

ÀÌ ¹æ¹ýÀº CORBAÀÀ¿ë ÇÁ·Î±×·¥À» ÀÛ¼ºÇÏ´Â µ¥ ÀÖ¾î ±âº»ÀÌ µÇ´Â IDL¾ð¾î¸¦ WWW»ó¿¡¼­ À̿밡´ÉÇÑ ÇüÅÂÀÇ Å¬¶óÀÌ¾ðÆ®¸¦ À§ÇÑ ½ºÅͺê ÄÚµå, HTML Æû È­¸é, CGI·Î Á¸ÀçÇÏ´Â ¼­¹ö¸¦ À§ÇÑ ½ºÄÌ·ÎÅÏ Äڵ带 ÀÛ¼ºÇØÁÖ´Â °ÍÀÌ´Ù. ÀÌ ¶§ Ŭ¶óÀÌ¾ðÆ® ½ºÅͺê ÄÚµå´Â WWW ¶óÀ̺귯¸®(ÀϹÝÀûÀ¸·Î libwww)¿¡¼­ Á¦°øÇÏ´Â ±â´ÉÀ» ÀÌ¿ëÇÏ¿© CGI·Î Á¸ÀçÇÏ´Â ¼­¹ö ÇÁ·Î±×·¥À» È£ÃâÇÏ°Ô µÈ´Ù. ÀÌ ¹æ¹ýÀº CORBA¼­ Á¦°øÇÏ´Â ÇÁ·Î±×·¥ ÀÛ¼º¹æ¹ýÀ» ±×´ë·Î »ç¿ëÇÒ ¼ö ÀÖ´Ù´Â ÀåÁ¡Àº ÀÖÁö¸¸ ±Ô¸ð°¡ Å« ÀÀ¿ë ÇÁ·Î±×·¥À» ÀÛ¼ºÇÏ´Â °æ¿ì ¸¹Àº ¹®Á¦¸¦ ¹ß»ý½ÃŲ´Ù. ¿¹¸¦ µé¸é, ¼ö ¹é °³ÀÇ ÀÎÅÍÆäÀ̽º·Î Á¤ÀÇµÈ IDLÆÄÀÏÀ» ¾î¶² ½ÄÀ¸·Î HTMLÆû°ú Ŭ¶óÀÌ¾ðÆ® ÄÚµå·Î ±¸ºÐÇÒ °ÍÀΰ¡ ÇÏ´Â ¹®Á¦ÀÌ´Ù.

[ ±×¸²5-29 ] CORBA IDLÀÇ È®Àå

ÀÌ ¹æ¹ýÀº Å©°Ô HTTPÇÁ·ÎÅäÄÝÀ» CORBAÀÇ ±âº» Åë½Å ¸ÞÄ¿´ÏÁòÀ¸·Î »ç¿ëÇÏ´Â ¹æ¹ý°ú HTTPÀÚü¿¡ CORBA¼­ºñ½ºÀÇ »ç¿ëÀ» À§ÇØ Ãß°¡ ¸ðµâÀ» ¼³Ä¡ÇÏ´Â ¹æ¹ýÀÌ ÀÖ´Ù. ÀüÀÚÀÇ °æ¿ì CORBAÀÇ Åë½Å ¹æ¹ýÀ¸·Î HTTP¸¦ »ç¿ëÇÔÀ¸·Î¼­ CORBAÀÀ¿ë ÇÁ·Î±×·¥¿¡¼­ WWWÀÇ ±â´ÉÀ» Ȱ¿ëÇÒ ¼ö ÀÖ´Â Åä´ë¸¦ Á¦°øÇÒ ¼ö ÀÖ´Ù. ÈÄÀÚÀÇ °æ¿ì HTTP¸¦ ÅëÇØ CORBA¼­ºñ½ºÀÇ È£ÃâÀ» °¡´ÉÇÏ°Ô ÇÑ´Ù. À̸¦ À§ÇØ WWW¼­¹ö¿¡ CORBA¼­ºñ½º È£Ã⠽à °¢Á¾ ŸÀÔ Á¤º¸ µîÀ» °ü¸®Çϱâ À§ÇÑ ¸ðµâ°ú »ý¼ºµÈ CORBA¼­ºñ½º¸¦ ¾Ë·ÁÁÖ´Â ¸ðµâ µî »õ·Î¿î ¸ðµâÀ» Ãß°¡ÇØ¾ß ÇÑ´Ù. ÀÌ·¯ÇÑ ¹æ¹ý¿¡ ´ëÇÑ ÀÚ·á´Â http://www.scu.edu.au/ausweb95¿¡¼­ ãÀ» ¼ö ÀÖ´Ù.

2.4 Çö »óȲ°ú ¹Ì·¡

2.4.1 Çö Àç ÀÌ¿ë °¡´ÉÇÑ ¼ÒÇÁÆ®¿þ¾îµé

ÇöÀç WWW¿¡´Â ºÐ»ê °´Ã¼±â¼úÀ» µµÀÔÇÏ¿© °´Ã¼ÁöÇâ ±â¼úÀ» WWW¿¡ ¿¬µ¿ÇÏ·Á´Â ³ë·ÂµéÀÌ ¿©·¯ ½Ã½ºÅÛ¿¡¼­ °æÁֵǰí ÀÖ´Ù. ÀÌ·¯ÇÑ ³ë·ÂµéÀº Å©°Ô ¼ø¼öÇÑ °´Ã¼ÁöÇâ ±â¼úÀ» ¿¬µ¿ÇÏ·Á´Â ³ë·Âµé°ú ºÐ»ê°´Ã¼ Ç¥ÁØÀÎ CORBA¸¦ ¿¬µ¿ÇÏ·Á´Â ³ë·ÂÀ¸·Î ºÐ·ùÇÒ ¼ö ÀÖ´Ù.

2.4.1.1 WWW¿Í ¼ø¼öÇÑ ºÐ»ê°´Ã¼ ±â¼úÀÇ ¿¬µ¿ ½Ã½ºÅÛ

URL : http://www.research.digital.com/SRC/Obliq/Obliq.html

Obliq´Â ¸ðµâ¶ó3¾ð¾î¿¡ ±â¹ÝÇÑ µ¥ÀÌŸ ŸÀÔÀÌ ¾ø´Â ÀÎÅÍÇÁ¸®ÅÍ ¾ð¾îÀÌ´Ù. ƯÈ÷ ÀÌ ¾ð¾î´Â ºÐ»ê°´Ã¼¸¦ ´Ù·ç±â À§ÇÑ ±â´ÉÀ» Á¦°øÇÑ´Ù. ÀÌ ±â´É¿Ü¿¡µµ ¾²·¹µå, ´ÙÁß ³×Æ®¿÷ µî ´Ù¾çÇÑ ±â´ÉÀ» Á¦°øÇϰí ÀÖ´Ù. ÀÌ ¾ð¾î¸¦ ¹ÙÅÁÀ¸·Î WWW»ó¿¡¼­ »ç¿ëÀÚµéÀÌ Obliq¿¡¼­ Á¦°øÇÏ´Â ÀÛ¾÷(Session)À» °øÀ¯Çϵµ·Ï °³¹ßµÈ °ÍÀÌ Visual ObliqÀÌ´Ù. ³Ý½ºÄÉÀÌÇÁ³ª ÀͽºÇ÷ξÀº WWWŬ¶óÀÌ¾ðÆ®¿¡ Visual ObliqÀÇ ÀÎÅÍÇÁ¸®Å͸¦ ¿ÜºÎ ÇÁ·Î±×·¥À¸·Î µî·ÏÇÔÀ¸·Î¼­ ObliqÀÇ ÀÛ¾÷À» °øÀ¯ÇÒ ¼ö ÀÖ´Ù.

URL : http://www.apocalypse.org/pub/u/antony/phantom/phantom.html

PhantomÀº Obliq¿¡ ºÐ»ê ȯ°æ¿¡ º¸´Ù ÀûÇÕÇÑ ±â´ÉµéÀ» Ãß°¡ÇÑ ¾ð¾îÀÌ´Ù. ƯÈ÷ °´Ã¼°³³ä°ú ¸ðµâ, ÀÎÅÍÆäÀ̽º, ¿¹¿Ü»çȲ, °¡º£Áö Ä÷º¼Ç µîÀÌ Ãß°¡µÇ¾î º¸´Ù ¾ÈÁ¤ÀûÀÎ ºÐ»ê ÇÁ·Î±×·¥ÀÌ °¡´ÉÇÏ´Ù.

URL : http://www.python.org/

PythonÀº ±× ÀÚü·Î´Â ºÐ»ê ÇÁ·Î±×·¡¹Ö ¾ð¾î°¡ ¾Æ´Ï´Ù. ±×·¯³ª PythonÀº ÀÎÅÍÇÁ¸®ÅÍ ¹æ½ÄÀÇ °´Ã¼ÁöÇâ ¾ð¾îÀÌ¸ç »óÈ£ÀÛµ¿½Ä ÇÁ·Î±×·¥ÀÌ °¡´ÉÇÏ´Ù. À̸¦ À§ÇØ ¸ðµâ, Ŭ·¡½º, ¿¹¿Ü »óȲ, µ¿Àû Å×ÀÌŸ ŸÀÔ, ´Ù¾çÇÑ À©µµ¿ì ½Ã½ºÅÛ(XÀ©µµ¿ì , MFC, ¸Æ..)µîÀ» Áö¿øÇϰí ÀÖ´Ù.

URL : http://monty.cnri.reston.vaus/grail-0.2/

GrailÀº ¸¶Ä¡ ÀÚ¹Ù ÀÎÅÍÇÁ¸®Å͸¦ ³»ÀåÇÑ ³Ý½ºÄÉÀÌÇÁó·³ PythonÀ¸·Î ÀÛ¼ºµÈ Äڵ带 ¼öÇà°¡´ÉÇÏ°Ô Python ÀÎÅÍÇÁ¸®Å͸¦ ³»ÀåÇÑ WWWºÎ¶ó¿ìÁ®ÀÌ´Ù . Âü°í·Î Python/Grail Àº ÀÚ¹Ù/ÇÖÀÚ¹Ù¿Í À¯»çÇÑ ÇÁ·ÎÁ§Æ®ÀÇ ¼Ò»ê¹°ÀÌ´Ù.

URL : http://www-swiss.ai.mit.edu/~jar/s48.html

Schema48Àº °¡»ó ¸Ó½® ȯ°æ¿¡¼­ ¹ÙÀÌÆ® Äڵ带 ¼öÇàÇϴ ȯ°æÀÌ´Ù.

URL : http://arjuna.ncl.ac.uk/arjuna/summary.html

Arjuna´Â ÆúÆ®Å緱Ʈ(Fault-tolerant)ÇÑ ºÐ»ê ÀÀ¿ë ÇÁ·Î±×·¥À» ÀÛ¼ºÇÏ´Â µ¥ ÇÊ¿äÇÑ ÀÏ·ÃÀÇ µµ±¸¸¦ Áö¿øÇÏ´Â °´Ã¼ÁöÇâ ÇÁ·Î±×·¡¹Ö ½Ã½ºÅÛÀ¸·Î¼­ ºÐ»ê °´Ã¼»ó¿¡¼­ ÁßøµÈ Æ®·»Á§¼ÇÀ» Áö¿øÇϸç RPC¸¦ »ç¿ëÇÏ¿© °´Ã¼°£ÀÇ »óÈ£ÀÛµ¿ÀÌ °¡´ÉÇÏ´Ù. W3Objects´Â Arjuna¸¦ ±â¹ÝÀ¸·Î ÇÏ¿© WWW»ó¿¡¼­ °´Ã¼ÁöÇ⠽ýºÅÛÀ» ÅëÇØ È®Àå°¡´ÉÇÑ WWWÇϺΠÅä´ë¸¦ ±¸ÃàÇÒ ¼ö ÀÖµµ·Ï ÇÏ´Â ½Ã½ºÅÛÀÌ´Ù. W3Objects¿¡¼­ Áö¿øÇÏ´Â ±â´ÉÀ¸·Î °´Ã¼ Áߺ¹, µ¿½Ã¼º Á¦¾î, ij½³, ÆúÆ®Å緱Ʈ µîÀÌ ÀÖÀ¸¸ç °´Ã¼ÁöÇâ °³³äÀ» Áö¿øÇÑ´Ù.

  1. WWW¿Í CORBA ½Ã½ºÅÛÀÇ ¿¬µ¿

CORBADesktop Àº ¸ðµç CORBA ¸Þ¼Òµå¸¦ WWWÀÇ ÆûÇüÅ·Πº¯Çü½ÃÄÑ »ç¿ëÇÒ ¼ö ÀÖµµ·Ï ÇØÁÖ´Â ½Ã½ºÅÛÀÌ´Ù.

URL : http://webstar.cerc.wvu.edu/www4/www4.html

Web*´Â WWW¿¡¼­ ½ÇÇà°¡´ÉÇÑ CGI½ºÅ©¸³Æ®·Î¼­ TCL(Tool Commnad Language)¶ó´Â ½ºÅ©¸³Æ® ¾ð¾î¸¦ ±â¹ÝÀ¸·Î ÇÑ´Ù. ÀÌ ½Ã½ºÅÛÀº CORBA ¼­ºñ½º¿ÍÀÇ ¿¬µ¿À» À§ÇØ TCL¿¡ CORBAÀÇ DII(Dynamic Invocation Interface) È£Ãâ ±â´ÉÀ» Ãß°¡ÇÏ¿´´Ù. À̸¦ TCLDii¶ó°í ÇÑ´Ù. ÇöÀç ¾ÆÀÌ¿À³ªÀÇ OrbixÁ¦Ç°°ú ¿¬µ¿µÇ¾î ÀÖ´Ù.

2.4.2 Çâ ÈÄ Àü¸Á

ÇöÀç WWWÀÇ ±â¼úÀ» ÁÖµµÇϰí ÀÖ´Â W3C¿Í CORBA±â¼úÀ» ÁÖµµÇϰí ÀÖ´Â OMG´Â ÀÌ µÎ ±â¼úÀ» Á¢¸ñÇϱâ À§ÇÑ È°µ¿À» Çϰí ÀÖ´Ù ÇöÀç ÁøÇàµÇ´Â ¹æÇâÀ¸·Î´Â WWW¼­¹ö µ¥¸ó ÇÁ·Î±×·¥ÀÎ HTTPD¿¡ °´Ã¼ÁöÇâ ±â¼úÀ» °áÇÕÇÑ »õ·Î¿î µ¥¸óÀÎ HTTPD/NG¸¦ °³¹ß Áß¿¡ ÀÖ´Ù. ¿©±â¼­ NG ´Â Next GenerationÀ» ÀǹÌÇÑ´Ù.

Áö±Ý±îÁö ¹ÌÈíÇϳª¸¶ CORBA±â¼úÀ» ÀÎÅͳÝ, ƯÈ÷ WWW±â¼ú¿¡ Á¢¸ñÇϱâ À§ÇÑ ¹æ¹ýµé¿¡ ´ëÇØ »ìÆìº¸¾Ò´Ù. ½ÇÁ¦ ÀÌ ¸ðµç ¹æ¹ýµéÀº ÇöÀç ¿¬±¸ÁßÀ̰ųª Å×½ºÆ®º£µå ÇüÅ·Π¼Ò°³µÇ°í ÀÖ´Ù. ±×·¯³ª ÃßÈÄ ÀÎÆ®¶ó³Ý ȯ°æÀÌ °¡¼ÓÈ­µÉ¼ö·Ï ÀÌÁ¾ÀÇ Á¤º¸ÀÚ¿øÀ» ÅëÇÕÇϱâ À§ÇÑ ¹æ¹ýÀ¸·Î CORBA±â¼úÀÇ Á߿伺ÀÌ ´õ¿í °¡ÁßµÉ °ÍÀÌ´Ù. ƯÈ÷ CORBA IDL-ÀÚ¹Ù ¸ÅÇÎÀÌ Ç¥ÁØÀ» È®Á¤µÇ¸é CORBA¸¦ WWW¿¡ ÅëÇÕÇϱâ À§ÇÑ ±â¼úÈ®»êÀº ´õ¿í °¡¼Óµµ°¡ ºÙÀ¸¸®¶ó »ý°¢ÇÑ´Ù.

3Àå ¼±¼ÒÇÁÆ®ÀÇ Èñ¸Á, JAVA

ÀÌ Àå¿¡´Â CORBA ±â¼úÀ» WWW¿¡ Àû¿ë½ÃŰ´Â ¹æ¹ý Áß °¡Àå À¯¿¬Çϰí ÀÌ»óÀûÀÎ ¹æ¹ýÀÎ CORBA-ÀÚ¹Ù ÅëÇÕ¿¡ °üÇØ »ìÆìº¸°Ú´Ù.

3.1 ÀÎÅÍ ³Ý ±â¼úÀÇ Åµ¿°ú »õ·Î¿î ¿ä±¸ »çÇ×ÀÇ ÃâÇö

¸ÕÀú ÇöÀç ¼ÒÇÁÆ®¿þ¾î °³¹ß ȯ°æ¿¡¼­ °øÅëÀûÀ¸·Î Á¸ÀçÇÏ´Â ¹®Á¦ÁßÀÇ Çϳª°¡ ÀÌÁ¾ÀÇ ºÐ»ê ȯ°æ¿¡¼­ ¸ðµÎ ȣȯ °¡´ÉÇÑ ÇÁ·Î±×·¥À» ¾î¶»°Ô ÀÛ¼ºÇÒ °ÍÀΰ¡? ¶ó´Â °ÍÀÌ´Ù. ¿Ö³ÄÇϸé ÇöÀç ´ëºÎºÐÀÇ ÀÀ¿ë ÇÁ·Î±×·¥Àº ¿î¿µ üÁ¦¿¡ Á¾¼ÓÀûÀ̱⠶§¹®¿¡ °³¹ß ½Ã ¸¹Àº ½Ã°£°ú ºñ¿ëÀÌ µé¸ç °³¹ßµÈ ÇÁ·Î±×·¥ÀÇ À̽ļºµµ º¸Àå¹ÞÁö ¸øÇÑ´Ù. ¿¹¸¦ µé¸é, À©µµ¿ì¿¡¼­ °³¹ßµÈ ÀÀ¿ë ÇÁ·Î±×·¥À» À¯´Ð½º¿¡¼­ »ç¿ëÇÒ ¼ö ¾øÀ¸¸ç ±× ¹Ý´ëµµ ºÒ°¡´ÉÇÏ´Ù. ÀÌ·¯ÇÑ È¯°æ¿¡¼­ WWWÀº µ¥ÀÌŸ¸¦ Á¶ÀÛÇÏ´Â µ¥ ÀÖ¾î Ç¥Áعæ½ÄÀ» Á¦°øÇÑ´Ù. °¡·É, WWW ºÎ¶ó¿ìÁ®¸¦ »ç¿ëÇϸé WWW¼­¹ö¸¦ ÅëÇØ ¿ÜºÎÀÇ ¾î¶² ÇÁ·Î±×·¥µµ ½±°Ô Á¢±ÙÇÒ ¼ö ÀÖ´Ù.

±×·¯³ª WWW °¡ °®°í ÀÖ´Â ±âº»ÀûÀÎ ÇѰè´Â Á¤ÀûÀÎ Á¤º¸¸¸À» Á¦°øÇÑ´Ù´Â °ÍÀÌ´Ù. ´Ù½Ã ¸»ÇØ WWW¿¡¼­ °ü½ÉÀÖ°Ô Ã³¸®µÇ´Â °ÍÀº ÇÁ·Î±×·¥ÀÌ ¾Æ´Ï¶ó µ¥ÀÌŸÀÌ´Ù. µû¶ó¼­ ÀÌ µ¥ÀÌŸ´Â Á¤ÀûÀÌ´Ù . ¿¹¸¦ µé¸é, WWW¸¦ ÅëÇØ¼­ ¾òÀ» ¼ö ÀÖ´Â Á¤º¸´Â ±â²¯ÇØ¾ß HTMLÀ̶ó´Â Á¤ÀûÀÎ ¹®¼­ µ¥ÀÌŸÀÌ´Ù.

ÀÌ·¯ÇÑ ¹®Á¦¸¦ ÇØ°áÇÒ ¼ö ÀÖ´Â ¹æ¹ýÀ¸·Î¼­ µ¿ÀûÀÌ°í ´ëÈ­ÇüÀÎ ÀÚ¹Ù°¡ °¢±¤¹Þ±â ½ÃÀÛÇß´Ù. ÀÚ¹Ù´Â ÀÎÅÍÇÁ¸®Æ® ¾ð¾î¶ó´Â Ư¡À¸·Î ÀÎÇØ Áß°£ÄÚµå ÇüÅ·Π»ý¼ºµÈ Äڵ带 WWW¸¦ ÅëÇØ Ŭ¶óÀÌ¾ðÆ®¿¡¼­ ´Ù¿î·Îµå¹Þ¾Æ ¼öÇàÇϹǷΠµ¿ÀûÀÎ Á¤º¸¸¦ ó¸®ÇÒ ¼ö ÀÖ´Ù. ÀÌ·¯ÇÑ °­Á¡À¸·Î ÀÎÇØ ÀÚ¹Ù´Â ÀÎÅÍ³Ý È¯°æ¿¡ ±Þ¼ÓÇÏ°Ô È®»êµÇ¾ú´Ù.

3.2 ÀÚ¹Ù ¾ð¾îÀÇ Åº»ý°ú »õ·Î¿î ±âȸÀÇ Åº»ý

3.2.1 ÀÚ ¹Ù ¾ð¾îÀÇ Åº»ý

ÀÚ¹Ù´Â ¼± ¸¶ÀÌÅ©·Î½Ã½ºÅÛÁî¿¡¼­ °³¹ßÇÑ ÇÁ·Î±×·¡¹Ö ¾ð¾îÀÌ´Ù. ÀÚ¹Ù°¡ ź»ýÇϱ⠱îÁö ¿ª»çÀû °úÁ¤À» Àá½Ã Á¤¸®Çغ¸¸é ´ÙÀ½°ú °°´Ù.

¼±¼ÒÇÁÆ®»çÀÇ ¿£Áö´Ï¾îÁß Á¦ÀÓ½º °í½½¸µÀÌ À̲ô´Â ÇÑ ±×·ìÀº ÄÉÀ̺íTVó·³ ÀÏ·ÃÀÇ Çϵå¿þ¾î¸¦ ÅëÇÕ.Á¦¾îÇϱâ À§ÇÑ ¾ð¾î¸¦ ÇÊ¿ä·Î Çß´Ù. ÀÌ ¾ð¾î´Â ÀÌÁúÀûÀÎ Çϵå¿þ¾îµéÀ» ÅëÇÕÇϱâ À§ÇØ º¸´Ù ÀÛ°í °­·ÂÇÑ ±â´ÉÀ» ÇÊ¿ä·Î Çß´Ù. ÀÌ ÇÁ·ÎÁ§Æ®ÀÇ ÄÚµåÀ̸§ÀÌ ¹Ù·Î "±×¸°"ÀÌ´Ù.

"±×¸°" ÇÁ·ÎÁ§Æ®¿¡¼­ ¿ä±¸ÇÏ´Â º¸´Ù ÀÛ°í °­·ÂÇÑ ¾ð¾î ¸¸µé±â À§ÇØ Ãʱâ PCµé¿¡ »ç¿ëÇß´ø UCSD ÆÄ½ºÄ®À̶ó ºÒ¸®´Â ¾ð¾î¸¦ ºÎȰ½ÃÄ×°í À̽ļºÀÌ ³ôÀº ¾ð¾î¸¦ ¸¸µé±â À§ÇØ ÀÛÀº Å©±âÀÇ Áß°£ ÄÚµå(Intermediate Code)¸¦ »ý¼ºÇÏ´Â ¾ð¾î¸¦ µðÀÚÀÎÇß´Ù . ½ÇÁ¦ ÀÌ Áß°£ ÄÚµå´Â ¾î¶² ÄÄÇ»ÅÍ¿¡¼­µç Á¤È®ÇÑ ÇØ¼®±â(Interpreter)¸¸ ÀÖÀ¸¸é ½ÇÇàµÈ´Ù´Â ÀåÁ¡À» °¡Áö°í ÀÖ´Ù.

±×·¯³ª ¼±¼ÒÇÁÆ®»çÀÇ ¿£Áö´Ï¾î·Î¼­ ±×µéÀº ÆÄ½ºÄ®º¸´Ù C++¾ð¾î¿¡ ±â¹ÝÀ» µÎ±â ½ÃÀÛÇß´Ù. µû¶ó¼­ »õ·Î µðÀÚÀεǴ ¾ð¾î´Â ±âÁ¸ÀÇ ÀýÂ÷ÀûÀÎ ¹æ¹ýÀÌ ¾Æ´Ï¶ó °´Ã¼ÁöÇâ ¹æ¹ýÀ» Áö¿øÇÏ°Ô µÇ¾ú´Ù. Á¦ÀÓ½º °í½½¸µÀº ÀÌ ¾ð¾î¸¦ "¿ÀÅ©(Oak)"¶ó ¸í¸íÇÏ¿´´Ù. ÀÌ ÈÄ ¿ÀÅ©´Â ÀÚ¹Ù¶ó´Â À̸§À¸·Î Àç¸í¸íµÇ¾ú´Ù. ¿Ö³ÄÇÏ¸é ¿ÀÅ©¶õ À̸§ÀÇ ¾ð¾î°¡ À¯´Ð½º»ó¿¡ ÀÌ¹Ì Á¸ÀçÇϰí ÀÖ¾ú±â ¶§¹®ÀÌ´Ù.

1992³â ±×¸° ÇÁ·ÎÁ§Æ®ÀÇ °á°ú·Î¼­ °íµµÀÇ Áö´ÉÀûÀÎ ¿ø°ÝÁ¦¾î¸¦ Á¦°øÇÏ´Â "*7"¶ó ºÒ¸®´Â Á¦Ç°À» Ãâ½ÃÇß´Ù. °á°úÀûÀ¸·Î´Â ¾î´À ´©±¸µµ "*7" ¿¡ ´ëÇØ °ü½ÉÀ» µÎÁö ¾Ê¾Ò´Ù. ÀÌÈÄ ±×¸° ÇÁ·ÎÁ§Æ®ÆÀÀº ±×µéÀÇ °ü½É»ç¸¦ µ¹·Á ´ëÈ­Çü TV¿¡ Àû¿ëÇÏ·Á ÇÏ¿´´Ù. ±×·¯³ª ÀÌ°Í ¿ª½Ã ¾î´À ´©±¸ÀÇ °ü½Éµµ ²øÁö ¸øÇß´Ù.

ÀÌÈÄ ±×¸° ÇÁ·ÎÁ§Æ®ÆÀÀº ±×µéÀÌ °³¹ßÇÑ ±â¼úÀ» ÆÈ±âÀ§ÇØ 2³âÀ̶õ ¼¼¿ùÀ» ÇãºñÇØ¾ß Çß´Ù.

ÀÎÅÍ³Ý Æ¯È÷ WWWÀÇ È®»ê¿¡ ¹ß¸ÂÃß¾î Á¦ÀÓ½º °í½½¸µÀº ±×µéÀÇ ±â¼úÀ» WWWºÎ¶ó¿ìÁ®¿¡ Àû¿ëÇÑ ÇÖÀÚ¹Ù¶õ ºÎ¶ó¿ìÁ®¸¦ 1995³â 5¿ù 23 ÀÏ ¼±¿ùµå95¿¡¼­ ¼±º¸¿´´Ù.

ÀÌÈÄ ÀÚ¹Ù ±â¼úÀº ³Ý½ºÄÉÀÌÇÁ2.0°ú ÀÎÅÍ³Ý ÀͽºÇ÷ξî3.0¿¡ ³»ÀåµÇ¾ú°í IBM, ½Ã¸àƽ, º¼·£Æ®¸¦ ºñ·ÔÇÑ ¸¹Àº ȸ»ç¿¡ ¶óÀ̼¾½ºµÇ¾ú´Ù.

ÇöÀç ÀÚ¹Ù±â¼úÀº ±× Àû¿ë¿µ¿ªÀ» ³ÐÈ÷±â À§ÇØ ´Ù¸¥ ½Ã½ºÅÛ°úÀÇ ¿¬µ¿¿¡ Áß½ÉÀ» µÎ°íÀÖ´Ù. µ¥ÀÌŸº£À̽º ½Ã½ºÅÛ°úÀÇ ¿¬µ¿À» À§ÇÑ JDBC(ÀÚ¹Ù DataBase Connectivity ) , ºÐ»ê°´Ã¼ ½Ã½ºÅÛÀÇ Ç¥ÁØÀÎ CORBA¿ÍÀÇ ¿¬µ¿, ÀÚ¹ÙRPCÀÎ RMI(Remote Method Invocation), ÀÚ¹Ù OLEÀÎ Beans µî ´Ù¾çÇÑ ±â´ÉµéÀÌ Ãß°¡µÇ°í ÀÖ´Ù.

3.2.2 ÀÚ ¹Ù ¾ð¾îÀÇ Æ¯Â¡

ÀÚ¹Ù °³¹ßÀÚµéÀÇ ¸»À» ºô·Á Á¤ÀÇÇØ º¸¸é ÀÚ¹Ù´Â ´ÙÀ½°ú °°Àº Ư¡À» °®°í ÀÖ´Ù.

ÀÚ¹Ù´Â

- ´Ü¼øÇϸç

- °´Ã¼ÁöÇâ ¹æ¹ýÀ» »ç¿ëÇϰí

- ºÐ»êµÇ¾î ÀÖÀ¸¸ç

- ÀÎÅÍÇÁ¸®Æ®µÇ¸ç

- °­°ÇÇϰí

- ¾ÈÀüÇϸç

- ¾ÆÅ°ÅØÅÍ Á߸³ÀûÀ̰í

- ºü¸¥ ¼º´ÉÀ» Á¦°øÇϸç

- ´ÙÁß ¾²·¹µå ±â´ÉÀ» Á¦°øÇÏ´Â

- ´ÙÀ̳ª¹ÍÇÑ

¾ð¾îÀÌ´Ù.

ÀÌ·¯ÇÑ Æ¯Â¡µéÀ» ÀÚ¼¼È÷ »ìÆìº¸¸é ´ÙÀ½°ú °°´Ù.

1) ÀÚ¹Ù´Â ´Ü¼øÇÑ ¾ð¾îÀÌ´Ù.

ÀÚ¹Ù ¾ð¾î´Â ¾Õ¼­ ¾ð±ÞÇÑ °Íó·³ C++°ú À¯»çÇÏ°Ô µðÀÚÀÎ µÇ¾î »ç¿ëÇϱ⠽±´Ù. µû¶ó¼­ ±âÁ¸ÀÇ C++»ç¿ëÀÚµéÀº ¸î°¡Áö ÀÚ¹Ù ¾ð¾î°¡ °®°í Àִ Ư¡¸¸ ÀÌÇØÇØµµ ½±°Ô ÇÁ·Î±×·¥À» ÇÒ ¼ö ÀÖ´Ù. ¹°·Ð º¹ÀâÇÏ°í ¾î·Á¿î ÇÁ·Î±×·¥½Ã ÀÚ¹Ù ¾ð¾îÀÇ °í±Þ ±â´ÉÀ» ¾Ë±â À§ÇØ ¸¹Àº ³ë·ÂÀ» ÅõÀÚÇØ¾ß ÇÑ´Ù. ±¸¹® Â÷¿ø¿¡¼­µµ ÀÚ¹Ù ¾ð¾î°¡ ½±Áö¸¸ ÀÚ¹Ù´Â ±âÁ¸ÀÇ C¿Í C++ ¾ð¾î¿¡¼­ ¹ß»ýÇÏ´Â ´ÙÀ½ÀÇ ¹®Á¦µéÀ» ÇØ°áÇÏ¿© º¸´Ù ½±°í ¾ÈÀüÇÏ°Ô ÇÁ·Î±×·¥À» ÇÒ ¼ö ÀÖ°Ô ÇØÁØ´Ù.

- Æ÷ÀÎÅÍ ¿¬»êÀÇ Á¦°Å

C³ª C++ ÇÁ·Î±×·¥À» ÀÛ¼ºÇÒ ¶§ °¡Àå ¾î·Æ°í ½Å°æ¾²ÀÌ´Â ºÎºÐÀÌ ¹Ù·Î Æ÷ÀÎÅ͸¦ Á¶ÀÛÇÏ´Â °ÍÀÌ´Ù. ÀûÀýÇÑ °÷¿¡¼­ Æ÷ÀÎÅÍ¿¡ ¸Þ¸ð¸®¸¦ ÇÒ´çÇÏ°í ´Ù½Ã ÇØÁ¦ÇØ¾ß ÇÑ´Ù. ¸¸ÀÏ Á¤È®È÷ Á¦¾îÇÏÁö ¸øÇϸé ÇÁ·Î±×·¥Àº ¼öÇà Áß ÁߴܵȴÙ. ÀÚ¹Ù´Â ÀÌ·¯ÇÑ ºÒÆíÀ» ÇØ¼ÒÇØÁÖ¾ú´Ù . ¿Ö³ÄÇϸé ÀÚ¹Ù¿¡¼­´Â Æ÷ÀÎÅͶõ °ÍÀÌ ¾ø±â ¶§¹®ÀÌ´Ù.

- ¸Þ¸ð¸® ÇØÁ¦ ºÒÇÊ¿ä

¾Õ¼­ »ìÆìº» °Íó·³ ¸Þ¼Ò¸® ÇØÁ¦´Â ÇÁ·Î±×·¡¸Ó¿¡°Ô Àý´ëÀûÀ¸·Î Áß¿äÇÑ ±â¼úÀÌ´Ù. ¿Ö³ÄÇϸé ÇÑÁ¤µÈ ½Ã½ºÅÛ ÀÚ¿øÇÏ¿¡¼­ ¿øÇÏ´Â ÀÛ¾÷À» ¿øÈ°È÷ ¼öÇàÇÏ·Á¸é »ç¿ëÇÑ ¸Þ¸ð¸® µî ½Ã½ºÅÛ ÀÚ¿øÀ» ÀûÀýÈ÷ ÇØÁ¦ÇØ¾ß Çϱ⠶§¹®ÀÌ´Ù. ÀÚ¹Ù´Â ÀÌ·¯ÇÑ ¹®Á¦¸¦ ÇØ°áÇß´Ù . ÀÚ¹Ù ÇÁ·Î±×·¡¸Ó´Â ´õ ÀÌ»ó »ç¿ëÇÑ ¸Þ¸ð¸®¸¦ ÇØÁ¦ÇÒ Çʿ䰡 ¾ø´Ù. ¿Ö³ÄÇϸé ÀÚ¹Ù¿¡¼­´Â ÀÚµ¿ÀûÀ¸·Î ´õ ÀÌ»ó »ç¿ëÇÏÁö ¾ÊÀº ¸Þ¸ð¸®´Â ÀÚµ¿ÀûÀ¸·Î ÇØÁ¦Çϱ⠶§¹®ÀÌ´Ù. À̸¦ "ÀÚµ¿ ¾²·¹±â ¼öÁý (Automatic Garbage Collection)"À̶ó°í ÇÑ´Ù.

- ±¸Á¶Ã¼ ,¿¬ »êÀÚ Áߺ¹, ´ÙÁß»ó¼Ó µî Áߺ¹µÇ°í È¥µ·À» ÀÏÀ¸Å°´Â °³³äÀ» Á¦°ÅÇϰí ÇÁ·Î±×·¡¸Ó¿¡°Ô º¸´Ù °£´ÜÇÏ°í °­·ÂÇÑ ¶óÀ̺귯¸®¸¦ Á¦°øÇÑ´Ù.

¶ÇÇÑ ÀÚ¹Ù´Â ¸ðµç ÀÚ¹Ù ÇÔ¼ö¸¦ 215K RAM¸¸À» ÀÌ¿ëÇØ¼­ ÀÎÅÍÇÁ¸®Æ®ÇÒ Á¤µµ·Î ÀÛ°í ´Ü¼øÇÏ´Ù.( ½ÇÁ¦ ±âº» ÀÎÅÍÇÁ¸®ÅÍ¿Í Å¬·¡½º¸¦ Áö¿øÇÏ´Â µ¥ 40K °¡ µé°í ¿©±â¿¡ Ç¥ÁØ ¶óÀ̺귯¸®¿Í ¾²·¹µå¸¦ Áö¿øÇÏ´Â µ¥ 175K°¡ ¼Ò¿äµÈ´Ù.)

2)ÀÚ¹Ù´Â °´Ã¼ÁöÇâ ¾ð¾îÀÌ´Ù.

ÀÚ¹Ù´Â °´Ã¼ÁöÇâ ÆÐ·¯´ÙÀÓÀ» ±âº»À¸·Î ÇÑ´Ù. µû¶ó¼­ ÀÚ¹Ù´Â °´Ã¼ÁöÇâ °³³ä Áß ´ÙÁß»ó¼ÓÀ̳ª ¿¬»êÀÚ ¿À¹ö·Îµù°°ÀÌ ¹®Á¦¸¦ ÀÏÀ¸Å°´Â ÀϺΠ±â¼úµéÀ» Á¦¿ÜÇÏ°í ²À ÇÊ¿äÇÑ °´Ã¼ÁöÇâ °³³ä¸¸À» Áö¿øÇÑ´Ù.

3) ÀÚ¹Ù ÀÀ¿ë ÇÁ·Î±×·¥Àº ºÐ»êµÉ ¼ö ÀÖ´Ù.

ÀÚ¹Ù´Â Ãʱ⠵ðÀÚÀμ­ ºÎÅÍ ³×Æ®¿÷ ȯ°æÀ» °í·ÁÇÏ¿´´Ù. µû¶ó¼­ ÀÚ¹Ù´Â TCP, UDPµî ±âº» ³×Æ®¿÷ ¶óÀ̺귯¸®¸¦ ºñ·ÔÇÏ¿© HTTP³ª FTP°°ÀÌ ´ëºÎºÐÀÇ ÀÎÅÍ³Ý ÇÁ·ÎÅäÄÝÀ» Áö¿øÇÑ´Ù. µû¶ó¼­ »ç¿ëÀÚ´Â ¾ÆÁÖ ¼Õ½±°Ô ºÐ»ê ÇÁ·Î±×·¥À» ÀÛ¼ºÇÒ ¼ö ÀÖ´Ù. ½ÇÁ¦·Î ¼ÒÄÏÀ» ÀÌ¿ëÇÏ¿© Ŭ¶óÀÌ¾ðÆ®¿Í ¼­¹öÀÇ ¿¬°áºÎºÐÀ» ÀÛ¼ºÇÏ´Â µ¥ 10¿© ÁÙ·Î ÃæºÐÇÏ´Ù.

  1. ÀÚ¹Ù´Â °­°ÇÇÏ´Ù.

ÀÚ¹Ù´Â º¸´Ù °­°ÇÇÑ ÇÁ·Î±×·¥À» ÀÛ¼ºÇϱâ À§ÇØ ±âÁ¸ÀÇ C++¾ð¾î¿¡¼­ ¹ß»ýÇÏ´Â ¹®Á¦¸¦ Á¦°ÅÇÏ°í »õ·Î¿î ±â´ÉÀ» Ãß°¡ÇÏ¿´´Ù. ¸ÕÀú ÀÚ¹Ù´Â ¸Þ¸ð¸®¿¡ ¹®Á¦°¡ »ý±â´Â °ÍÀ» ¸·±â À§ÇØ ÀÚ½ÅÀÇ ¸Þ¸ð¸®¸¦ ¿µ¿ªÀ» °®°í Á÷Á¢ ´Ù·é´Ù. ¶ÇÇÑ ÀÚ¹Ù´Â µ¥ÀÌŸ°¡ Áߺ¹µÇ°Å³ª ºØ±«µÇ´Â °ÍÀ» ¸·±âÀ§ÇØ ÁøÁ¤ÇÑ ¹è¿­À» ±¸ÇöÇß´Ù. »Ó¸¸ ¾Æ´Ï¶ó ÀÚ¹Ù´Â Æ÷ÀÎÅ͸¦ Á¦°ÅÇÏ¿© ÇÁ·Î±×·¥ ½ÇÇàÁß¿¡ ¹ß»ýÇÏ´Â ·±Å¸ÀÓ ¿À·ù¸¦ Á¦°ÅÇß´Ù.

±×¸®°í ÀÚ¹Ù´Â °­°ÇÇÑ ÇÁ·Î±×·¥À» À§ÇØ ³Î Æ÷ÀÎÅ͸¦ °Ë»çÇÏ°í ¹è¿­ÀÇ ¹Ù¿îµå¸¦ °Ë»çÇÏ¸ç ¼öÇàÀü¿¡ ¹ÙÀÌÆ® Äڵ带 °Ë»çÇÑ´Ù. ¶ÇÇÑ ÀÚ¹Ù±¸¹®¿¡ ¿¹¿Ü »óȲ(Exception)À» ó¸®ÇÒ ¼ö ÀÖ´Â ±â´ÉÀ» Ãß°¡ÇÏ¿´´Ù.

  1. ÀÚ¹Ù´Â ¾ÆÅ°ÅØÃÄ Á߸³ÀûÀÌ´Ù.

ÀÚ¹Ù´Â Çϵå¿þ¾î¿¡ »ó°ü¾øÀÌ ¼öÇàµÈ´Ù. À̸¦ À§ÇØ ÀÚ¹Ù´Â ´ÙÀ½°ú °°Àº Ư¡À» °®´Â´Ù.

´ÙÀ½ [±×¸²5-30]Àº ÀÚ¹ÙÀÇ ½ÇÇà ȯ°æ°ú ¼öÇà °úÁ¤À» º¸¿©ÁØ´Ù. ¸ÕÀú ÇÁ·Î±×·¡¸Ó°¡ ÀÛ¼ºÇÑ ÀÚ¹Ù ÄÚµå´Â ÀÚ¹Ù ÄÄÆÄÀÏ·¯¿¡ ÀÇÇØ¼­ Áß°£ ½ÇÇà ÇüÅÂÀÎ ¹ÙÀÌÆ® Äڵ带 »ý¼ºÇØ ³½´Ù. ÀÌ ¹ÙÀÌÆ® ÄÚµå´Â ƯÁ¤ Çϵå¿þ¾î³ª ¿î¿µ üÁ¦¿¡ ÀÇÁ¸ÇÏÁö ¾Ê°í ÀÌ Äڵ带 ÇØ¼®ÇÏ¿© ½ÇÇàÇÒ ¼ö ÀÖ´Â ÀÎÅÍÇÁ¸®Å͸¸ ÀÖÀ¸¸é ½ÇÇàÀÌ °¡´ÉÇÏ´Ù. µû¶ó¼­ ÀÌ ¹ÙÀÌÆ® ÄÚµå´Â ·ÎÄà ÄÄÇ»ÅÍ¿¡¼­ ÀÚ¹Ù ÀÎÅÍÇÁ¸®Å͸¦ ÅëÇØ ¼öÇàÀÌ °¡´ÉÇÒ »Ó¸¸ ¾Æ´Ï¶ó WWW¸¦ ÀÌ¿ëÇÏ¿© ÀÎÅͳݻóÀÇ ¾î´À °÷¿¡¼­µçÁö ÀÚ¹Ù ÀÎÅÍÇÁ¸®ÅͰ¡ ÀÖ´Â °÷¿¡¼­ ¼öÇàµÈ´Ù. ¿¹¸¦ µé¸é, ³Ý½ºÄÉÀÌÇÁ³ª ÀÎÅÍ³Ý ÀͽºÇ÷ξ ÅëÇØ ¾î´À °÷¿¡¼­µçÁö ÀÚ¹Ù ÇÁ·Î±×·¥À» ¼öÇàÇÒ ¼ö ÀÖ´Ù.


[ ±×¸²5-30 ] ÀÚ¹ÙÀÇ ½ÇÇà ȯ°æ

6) ÀÚ¹Ù´Â ¾ÈÀüÇÏ´Ù.

ÀÚ¹Ù´Â ¾ð¾îÃø¸é¿¡¼­ Æ÷ÀÎÅͳª Çüº¯È¯À» »èÁ¦ÇÏ¿© ÇÁ·Î±×·¥ ¼öÇà Áß¿¡ ¹ß»ýÇÏ´Â ¹®Á¦ÀÇ ¼ÒÁö¸¦ Á¦°ÅÇß´Ù. ¶ÇÇÑ ÀÚ¹Ù ÄÚµå´Â [ ±×¸²5-30 ]¿¡¼­ ó·³ ½ÇÁ¦ ½ÇÇàÇϱâ Àü¿¡ ¾ÈÀü¼ºÀ» À§ÇØ ¹ÙÀÌÆ® Äڵ忡 ´ëÇÑ °Ë»ç(Byte Code Verifier)¸¦ ÇÏ¿© ¾ÈÀüÇÑ Äڵ常 ¼öÇàÇÑ´Ù.

µû¶ó¼­ ¹ÙÀÌÆ® ÄÚµå °Ë»ç¸¦ Åë°úÇÑ ÄÚµå´Â

- ½ºÅà ¿À¹öÇ÷ο쳪 ½ºÅà ¾ð´õÇ÷οìÀÇ ¿øÀÎÀÌ µÇÁö¾ÊÀ¸¸ç

- ¸Å°³º¯¼öÀÇ Å¸ÀÔÀÌ Á¤È®ÇÏ´Ù. ±×¸®°í

- ºñÇÕ¹ýÀûÀÎ Çüº¯È¯ÀÌ ¾ø´Ù.

ÀÚ¹Ù ¾ð¾î´Â ³×Æ®¿÷ ȯ°æ¿¡¼­ ¼öÇàµÇ±â ¶§¹®¿¡ º¸¾È¿¡ ¸¹Àº ¹®Á¦¸¦ ¾È°í ÀÖ´Ù. ¿¹¸¦ µé¸é, ³×Æ®¿÷»óÀÇ ´Ù¸¥ °÷¿¡¼­ Àü¼ÛµÇ¾î ¿Â ÀÚ¹Ù ÇÁ·Î±×·¥Àº ·ÎÄà ÄÄÇ»ÅÍÀÇ ÆÄÀÏÀ» Á¶ÀÛÇϰųª ´Ù¸¥ ÄÄÇ»ÅÍ¿¡ ¿¬°áµÇ¾î ·ÎÄà ÄÄÇ»ÅÍ»óÀÇ Á¤º¸¸¦ Àü¼ÛÇÑ´Ù¸é º¸¾È»óÀÇ ¸¹Àº ¹®Á¦¸¦ ÀÏÀ¸Å³ ¼ö ÀÖ´Ù. µû¶ó¼­ ÀÚ¹Ù´Â ·ÎÄà ÄÄÇ»ÅÍ¿¡ ´ëÇØ Á¶ÀÛÀ» °¡ÇÒ ¼ö ¾ø´Ù.

7) ÀÚ¹Ù´Â ´ÙÁß ¾²·¹µå¸¦ Á¦°øÇÑ´Ù.

´ÙÁß ¾²·¹µå¶õ ÇÑ ÇÁ·Î±×·¥³»¿¡¼­ ¿©·¯ °³ÀÇ ¾²·¹µå°¡ µ¿½Ã¿¡ ÀÛ¾÷À» ¼öÇàÇÏ´Â °ÍÀÌ´Ù. ÀÚ¹Ù´Â ÀÌ·¯ÇÑ ´ÙÁß ¾²·¹µå¸¦ Á¦°øÇÑ´Ù. µû¶ó¼­ ÀÚ¹Ù ´ÙÁß¾²·¹µùÀº ÇϳªÀÇ ÀÚ¹Ù ÇÁ·Î±×·¥¾È¿¡¼­ µ¿½Ã¿¡ ¿©·¯ ÀÛ¾÷µéÀ» ¼öÇàÇÒ ¼ö ÀÖ°Ô ÇØÁØ´Ù. ÀÌ·¯ÇÑ ÀÚ¹Ù ´ÙÁß ¾²·¹µå´Â ÀÚ¹Ù¸¦ ´ëÈ­Çü ÇÁ·Î±×·¥À̳ª ½Ç½Ã°£ 󸮸¦ ¿äÇÏ´Â ÇÁ·Î±×·¥¿¡ ÀûÇÕÇÏ°Ô ÇØÁØ´Ù.

8) ÀÚ¹Ù´Â µ¿ÀûÀÌ´Ù.

ÀÚ¹Ù´Â ·±Å¸ÀӽñîÁö ¸ðµâµéÀ» ¸µÅ©ÇÏÁö ¾Ê´Â´Ù. µû¶ó¼­ ¶óÀ̺귯¸®°¡ º¯ÇÏ´õ¶óµµ ¿µÇâÀ» ¹ÞÁö ¾Ê´Â´Ù. °á±¹ ÀÚ¹Ù´Â ·±Å¸Àӽà ¸ðµâÀ» ¸µÅ©ÇϹǷΠC++¿¡¼­ ó·³ »óÀ§ Ŭ·¡½ºÀÌ ¸í¼¼°¡ º¯ÇÒ °æ¿ì ¸ðµç ÇÏÀ§ Ŭ·¡½º¸¦ ´Ù½Ã ÄÄÆÄÀÏÇØ¾ß ¸¸ ÇÏ´Â ¹®Á¦¸¦ ÀÏÀ¸Å°Áö ¾Ê´Â´Ù. ÀϹÝÀûÀ¸·Î C++¿¡¼­ÀÇ ÀÌ·¯ÇÑ ¹®Á¦¸¦ "½´ÆÛŬ·¡½º ¹®Á¦"¶ó ÇÑ´Ù.

3.2.3 ÀÚ ¹Ù ¾ð¾îÀÇ Á¦¾à°ú »õ·Î¿î ±âȸÀÇ Åº»ý

ÀÚ¹Ù´Â ÀÎÅÍ³Ý È¯°æ¿¡¼­ ÇÁ·Î±×·¡¸Óµé¿¡°Ô º¸´Ù ºü¸£°í ÀûÀº ¿¹»êÀ¸·Î ½Ã½ºÅÛÀ» °³¹ßÇÒ ¼ö ÀÖ´Â ±âȸ¸¦ Á¦°øÇÒ »Ó¸¸ ¾Æ´Ï¶ó °­·ÂÇÑ GUI±â´É°ú ´õºÒ¾î º¸´Ù À¯¿¬Çϰí À̽ļºÀÖ´Â ÇÁ·Î±×·¥À» ÀÛ¼ºÇÒ ¼ö ÀÖ°Ô ÇØÁØ´Ù.

±×·¯³ª ÀÚ¹Ù ¾ð¾î·Î Ŭ¶óÀ̾ðÆ®/¼­¹ö ¹æ½ÄÀÇ ÇÁ·Î±×·¥À» ÀÛ¼ºÇÏ´Â °ÍÀº »ý°¢º¸´Ù ½±Áö¾Ê´Ù. ¿Ö³ÄÇϸé ÀÚ¹Ù ¾ð¾î¿¡¼­´Â java.net ¶óÀ̺귯¸®¿¡¼­ Á¦°øÇÏ´Â ÀúÂ÷¿øÀÇ ÇÔ¼öµé¸¸À» Á¦°øÇϱ⠶§¹®ÀÌ´Ù. °á±¹ ÀÚ¹Ù ¾ð¾î·Î Ŭ¶óÀÌ¾ðÆ® /¼­ ¹ö ½Ã½ºÅÛ Æ¯È÷, ´Ù¾çÇÑ ¼­¹ö¸¦ Á¢±ÙÇÏ´Â ´ÙÁß ¼­¹ö ±¸Á¶ÀÇ ½Ã½ºÅÛÀ» ±¸¼ºÇÏ·Á ÇÑ´Ù¸é °¢°¢ÀÇ ¼­¹ö¸¦ Á¶ÀÛÇϱâ À§ÇÑ Å¬¶óÀÌ¾ðÆ® Äڵ带 ÀÛ¼ºÇؾ߸¸ ÇÑ´Ù. ( ¿ÀÁ÷ ÀúÂ÷¿øÀÇ ³×Æ®¿÷ ÇÔ¼ö¸¦ ÀÌ¿ëÇØ¼­ ) °á±¹ ÀÌ·¯ÇÑ ¹æ½ÄÀº Ãʱâ 2´Ü°è Ŭ¶óÀ̾ðÆ®/¼­¹ö¸¦ ±¸¼ºÇϴµ¥¼­ ¹ß»ýÇÏ´Â ¿©·¯°¡Áö ¹®Á¦µéÀ» ±×´ë·Î ´ä½ÀÇÏ´Â °ÍÀÌ´Ù.

µû¶ó¼­ ÀÌ·¯ÇÑ ¹®Á¦µéÀ» ÇØ°áÇϰíÀÚ ÇÏ´Â ³ë·ÂµéÀÌ ¿©·¯ °÷¿¡¼­ °æÁֵǰí ÀÖ´Ù. ±× Áß¿¡¼­ ÀÚ¹ÙÀÇ °­·ÂÇÑ ÇÁ·Î±×·¡¹Ö ±â¼ú¿¡ ÀÀ¿ë ÇÁ·Î±×·¥µé°£ÀÇ »óÈ£ÀÛµ¿À» À§ÇÑ Ç¥ÁØÈ­µÈ ÇÁ·¹ÀÓ¿÷À¸·Î CORBA¸¦ °áÇÕÇÏ´Â ¹æ¹ýÀÌ °¡Àå ±¤¹üÀ§ÇÏ°Ô ¿¬±¸µÇ°í ÀÖ´Ù. ƯÈ÷ ÀÚ¹Ù³ª CORBA¸ðµÎ °´Ã¼ÁöÇâ °³³äÀ» ±â¹ÝÀ¸·Î Çϱ⠶§¹®¿¡ CORBA IDL¾ð¾î¸¦ ÀÚ¹Ù¾ð¾î·Î ½±°Ô º¯È¯ÇÒ ¼ö ÀÖ´Ù.

ÇöÀç ¼±¼ÒÇÁÆ®»ç¿¡¼­´Â CORBA IDLÀ» ÀÚ¹Ù·Î º¯È¯Çϱâ À§ÇÑ Ç¥ÁØ ¸í¼¼¸¦ ¹ßÇ¥ÇßÀ¸¸ç ÀÌ ¸í¼¼¿¡ ±âÃÊÇÏ¿© JOE¶ó´Â ORB¸¦ °³¹ß.Á¦°øÇϰí ÀÖ´Ù. ¶ÇÇÑ Orbix¸¦ °³¹ßÇÑ ¾ÆÀÌ¿À³ª»ç´Â OrbixWebÀ̶ó´Â ÀÚ¹Ù ¿¬µ¿ Á¦Ç°À» Ãâ½ÃÇßÀ¸¸ç Æ÷½ºÆ® ¸ð´ø»çÀÇ ºí·¢À§µµ¿ì(ÇöÀç ºñÁöºê·ÎÄ¿) µî ¿©·¯ ȸ»ç¿¡¼­ CORBA-ÀÚ¹Ù ¿¬µ¿ Á¦Ç°À» °³¹ßÇϰí ÀÖ´Ù.

Ãʱâ WWW¿¡¼­ ¿ÜºÎ ÇÁ·Î±×·¥°ú ¿¬µ¿ÇÏ´Â ¹æ¹ýÀº [±×¸²5-31]¿¡¼­ ó·³ HTTPDÁ¦°øÇÏ´Â CGI¹æ¹ýÀ» ÀÌ¿ëÇÏ´Â °ÍÀÌ´Ù. ÀÌ ¹æ¹ýÀº ÇÁ·Î±×·¡¸Ó¿¡°Ô ¿øÇÏ´Â ½Ã½ºÅÛÀ» ºü¸£°Ô ±¸ÃàÇÒ ¼ö ÀÖ°Ô ÇØÁÖÁö¸¸ ¸î°¡Áö ½É°¢ÇÑ ¹®Á¦Á¡À» ¾ß±âÇÑ´Ù. ¸ÕÀú »ç¿ëÀÚ¿ÍÀÇ ´ëÈ­Çü ÇÁ·Î±×·¥À» ÀÛ¼ºÇϱⰡ ¾î·Æ´Ù. ½ÇÁ¦ WWW¿¡¼­ »ç¿ë°¡´ÉÇÑ ´ëÈ­¹æ½ÄÀº HTML¹®¼­ÀÇ formÀ» ÀÌ¿ëÇÏ´Â °ÍÀÌ´Ù. µû¶ó¼­ ±ØÈ÷ Á¦ÇÑÀûÀÎ ´ëÈ­Çü ÇÁ·Î±×·¥¸¸ÀÌ À̿밡´ÉÇÏ´Ù. ±×¸®°í [±×¸²5-31]ÀÇ ¹æ½Ä¿¡¼­´Â ¿ÜºÎÀÇ ÇÁ·Î±×·¥À» ¼öÇàÇϱâ À§Çؼ­ fork()³ª exec()¸¦ »ç¿ëÇÏ¿© WWW¼­¹ö¿Í °°Àº ±Ô¸ðÀÇ ÇÁ·Î¼¼½º¸¦ »ý¼ºÇØ¾ß ¸¸ ÇÑ´Ù. µû¶ó¼­ »ç¿ëÀÚÀÇ ¿ä±¸°¡ ¹ß»ýÇÒ ¶§¸¶´Ù »õ·Î¿î ¿¬°áÀÌ ¸Î¾îÁö°í ÇÁ·Î¼¼½º¸¦ »ý¼ºÇϰųª ¹Ì¸® »ý¼ºµÈ ÇÁ·Î¼¼½º¸¦ ÅëÇØ ÇØ´ç ÇÁ·Î±×·¥À» ¼öÇà½ÃŲ ÈÄ ±× °á°ú¸¦ ºÎ¶ó¿ìÁ®¿¡°Ô ¹ÝȯÇÑ´Ù. ÀÌ °úÁ¤¿¡¼­ ¸¹Àº Åë½Å»óÀÇ ¿À¹öÇìµå¿Í ¸¹Àº ÀÚ¿øÀ» ¼Ò¸ðÇϰí CPU °è»ê»óÀÇ ³¶ºñ¸¦ °¡Á®¿À°Ô µÈ´Ù . ±×¸®°í °¡Àå ½É°¢ÇÑ ¹®Á¦Á¡Àº ÀÌ¿ëÇÏ·Á´Â ¿ÜºÎÀÇ ½Ã½ºÅÛ¿¡ µû¶ó °¢°¢ °³º°ÀûÀÎ ÇÁ·Î±×·¥À» ÀÛ¼ºÇØ¾ß ÇÑ´Ù´Â Á¡ÀÌ´Ù.

[ ±×¸²5-31 ] ÀüÅëÀûÀÎ CGI¹æ½Ä

ÀÌ·¯ÇÑ ¹®Á¦µéÀ» ÇØ°áÇÒ ¼ö ÀÖ´Â ¹æ¹ýÀÌ ¹Ù·Î ÀÚ¹Ù ÇÁ·Î±×·¥À» ÀÌ¿ëÇÏ´Â °ÍÀÌ´Ù. [±×¸²5-32]¿¡¼­ ó·³ ÀÚ¹Ù·Î ÀÛ¼ºµÈ Ŭ¶óÀ̾ðÆ®/¼­¹ö ÇÁ·Î±×·¥Àº WWW»ó¿¡¼­ ¸¹Àº ÀåÁ¡À» Á¦°øÇÑ´Ù. ½ÇÁ¦ »ç¿ëÀÚ°¡ Á¦ÃâÇÑ URL¿¡ µû¶ó¼­ ÀÚ¹Ù ¾ÖÇø´ ÇÁ·Î±×·¥ÀÌ »ç¿ëÀÚÀÇ ºÎ¶ó¿ìÁ®¸¦ ÅëÇØ ´Ù¿î·ÎµåµÈ´Ù. ÀÏ´Ü ÀÚ¹Ù ¾ÖÇø´ÀÌ ¼öÇàµÇ¸é ´õ ÀÌ»ó HTTPD¿ÍÀÇ Á¢ÃËÀº ÇÊ¿ä¾ø´Ù. ¿Ö³ÄÇϸé ÀÚ¹Ù ¾ÖÇø´ÀÌ Á÷Á¢ ¼­¹ö¿Í Åë½ÅÀ» Çϱ⠶§¹®ÀÌ´Ù. µû¶ó¼­ ¾Õ¼± CGI ¹æ¹ý¿¡¼­ ¹ß»ýÇÏ´Â ¹®Á¦¸¦ ÇØ°áÇÒ ¼ö ÀÖ´Ù. ±×·¯³ª ÇѰ¡Áö ³²Àº ¹®Á¦´Â ÀÚ¹Ù¸¦ »ç¿ëÇÏ´õ¶óµµ ÀÌ¿ëÇÏ·Á´Â ¿ÜºÎÀÇ ½Ã½ºÅÛ¿¡ µû¶ó °¢°¢ °³º°ÀûÀÎ ÇÁ·Î±×·¥À» ÀÛ¼ºÇØ¾ß ÇÑ´Ù´Â Á¡ÀÌ´Ù. ¿¹¸¦ µé¾î, ¸¸¾à 5°³ÀÇ ¿ÜºÎ ½Ã½ºÅÛÀ» ÀÌ¿ëÇÏ·Á¸é 5°³ÀÇ ÀÚ¹Ù ÀÎÅÍÆäÀ̽º ÇÁ·Î±×·¥À» ÀÛ¼ºÇؾ߸¸ ÇÑ´Ù.

[ ±×¸²5-32 ] Àڹ٠Ŭ¶óÀ̾ðÆ®/¼­¹ö ¹æ½Ä

¾Õ¼± µÎ ¹æ¹ý¿¡¼­ ¹ß»ýÇÏ´Â ¹®Á¦¿¡ ´ëÇÑ ÇØ°áÃ¥À¸·Î [±×¸²5-33]°ú °°ÀÌ CORBA¿Í ÀÚ¹ÙÀÇ ¿¬µ¿ ½Ã½ºÅÛÀ» µé ¼ö ÀÖ´Ù. ÇÁ·Î±×·¡¸Ó´Â CORBA¸¦ »ç¿ëÇÏ¿© ¿ÜºÎÀÇ ½Ã½ºÅ۵鿡 °øÅëµÈ CORBA ÀÎÅÍÆäÀ̽º¸¦ ÀÛ¼ºÇÒ ¼ö ÀÖ´Ù . ÀÌ CORBA ÄÚµå´Â ÀÚ¹Ù ÄÚµå·Î º¯È¯µÇ¾î WWW¸¦ ÅëÇØ ÀÚÀ¯·Ó°Ô ÀÌ¿ëµÈ´Ù. À̶§ º°µµÀÇ ¿ÜºÎÀÇ ½Ã½ºÅÛÀÌ Ãß°¡µÇ´õ¶óµµ ÇÁ·Î±×·¡¸Ó´Â CORBA ÀÎÅÍÆäÀ̽º¸¸ ¾Ë°í ÀÖÀ¸¸é ½±°Ô ¿ÜºÎ ½Ã½ºÅÛÀ» Ãß°¡ÇÒ ¼ö ÀÖ´Ù.


[ ±×¸²5-33 ] CORBA-ÀÚ¹Ù ¿¬µ¿½Ã½ºÅÛ

3.3 CORBA-ÀÚ¹Ù ¸ÅÇÎ

CORBA-ÀÚ¹Ù ¸ÅÇÎÀ» ÇѸ¶µð·Î Á¤ÀÇÇÏÀÚ¸é CORBA IDL¾ð¾î¸¦ ÀÚ¹Ù¾ð¾î·Î ¸ÅÇνÃŰ´Â °ÍÀÌ´Ù. ¹°·Ð ¸ÅÇÎÀ̿ܿ¡ ORB¿¡¼­ Á¦°øÇÏ´Â ±â´ÉÀ» »ç¿ëÇϱâ À§ÇÑ ±âº» Àڹ٠Ŭ·¡½ºµéÀÌ Á¦°øµÅ¾ß ÇÑ´Ù. µû¶ó¼­ CORBA-ÀÚ¹Ù ¸ÅÇÎÀ» ÀÌÇØÇÏ´Â °ÍÀº CORBAÀÇ IDLÀ» ÀÚ¹Ù·Î ¸ÅÇÎÇÏ´Â °úÁ¤À» ÀÌÇØÇÏ´Â °ÍÀÌ¶ó ¸»ÇÒ ¼ö ÀÖ´Ù.

ÇöÀç CORBA-ÀÚ¹Ù ¸ÅÇο¡ ´ëÇÑ ¾ÈÀ» ¹ßÇ¥ÇÑ °÷Àº JEO¶ó´Â Á¦Ç°À» ¼±º¸ÀÎ ¼±¼ÒÇÁÆ®»ç¿Í OrbixWebÀ» ¹ßÇ¥ÇÑ ¾ÆÀÌ¿À³ª»ç°¡ ÀÖ´Ù. ¹°·Ð ÇöÀç CORBAÇ¥ÁؾÈÀ» Á¦Á¤Çϰí ÀÖ´Â OMG¿¡¼­µµ CORBA-ÀÚ¹Ù ¸ÅÇΠǥÁؾÈÀ» Á¦Á¤Áß¿¡ ÀÖ´Ù. ƯÈ÷ ¼±¼ÒÇÁÆ®ÀÇ °æ¿ì CORBA-ÀÚ¹Ù ¸ÅÇο¡ ´ëÇÑ °ø°³ ¼ÒÇÁÆ®¿þ¾î·Î JIDLÀ» Á¦°øÇϰí ÀÖ´Ù. JIDLÀº IDL·Î ÀÛ¼ºµÈ ÇÁ·Î±×·¥À» ÀÚ¹Ù ÄÚµå·Î º¯È¯ÇØÁÖ´Â ÄÄÆÄÀÏ·¯·Î½á idlgenÀ» Á¦°øÇØÁØ´Ù.

idlgenÀº ÇöÀç ¼Ö¶ó¸®½º2.x¿Í À©µµ¿ìNT/95¿¡¼­ ¼öÇàµÈ´Ù. idlgenÀ» ÅëÇØ ¿©·¯ºÐÀº Àڹ٠Ŭ¶óÀÌ¾ðÆ® ½ºÅͺê Äڵ带 ¾òÀ» ¼ö ÀÖ´Ù. ÀÌ ¶§ »ý¼ºµÈ ½ºÅͺê ÄÚµå´Â º¹ ¼ö °³ÀÇ ORBÇÁ·ÎÅäÄÝÀ» Áö¿øÇϱâ À§ÇØ °³¹ßµÈ Æ÷Åͺí ORB ÄÚ¾Æ(Portable ORB Core) ½Ã½ºÅÛ»ó¿¡¼­ ¼öÇàµÈ´Ù .

[ ±×¸²5-34 ] ¼±¼ÒÇÁÆ®ÀÇ JIDLȯ°æ

3.3.1 CORBA-ÀÚ¹Ù ¸ÅÇÎ

´ÙÀ½Àº OrbixWeb¿¡¼­ÀÇ ¸ÅÇÎ ¹æ¹ýÀ» ±âº»À¸·Î ÇÏ¿© CORBA IDLÀ» ÀÚ¹Ù¾ð¾î·Î ¸ÅÇÎ ¹æ¹ýÀ» ¿ä¾à.Á¤¸®ÇÑ °ÍÀÌ´Ù.

CORBA IDL ÀÚ¹Ù

float float

double double

long int

short short

unsigned long int

unsigned short short

char char

boolean boolean

octet byte

string class String

enum int

structure class

discriminated union class( ½Äº°ÀÚ¿Í ÇØ´ç °ªÀ¸·Î ±¸¼ºµÊ)

enumeration class(°¢°¢ÀÇ ¿ø¼Ò¸¦ Á¤Àû º¯¼ö·Î ó¸®)

Array Array

Sequence class(¹öÆÛ¿Í ±æÀÌ º¯¼ö¸¦ Æ÷ÇÔÇϰí ÀÖÀ½)

Any CORBA.Any Ŭ·¡½º(ŸÀÔ°ú °ªÀ» Æ÷ÇÔÇϰí ÀÖÀ½)

module package

constant class(»ó¼ö¸¦ Á¤Àûº¯¼ö·Î ¼±¾ðÇÑ Æ¯º°ÇÑ Å¬·¡½º)

interface interfece( ÀÚ¹Ù´Â ´ÙÁß»ó¼ÓÀ» Áö¿øÇÏÁö ¾Ê´Â´ë½Å

ÀÎÅÍÆäÀ̽º ¸¦ Áö¿ø)

inheritance extends

object reference Ref interface

CORBA IDL ¸Þ¼Òµå´Â in, out, inout ¸Å°³º¯¼ö¸¦ °®´Â´Ù. À̶§ inout,outÀ» ó¸®Çϱâ À§ÇØ Æ¯º°ÇÑ ¹æ¹ýÀ» ÇÊ¿ä·Î ÇÑ´Ù. ¿Ö³ÄÇϸé ÀÚ¹Ù´Â ÂüÁ¶¿¡ ÀÇÇÑ Àü´Þ¹æ¹ýÀ» Áö¿øÇÏÁö ¾Ê±â ¶§¹®ÀÌ´Ù. µû¶ó¼­ °¢ µ¥ÀÌŸ ŸÀÔÀ» Àü´ÞÇϱâ À§ÇØ Holder¶ó´Â Ưº°ÇÑ Å¬·¡½º¸¦ »ý¼ºÇÏ¿© ¸Å°³º¯¼ö¸¦ Àü´ÞÇÑ´Ù. ÀÌ Å¬·¡½º¿¡´Â ÇØ´ç ¸Å°³º¯¼öÀÇ Å¸ÀÔ°ú °ªÀÌ µé¾îÀÖ´Ù. ¿¹¸¦ µé¸é, intÀÇ °æ¿ì intHolder°¡ longÀÇ °æ¿ì longHolder°¡ inout°ú out ¸Å°³º¯¼ö·Î ´ëüµÈ´Ù.

attribute attribute(), attribute( value) ( 2°³ÀÇ ¸Þ¼Òµå·Î ¸ÅÇÎ )

ÀÚ¹Ù´Â C++ÀÇ typedef°°ÀÌ ¾ð¾î¸¦ Ãß°¡ÇÏ´Â ±â´ÉÀÌ ¾ø´Ù. µû¶ó¼­ ÀÚ¹Ù´Â À̸¦ »ó¼Ó°ü°è¸¦ ÅëÇØ ó¸®ÇÑ´Ù. ´Ü int, char°°Àº ´Ü¼øÇÑ µ¥ÀÌŸ ŸÀÔÀº ó¸®ÇÒ ¼ö ¾ø´Ù.

typedef extends

raises throws

3.3.2 CORBA-ÀÚ¹Ù Á¦Ç°µé

ÇöÀç CORBA-ÀÚ¹Ù ¿¬µ¿ Á¦Ç°µéÀº ¾ÆÁÖ ±¤¹üÀ§ÇÏ°Ô °³¹ßµÇ°í ÀÖ´Ù. À̵鿡 ´ëÇÑ ¼Ò°³´Â ´ÙÀ½ Àå¿¡¼­ ÇÏ°í ¿©±â¼­´Â »ó¿ë Á¦Ç°¸¸À» °£·«È÷ ¼Ò°³Çϵµ·Ï ÇÑ´Ù.

3.3.2.1 ¼± ¼ÒÇÁÆ®ÀÇ NEO , JOE

¼±¼ÒÇÁÆ®»ç´Â OMGÀÇ Ãʱ⠸â¹ö·Î¼­ CORBAÇ¥ÁØÀ» ¸¸µå´Â µ¥ ÀÖ¾î ¸¹Àº ±â¿©¸¦ ÇÑ È¸»çÀÌ´Ù. ½ÇÁ¦ CORBAÀÇ IDLÀº ¼±¼ÒÇÁÆ®¿¡ ÀÇÇØ¼­ ÁÖµµÀûÀ¸·Î ÀÛ¼ºµÈ ¾ð¾îÀÌ´Ù. ÀÌ·¸µí ºÐ»ê°´Ã¼ ½Ã½ºÅÛ°ú À̸¦ ±â¹ÝÀ¸·Î ÇÑ È¯°æ¿¡ ¸¹Àº °ü½ÉÀ» °¡Á®¿Ô´Ù. ±× ±¸Ã¼ÀûÀÎ ½ÇÇà ¹æ¾ÈÀ¸·Î DOE(Distributed Object Environment)¶ó´Â ÇÁ·ÎÁ§Æ®¸¦ ÃßÁøÇÏ¿´´Ù. ÀÌ ÇÁ·ÎÁ§Æ®´Â CORBA¸¦ ±Ù°£À¸·Î ÇÑ ½Ã½ºÅÛÀ» ±¸ÃàÇÏ´Â µ¥ ÁÖ¾ÈÁ¡ÀÌ ÀÖ¾ú´Ù. ÀÌÈÄ ÀÌ ÇÁ·ÎÁ§Æ®´Â NEO¶ó´Â ÇÁ·ÎÁ§Æ®·Î ¹Ù²î°Ô µÇ¾ú´Ù. NEO´Â ÇѸ¶µð·Î »ç¿ëÀÚ(±â¾÷ ¶Ç´Â ´Üü,...)°¡ ±Þ¼ÓÇÏ°Ô º¯ÇÏ´Â Àü»êȯ°æÀ̳ª ±âŸ ¿ä±¸»çÇ׿¡ ´Éµ¿ÀûÀ¸·Î ´ëóÇÏ¿© °æÀï·ÂÀ» °®Ãâ ¼ö ÀÖµµ·Ï ÇØÁÖ´Â ÀÏ·ÃÀÇ ¼ÒÇÁÆ®¿þ¾î¸¦ ÀǹÌÇÑ´Ù. ÀÌ·¯ÇÑ ¸ñÀûÀ» ´Þ¼ºÇϱâ À§ÇØ NEO´Â ³×Æ®¿÷ ±â´ÉÀ» °¡Áø °´Ã¼¸¦ ±â¹ÝÀ¸·Î ÇÏ¿© ±â¾÷¿¡¼­ »ç¿ëÇÏ´Â ÅøÀÇ Á¾·ù¿¡ ¹«°üÇÏ°Ô °¢Á¾ ¼­ºñ½º¸¦ °øÀ¯ÇÏ°Ô ÇØÁØ´Ù. À̸¦ ¼±¼ÒÇÁÆ®´Â "°øÀ¯ ¼­ºñ½º (Shared Service)"¶ó°í ¸»ÇÑ´Ù. ÀÌ·¯ÇÑ ±â´ÉÀ» Á¦°øÇϱâ À§ÇØ NEO´Â ´ÙÀ½ÀÇ ¼ÒÇÁÆ®¿þ¾î¸¦ Æ÷ÇÔÇϰí ÀÖ´Ù.

¼Ö¶ó¸®½ºNEO´Â CORBA¿¡ ±Ù°ÅÇÑ °´Ã¼ ³×Æ®¿÷ ÀÎÇÁ¶ó ±¸Á¶¸¦ Á¦°øÇÏ¸ç ³×Æ®¿÷ °´Ã¼ °ü¸®µµ±¸·Î¼­ ¼Ö½ºÆ½½º(Solstice NEO) NEO¸¦ ¹øµé·Î Æ÷ÇÔÇϰí ÀÖ´Ù.

¿÷¼¥Àº ±âÁ¸ÀÇ Á¦Ç°À» NEO¿¡ ÀûÇÕÇÏ°Ô È®ÀåÇÑ Á¦Ç°À¸·Î C,C++ ÄÄÆÄÀÏÀ» À§ÇÑ ½ºÆÅ ÄÄÆÄÀÏ·¯¿Í °³¹ß µµ±¸ ¸ðÀ½ÀÎ ½ºÆÅ¿÷½º, ³×Æ®¿÷ °´Ã¼°³¹ßÀ» À§ÇØ IDLÄÄÆÄÀÏ·¯¿Í ³×Æ®¿÷ °´Ã¼ µð¹ö°Å¸¦ Æ÷ÇÔÇϰí ÀÖ´Â NEO¿÷½º·Î ±¸¼ºµÇ¾î ÀÖ´Ù.

JOE(Java Object Environment)´Â CORBA¿Í ÀÚ¹Ù¸¦ ¿¬µ¿ÇÏ´Â ¹æ¹ýÀ» Á¦°øÇÏ´Â ¼±¼ÒÇÁÆ®ÀÇ ¿­¼èÀÌ´Ù. ´Ù½Ã ¸»ÇØ JOE´Â IDLÀÚ¹Ù ÄÄÆÄÀÏ·¯¿Í ORB, ±×¸®°í NEO¿¡ ´ëÇÑ API·Î ±¸¼ºµÇ¾î ÀÖ´Ù. µû¶ó¼­ JOE·Î °³¹ßµÈ ÀÚ¹Ù ¾ÖÇø´Àº ¿ø°ÝÁöÀÇ NEO°´Ã¼¿¡ ¿¬°áµÇ¾î ´Ù¾çÇÑ ¼­ºñ½º¸¦ ÀÌ¿ëÇÒ ¼ö ÀÖ´Ù. °£·«ÇÏ°Ô JOE¿¡¼­ Á¦°øÇÏ´Â ±â´Éµé¿¡ ´ëÇØ »ìÆìº¸µµ·Ï ÇÑ´Ù.

¸¶Áö¸·À¸·Î ÇöÀç NEO³ª JOE¸¦ ÀÌ¿ëÇÏ·Á¸é ¼Ö¶óÀ̽º2.4 ÀÌ»ó ¹öÀüÀ» ÀÌ¿ëÇØ¾ß ÇÑ´Ù. µû¶ó¼­ À©µµ¿ì °´Ã¼¿¡ ´ëÇÑ Á¢±ÙÀ̳ª ÀÌ¿ë ±â¼úÀº ÇöÀç ¾ÆÀÌ¿À³ª»çÀÇ OrbixOLE¸¦ ÀÌ¿ëÇÏ±æ ±ÇÀåÇϰí ÀÖ´Ù. ¾Æ¸¶ ÀÌ·¯ÇÑ ¹æ¹ýÀº ¼Ö¶ó¸®½º ±Ù°£ ±â¼úÀº ¼±¼ÒÇÁÆ®»ç¿¡¼­ ÀÌ¿Ü Ç÷¿Æû°úÀÇ ¿¬°áÀº OrbixÀ» ÅëÇØ¼­¶ó´Â ¼±¼ÒÇÁÆ®»çÀÇ Àü·«¿¡¼­ ±âÀÎÇÏ´Â °Í °°´Ù.

3.3.2.2 ¾Æ ÀÌ¿À³ª»çÀÇ OrbixWeb 2.2

¾ÆÀÌ¿À³ª»çÀÇ OrbixWebÀº ±âÁ¸ÀÇ Orbix Á¦Ç°ÀÇ ÀÚ¹Ù ¸ÅÇÎ ¹öÀüÀÌ´Ù. µû¶ó¼­ Orbix¿¡¼­ Á¦°øÇÏ´Â ¸ðµç ±â´ÉÀ» ÀÚ¹Ù·Î ÀÌ¿ëÇÒ ¼ö ÀÖ´Ù. ÇöÀç OrbixWeb¿¡¼­ »ç¿ëÇÏ´Â IDLÀÚ¹Ù ¸ÅÇιæ¹ýÀº ¼±¿¡¼­ Á¦°øÇÏ´Â ¹æ½ÄÀÌ ¾Æ´Ï¶ó °íÀ¯ÇÑ ¸ÅÇÎ ¹æ¹ýÀ» »ç¿ëÇϰí ÀÖ´Ù. ±×·¯³ª ¼±ÀÇ ÀÚ¹Ù ¸ÅÇξȰú »ó´çÈ÷ À¯»çÇÏ¸ç ¾ÕÀ¸·Î OMGÀÇ IDLÀÚ¹Ù ¸ÅÇξÈÀ» µû¸¦ °ÍÀÌ´Ù.

OrbixWeb¿¡ ¼­ Á¦°øÇÏ´Â ±â´ÉÀ» °£·«È÷ Á¤¸®ÇØ º¸¸é ´ÙÀ½°ú °°´Ù.

À§ÀÇ ±â´É Áß ÇÊÅͱâ´ÉÀº °´Ã¼¸¦ È£ÃâÇÏ´Â °úÁ¤¿¡ ¿øÇÏ´Â ±â´ÉÀ» Ãß°¡ÇÏ´Â °ÍÀ» ¸»ÇÑ´Ù. °¡·É, ƯÁ¤ ¼­ºñ½º °´Ã¼¿¡ Á¢±ÙÇÒ ¶§¸¶´Ù °ú±ÝÀ» ¸Å±â´Â ±â´ÉÀÇ ÇÊÅ͸¦ Ãß°¡ÇÒ ¼ö ÀÖ´Ù. ÀÌ·¯ÇÑ ±â¼úÀ» °¢Á¾ º¸¾È ±â´É µî¿¡ ÀÀ¿ëÇÒ ¼öµµ ÀÖ´Ù. ÇöÀç OrbixWebÀº ¼Ö¶ó¸®½º¿Í À©µµ¿ì95/NT¿¡¼­ À̿밡´ÉÇϸç ÀÎÅͳݻ󿡼­ ¹«·á·Î ÀÌ¿ëÇÒ ¼ö ÀÖ´Ù. .

3.3.2.3 ºñ ÁöÁ¦´Ð»çÀÇ ºñÁöºê·ÎÄ¿

ºñÁöºê·ÎÄ¿´Â Àü¿¡ ºí·¢À§µµ¿ì¶ó´ÂCORBA-ÀÚ¹Ù ¿¬µ¿ Á¦Ç°À» °¡Àå ¸ÕÀú ¼±º¸ÀÎ Æ÷½ºÆ®¸ð´ø»ç¸¦ ÀμöÇÑ ºñÁöÁ¦´Ð»ç°¡ ¹ßÇ¥ÇÑ Á¦Ç°À¸·Î¼­ IIOP¸¦ ±âº» ÇÁ·ÎÅäÄÝ·Î »ç¿ëÇϸç CORBA Ç¥ÁØ¿¡¼­ ¸í½ÃÇÑ ±â´ÉÀ» Á¦°øÇÒ »Ó¸¸ ¾Æ´Ï¶ó "°ª¿¡ ÀÇÇÑ Àü´Þ" ¹æ½Ä µî ÀÚ¹Ù ¾ð¾îÀÇ ÀåÁ¡µéÀ» ´Ù¾çÇÏ°Ô Á¦°øÇϰí ÀÖ´Ù. ÇöÀç ºñÁöºê·ÎÄ¿´Â ¼±ÀÇ IDL-ÀÚ¹Ù ¸ÅÇξÈÀ» µû¸£°í ÀÖ´Ù.

ƯÈ÷, ºñÁöºê·ÎÄ¿´Â IDLÀ» ÀÛ¼ºÇÏÁö ¾Ê°íµµ CORBA-ÀÚ¹Ù ÇÁ·Î±×·¥À» ÀÛ¼ºÇÒ ¼ö ÀÖ´Â Ä«ÆäÀÎ(Caffeine)À̶ó´Â ȯ°æÀ» Á¦°øÇÑ´Ù. Ä«ÆäÀÎÀ» »ç¿ëÇϸé CORBA IDLÀ» ¸ð¸£´õ¶óµµ ÇÁ·Î±×·¥À» ÀÛ¼ºÇÒ ¼ö ÀÖ´Ù. ƯÈ÷, Ä«ÆäÀÎÀº ³Ý½ºÄÉÀÌÇÁ»çÀÇ °³¹ß ȯ°æ¿¡ Æ÷ÇÔµÇ¾î ³Î¸® »ç¿ëµÇ°í ÀÖ´Ù. ºñÁöºê·ÎÄ¿¿¡ ´ëÇÑ º¸´Ù ÀÚ¼¼ÇÑ ³»¿ëÀº ´ÙÀ½ ÀýÀÇ ³»¿ëÀ» ÂüÁ¶Çϱ⠹ٶõ´Ù.


[ ±×¸² 5-35 ] JIDL°ú OrbixÀ» ÅëÇØ ÀÛ¼ºµÈ CORBA-ÀÚ¹Ù ÇÁ·Î±×·¥

3.4 CORBA-ÀÚ¹Ù ÇÁ·Î±×·¥ ÀÛ¼º ¿¹

3.4.1ȯ°æ ±¸Ãà

´ÙÀ½Àº ºñÁöºê·ÎÄ¿ Á¦Ç°ÀÇ È¯°æ ±¸Ãà °úÁ¤ÀÌ´Ù. ¼³Ä¡ ȯ°æÀº À©µµ¿ì95ÀÌ °í Æò°¡ ¹öÀüÀ» ÀÌ¿ëÇÑ´Ù°í °¡Á¤ÇÑ´Ù.

[´Ü°è1] ¸ÕÀú ºñÁöºê·ÎÄ¿ÀÇ ¼³Ä¡ ¼ÒÇÁÆ®¿þ¾î¸¦ ÀÎÅͳݻ󿡼­ ´Ù¿î·Îµå ¹Þ°í ¶óÀ̼¾½º¸¦ ½ÅûÇÑ´Ù. (http://www.visigenic.com)

[´Ü°è2] ÇØ´ç ÇÁ·Î±×·¥(VisiJava_12_win.ZIP)À» Ç®°í setup.exe¸¦ ¼öÇàÇÑ´Ù. ¼³Ä¡µÈ µð·ºÅ丮¹Ø¿¡ adm À̶õ µð·ºÅ丮¿¡ ¶óÀ̼¾½º(license.dat)ÆÄÀÏÀ» ÀÛ¼ºÇÑ´Ù. °¡·É , c:\orb20À̶õ µð·ºÅ丮¿¡ ¼³Ä¡Çß´Ù¸é license.datÀº ´ÙÀ½¿¡ À§Ä¡ÇÑ´Ù.

c:\orb20\adm\license.dat.

license.dat¿¡ ±â·ÏÇØ¾ß ÇÒ Á¤º¸ÀΠüũ¼¶(Checksum)Àº ÀüÀÚ¿ìÆíÀ» ÅëÇØ Àü´Þ¹Þ´Â´Ù. Àü´Þ¹ÞÀº üũ¼¶ Á¤º¸´Â ´ÙÀ½°ú °°ÀÌ license.dat ÆÄÀÏ¿¡ Àû´Â´Ù.

Product Name: Orbeline2.0

Host id: 0

Num Units: 0

Expiration Time: 04/18/1997

Checksum: 1251-0101-0610-1112

[´Ü°è3] ´ÙÀ½Àº ºñÁöºê·ÎÄ¿ÀÇ ÀÛµ¿¿¡ ÇÊ¿äÇÑ È¯°æÀ» ¼³Á¤ÇØ¾ß ÇÑ´Ù. ¸ÕÀú °æ·Î(PATH)¸¦ ¼³Á¤Çϰí ORBLINEÀ̶ó´Â ȯ°æ º¯¼ö¸¦ ÅëÇØ ¼³Ä¡µÈ µð·ºÅ丮ÇÏÀÇ adm °æ·Î¸¦ ¸í½ÃÇØ ÁØ´Ù. ¸¶Áö ¸·À¸·Î´Â ºñÁöºê·ÎÄ¿¿¡¼­ »ç¿ëÇÏ´Â ÀÚ¹Ù ¶óÀ̺귯¸® °æ·Î¸¦ Ãß°¡ÇÑ´Ù(CLASSPATH). ÃÖÁ¾ÀûÀ¸·Î ¼³Á¤µÇ´Â ȯ°æ º¯¼öµéÀº ´ÙÀ½°ú °°´Ù.

set PATH = C:\ORB20\bin

set ORBLINE = C:\ORB20\ADM

set CLASSPATH=,;C:\ORB20\CLASSES;C:\JAVA\LIB\CLASSES.ZIP

[´Ü°è4] ¸ðµç ¼³Á¤À» ¸¶Ä£ ÈÄ¿¡ ºñÁöºê·ÎÄ¿ µ¥¸óÀ» ¼öÇàÇØ º»´Ù. ºñÁöºê·ÎÄ¿ µ¥¸ó ÇÁ·Î±×·¥Àº osagent.exeÀÌ´Ù. ¹é±×¶ó¿îµå·Î ¼öÇà½ÃŲ´Ù. osagent´Â Ŭ¶óÀ̾ðÆ®ÀÇ ¿äûÀ» ¹ÞÀº ÈÄ ÇØ´ç ±¸Çö °´Ã¼¿¡ ¿¬°áÇØ ÁÖ´Â ¿ªÇÒÀ» ¼öÇàÇÑ´Ù. µû¶ó¼­ Àû¾îµµ ÇϳªÀÇ osagent°¡ ¼öÇàÇϰí ÀÖ¾î¾ß ÇÑ´Ù.

osagent &

[´Ü°è5] µ¥¸ð µð·ºÅ丮¿¡ ÀÖ´Â ÀÓÀÇÀÇ ±¸Çö °´Ã¼¸¦ ¼öÇàÇÑ ÈÄ, ÀÌ»óÀÌ ¾øÀ¸¸é Ŭ¶óÀÌ¾ðÆ®¸¦ ¼öÇàÇØ º»´Ù. ÀÌ ¶§ ¸¸¾à Ŭ¶óÀÌ¾ðÆ®°¡ ÀÚ¹Ù ¾ÖÇø´À̶ó¸é ¼öÇàÇϱâ Àü¿¡ gatekeeper ¶ó´Â ÇÁ·Î±×·¥À» ¼öÇàÇØ¾ß ÇÑ´Ù . getekeeper´Â HTTP¸¦ ÅëÇØ ºñÁöºê·ÎÄ¿ ¼­¹ö¸¦ È£ÃâÇÏ°Ô ÇØÁÖ´Â HTTP-to-IIOP °ÔÀÌÆ®¿þÀÌÀÌ´Ù. gatekeeper°¡ Á¦´ë·Î ¼öÇàµÇÁö ¾ÊÀ¸¸é ¾ÖÇø´ ÇüÅÂÀÇ Å¬¶óÀÌ¾ðÆ®´Â ¼öÇàµÇÁö ¾Ê´Â´Ù. gatekeeper ¼öÇà½Ã °¡Àå ºó¹øÈ÷ ¹ß»ýÇÏ´Â °ÍÀº UnknownHost ExceprionÀÌ´Ù. ÀÌ °æ¿ì, ½ÇÁ¦ ÀÚ¹ÙÀÇ ¶óÀ̺귯¸®(getHostByName)ÀÇ ¿À·ùÀε¥ ·ÎÄà ȣ½ºÆ®ÀÇ µµ¸ÞÀÎ À̸§°ú DNS ¼­¹ö»óÀÇ µµ¸ÞÀÎÀ̸§ÀÇ Æ²¸° °æ¿ìÀÌ´Ù. µû¶ó¼­ DNS ¼­¹ö¿¡¼­ Á¦°øÇÏ´Â µµ¸ÞÀÎ À̸§À¸·Î ¼³Á¤À» ¹Ù²Ù¸é Á¦´ë·Î ¼öÇàÇÒ ¼ö ÀÖ´Ù. ¸¸¾à ¹«»çÈ÷ ¼öÇàµÈ´Ù¸é ¼³Ä¡´Â ¼º°ø¸®¿¡ ³¡³­ °ÍÀÌ´Ù. ( ÇØ´ç ±¸Çö °´Ã¼¿Í Ŭ¶óÀÌ¾ðÆ®¸¦ ¼öÇàÇÏÁö ¸øÇß´Ù¸é ´ÙÀ½ Àý¿¡¼­ ¼³¸íÇÏ´Â °úÁ¤¿¡ µû¶ó ¼öÇàÇÏ¸é µÈ´Ù. )

3.4.2 ÇÁ·Î±×·¥ °³¹ß °úÁ¤ÀÇ ÀÌÇØ

¾Õ¼­ ¹«»çÈ÷ ¼³Ä¡¸¦ ¸¶ÃÆ´Ù¸é ´ÙÀ½ÀÇ °úÁ¤¿¡ µû¶ó ÀÀ¿ë ÇÁ·Î±×·¥À» ÀÛ¼ºÇØ º»´Ù. ÆíÀÇ»ó ¿¹Á¦·Î¼­ ¼³Ä¡ ÈÄ ¿¹Á¦ µð·ºÅ丮¿¡ º¹»çµÇ´Â bank ¿¹Á¦¸¦ »ç¿ëÇϱâ·Î ÇÑ´Ù.

¹®Á¦ ³»¿ë

Ŭ¶óÀÌ¾ðÆ®´Â ¿øÇÏ´Â °èÁ¤(Account)¿¡ ´ëÇÑ Àܾ×À» Á¶È¸Çϱâ À§ÇØ ±¸Çö °´Ã¼¿¡°Ô

¼­ºñ½º¸¦ ¿äûÇÑ´Ù. ¼­ºñ½º¸¦ ¿äû¹ÞÀº ±¸Çö °´Ã¼´Â ÇØ´ç °èÁ¤ÀÇ Àܾ×À» ¹ÝȯÇÑ´Ù.

¸¸¾à ÇØ´ç °èÁ¤ÀÌ Á¸ÀçÇÏÁö ¾ÊÀ¸¸é Ŭ¶óÀÌ¾ðÆ®°¡ ¿äûÇÑ À̸§ÀÇ °èÁ¤À» »ý¼ºÇϰí

ÀÓÀÇÀÇ Àܾ×À» ¹ß»ý½ÃŲ ÈÄ ¹ÝȯÇÑ´Ù.

[´Ü°è1] bank °´Ã¼¿¡ ´ëÇÑ IDL ÆÄÀÏÀ» ÀÛ¼ºÇÑ´Ù.

½ÇÁ¦ ¿¹´Â ´ÙÀ½°ú °°´Ù. bank °´Ã¼´Â Bank¶ó´Â ¸ðµâ³»¿¡ µÎ°³ÀÇ ÀÎÅÍÆäÀ̽º·Î ±¸¼ºµÈ´Ù. Çϳª´Â ÇØ´ç °èÁ¤ÀÇ Àܾ×À» ¾Ë·ÁÁÖ´Âbalance() ¸Þ¼Òµå¸¦ °®´Â Account ÀÌ °í ´Ù¸¥ Çϳª´Â ƯÁ¤ ¼ÒÀ¯ÁÖÀÇ À̸§À» ¹Þ°í ÇØ´ç °èÁ¤À» °³¹æÇÑ ÈÄ ÀÓÀÇÀÇ °èÁ¤ Àܾ×À» ¹ÝȯÇÏ´Â open() ¸Þ¼Òµå¸¦ °®´Â AccountManager Ŭ·¡½ºÀÌ´Ù. open() ¸Þ¼ÒµåÀÇ Àü´ÞÀÎÀÚ´Â String ÇüÅ·ΠŬ¶óÀÌ¾ðÆ®¿¡¼­ ±¸Çö °´Ã¼·Î¸¸ Àü´ÞµÇ±â ¶§¹®¿¡ inÀ» »ç¿ëÇÏ¿´´Ù.

// Bank.idl

module Bank {

interface Account {

float balance();

};

interface AccountManager {

Account open(in string name);

};

};

[´Ü°è2] ÇØ´ç IDL ÆÄÀÏÀ» ÄÄÆÄÀÏÇÑ´Ù.

C:/> idl2java Bank.idl

ÄÄÆÄÀÏ ÈÄ, ÇöÀç µð·ºÅ丮ÇÏ¿¡ Bank¶ó´Â À̸§ÀÇ µð·ºÅ丮¿Í ´Ù¼öÀÇ ÆÄÀϵéÀÌ »ý¼ºµÈ´Ù. °¢ ÆÄÀϵéÀÌ ÀǹÌÇÏ´Â °ÍÀº ´ÙÀ½°ú °°´Ù.

ÆÄÀÏ ¸í
³» ¿ë
_st_Account.javaAccountÀÇ ½ºÅͺê ÄÚµå
_st_AccountManager.javaAccountManagerÀÇ ½ºÅͺê ÄÚµå
Account_var.javaŬ¶óÀ̾ðÆ®ÃøÀÇ Account°¡ ¼­¹öÂÊÀ» È£ÃâÇÒ ¼ö ÀÖµµ·Ï ÇØÁÖ´Â bind()¸Þ¼Òµå¿Í ¸Å°³º¯¼öµé
AccountManager_var.javaŬ¶óÀ̾ðÆ®ÃøÀÇ AccountManager°¡ ¼­¹öÂÊÀ» È£ÃâÇÒ ¼ö ÀÖµµ·Ï ÇØÁÖ´Â bind()¸Þ¼Òµå¿Í ¸Å°³º¯¼öµé

ÆÄÀÏ ¸í
³» ¿ë
_sk_Account.javaAccountÀÇ ½ºÄÌ·ÎÅÏ ÄÚµå
_sk_AccountManager.javaAccountManagerÀÇ ½ºÄÌ·ÎÅÏ ÄÚµå
_example_Account.javaAccount ±¸ÇöÀ» À§ÇÑ ÅÛÇø´ ÄÚµå
_example.AccountManager.javaAccountManager ±¸ÇöÀ» À§ÇÑ ÅÛÇø´ ÄÚµå

ÆÄÀÏ ¸í
³» ¿ë
Account.javaAccount ÀÎÅÍÆäÀ̽º ÆÄÀÏ
AccountManager.javaAccountManager ÀÎÅÍÆäÀ̽º ÆÄÀÏ

[´Ü°è3] _example_Account.java¿Í _example.AccountManager.java¸¦ ÀÌ¿ëÇÏ¿© ¼­¹öÂÊ ±¸Çö °´Ã¼¸¦ ÀÛ¼ºÇÑ´Ù.

º¼µåü ºÎºÐ¿¡ ¿øÇÏ´Â ÀÀ¿ë ÇÁ·Î±×·¥ÀÇ ·ÎÁ÷À» ÀÛ¼ºÇϰí ÇØ´ç ±¸Çö °´Ã¼¸¦ »ý¼ºÇϰí À̸¦ ORB¿¡ µî·ÏÇϱâ À§ÇÑ main()ÇÔ¼ö¸¦ ÀÛ¼ºÇÑ´Ù. Âü°í·Î ¿¹Á¦ Äڵ忡¼­ º¼µåü ºÎºÐÀº »ç¿ëÀÚ°¡ ÀÛ¼ºÇÑ ºÎºÐÀÌ´Ù.

//_example_Account.java

package Bank;

public class _example_Account extends Bank._sk_Account {

/** Construct a persistently named object. */

public _example_Account(java.lang.String name) {

super(name);

}

/** Construct a transient object. */

public _example_Account() {

super();

}

public float balance() throws CORBA.SystemException {

// À̰÷¿¡ »ç¿ëÀÚÀÇ ·ÎÁ÷À» ÀÛ¼ºÇÑ´Ù.

}

}

//_example_AccountManager.java

package Bank;

public class _example_AccountManager extends Bank._sk_AccountManager {

/** Construct a persistently named object. */

public _example_AccountManager(java.lang.String name) {

super(name);

}

/** Construct a transient object. */

public _example_AccountManager() {

super();

}

public Bank.Account open(

java.lang.String name

) throws

CORBA.SystemException {

// À̰÷¿¡ »ç¿ëÀÚÀÇ ·ÎÁ÷À» ÀÛ¼ºÇÑ´Ù.

}

}

½ÇÁ¦ ÀÛ¼ºµÈ ÄÚµå´Â ´ÙÀ½°ú °°´Ù.

//Server.java

import java.util.*;

class Account extends Bank._sk_Account {

Account(float balance) {

_balance = balance;

}

public float balance() throws CORBA.SystemException {

return _balance;

}

private float _balance;

}

class AccountManager extends Bank._sk_AccountManager {

AccountManager(String name) {

super(name);

}

public Bank.Account open(String name) throws CORBA.SystemException {

// °èÁ¤ Dictionary¿¡¼­ ÇØ´ç °èÁ¤À» ¾ò¾î ¿Â´Ù.

Bank.Account account = (Bank.Account) _accounts.get(name);

if(account == null) {

// 0 °ú 1000´Þ·¯ »çÀÌÀÇ °èÁ¤À» »ý¼ºÇÑ´Ù.

float balance = Math.abs(_random.nextInt()) % 100000 / 100f;

account = new Account(balance);

System.out.println("Created " + name + "'s account: " + account);

// »õ·Î¿î °´Ã¼ ÂüÁ¶ÀÚ¸¦ ¾ò¾î¿Â´Ù.

_boa().obj_is_ready(account);

// °èÁ¤ ¸ñ·Ï¿¡ ÇØ´ç °èÁ¤À» ÀúÀåÇÑ´Ù.

_accounts.put(name, account);

}

// °èÁ¤À» ¹ÝȯÇÑ´Ù.

return account;

}

private Dictionary _accounts = new Hashtable();

private Random _random = new Random();

}

public class Server {

public static void main(String[] args) {

try {

// ORB¸¦ ÃʱâÈ­ ½ÃŲ´Ù.

CORBA.ORB orb = CORBA.ORB.init();

// BOA¸¦ ÃʱâÈ­ ½ÃŲ´Ù.

CORBA.BOA boa = orb.BOA_init();

// account manager °´Ã¼¸¦ »ý¼ºÇÑ´Ù.

AccountManager manager =

new AccountManager("CORBA Bank");

// »õ·Ó°Ô »ý¼ºµÈ °´Ã¼¸¦ BOA¿¡ µî·ÏÇÑ´Ù.

//Áö±ÝºÎÅÍ »ç¿ëÁØ ºñ°¡ µÈ ¼ÀÀÌ´Ù.

boa.obj_is_ready(manager);

System.out.println(manager + " is ready.");

//Ŭ¶óÀ̾ðÆ®ÀÇ ¿äûÀ» ±â´Ù¸°´Ù.

boa.impl_is_ready();

}

catch(CORBA.SystemException e) {

System.err.println(e);

}

}

}

[´Ü°è4] Ŭ¶óÀÌ¾ðÆ® Äڵ带 ÀÛ¼ºÇÑ´Ù.

// Client.java

public class Client {

public static void main(String args[]) {

try {

// ORB¸¦ ÃʱâÈ­ ½ÃŲ´Ù.

CORBA.ORB orb = CORBA.ORB.init();

// ¼­ ¹ö account manager °´Ã¼¿¡ ´ëÇÑ °´Ã¼ ÂüÁ¶ÀÚ¸¦ ¾ò¾î¿Â´Ù.

Bank.AccountManager manager =

Bank.AccountManager_var.bind("CORBA Bank");

// µð ÆúÆ® »ç¿ëÀÚ À̸§À̳ª args[0]¸¦ °èÁ¤ À̸§À¸·Î ¼³Á¤ÇÑ´Ù.

String name = args.length > 0 ? args[0] : "Jirubak";

// ÇØ ´ç °èÁ¤À̸§ÀÇ °èÁ¤À» ¿­¶ó°í ¿äûÇÑ´Ù

Bank.Account account = manager.open(name);

// °è Á¤ÀÇ Àܾ×À» ¾ò¾î¿Â´Ù.

float balance = account.balance();

// ÀÜ ¾×À» Ãâ·ÂÇÑ´Ù.

System.out.println ("The balance in " + name + "'s account is' + balance);

}

catch(CORBA.SystemException e) {

System.err.println(e);

}

}

}

[´Ü°è5] ÀÛ¼ºµÈ Ŭ¶óÀÌ¾ðÆ®¿Í ¼­¹ö Äڵ带 ÄÄÆÄÀÏÇÑ´Ù.

C:/> javac Client.java -> Client.class »ý¼º

C:/> javac Server.java -> Server.class »ý¼º

[´Ü°è6] ¸ÕÀú osagent¶ó´Â ºñÁöºê·ÎÄ¿ µ¥¸óÀ» ¼öÇà½ÃŲ´Ù.

osagent´Â Ŭ¶óÀÌ¾ðÆ®¿Í ±¸Çö °´Ã¼»çÀÌÀÇ À§Ä¡ ¼­ºñ½º¸¦ Á¦°øÇÑ´Ù. µû¶ó¼­ LANȯ°æ¿¡ Àû¾îµµ ÇϳªÀÇ osagent°¡ ¼öÇàµÇ¾î¾ß ÇÑ´Ù.

C:/> start osagent

´ÙÀ½À¸·Î ±¸Çö °´Ã¼¸¦ ¼öÇà½ÃŲ´Ù.

C:/> start java Server

¿¹Á¦¿¡¼­´Â osagent¿Í ±¸Çö °´Ã¼¸¦ ¼­·Î ´Ù¸¥ ÇÁ·Î¼¼½º»ó¿¡¼­ ¼öÇàÇϱâ À§ÇØ start ¸í·É¾î¸¦ »ç¿ëÇÏ¿´´Ù.

[´Ü°è7] ´Ù¸¥ À©µµ¿ì¸¦ »ý¼ºÇÑ ÈÄ, Ŭ¶óÀÌ¾ðÆ® ÇÁ·Î±×·¥À» ¼öÇàÇÑ´Ù .

C:/> java Client

¸¸¾à º°µµÀÇ Àü´ÞÀÎÀÚ°¡ ¾ø´Ù¸é ´ÙÀ½°ú °°Àº °á°ú¸¦ »ý¼ºÇØ ³½´Ù.

The balance in jirubak's account is $73.17

¸¸¾à Àü´ÞÀÎÀÚ·Î younghanÀ» »ç¿ëÇÏ¸é ´ÙÀ½°ú °°Àº °á°ú¸¦ »ý¼ºÇØ ³½´Ù.

The balance in younghan's account is $11.17

¸¶Áö¸·À¸·Î ÁÖÀÇ ÇÒ Á¡Àº ¾Õ¼­ ¼³¸íÇÑ °Íó·³ Ŭ¶óÀÌ¾ðÆ®°¡ ÀÚ¹Ù ¾ÖÇø´ÀÎ °æ¿ì ¹Ýµå½Ã ½ÇÇàÇϱâ Àü¿¡ osagent¿Ígatetkeeper(IIOP GeteKeeper)¶ó´Â ÇÁ·Î±×·¥À» ¼öÇàÇØ¾ß ÇÑ´Ù´Â »ç½ÇÀÌ´Ù. gatekeeper´Â HTTP ÅͳθµÀ» ÅëÇØ ¹æÈ­º® ³»¿¡ ÀÖ´Â ±¸Çö °´Ã¼µé°ú Åë½ÅÇÏ°Ô ÇØÁØ´Ù. ´Ù½Ã ¸»ÇØ getekeeper´Â Ŭ¶óÀÌ¾ðÆ® ¾ÖÇø´ÀÌ ´Ù¿î·ÎµåµÈ È£½ºÆ®¿Ü¿¡ ´Ù¸¥ °÷¿¡ À§Ä¡ÇÑ ±¸Çö °´Ã¼µé°ú Åë½ÅÇÏ°Ô ÇØÁØ´Ù.

4Àå °³¹ßÀÚµéÀÇ Èñ¸Á, CORBA + WWW + JAVA

4.1 »õ·Î¿î ÆÐ·¯´Ù ÀÓÀÇ ÃâÇöÀΰ¡ ±âÁ¸ ÆÐ·¯´ÙÀÓÀÇ ÁøÈ­Àΰ¡?

±¸Á¶Àû ¹æ¹ý·Ð°ú °³¹ß·ÐÀ» ±â¹ÝÀ¸·Î °ú°ÅÀÇ ¼ÒÇÁÆ®¿þ¾î ¾÷°è´Â "¼ÒÇÁÆ®¿þ¾îÀÇ À§±â(Software crisis)"¶ó´Â ¸»Ã³·³ ¼ö¸¹Àº ÀÚ°¡´çÂøÀû ¿À·ù¿¡ ºüÁ®¹ö·È¾ú´Ù. ±â¾÷ÀÇ ½Ã½ºÅÛ ÇÁ·¹ÀÓ¿÷ÀÌ Áß¾ÓÁýÁ߽Ŀ¡¼­ Ŭ¶óÀ̾ðÆ®/¼­¹ö ±¸Á¶·Î ÀüȯµÇ°í ÀÌÁ¾ÀÇ Çϵå¿þ¾î¿Í ¿î¿µ üÁ¦, ³×Æ®¿÷ ȯ°æ ±×¸®°í ÀÌÁ¾ÀÇ µ¥ÀÌŸº£À̽ºµéÀÌ »êÀûÇØ ÀÖ´Â »óȲ¿¡¼­ ¼ÒÇÁÆ®¿þ¾î °³¹ßÀÚµéÀº ´Ù¾çÇÑ ¿ä±¸ »çÇ׿¡ Á÷¸éÇß´Ù. ¸ÕÀú º¸´Ù ³ôÀº »ý»ê¼º°ú ½Å·Ú¼º, È¿À²¼º ±×¸®°í ȯ°æ º¯È­¿¡ ÀûÀýÈ÷ ±Ô¸ð Á¶Á¤ÇÒ ¼ö ÀÖ´Â ¼ÒÇÁÆ®¿þ¾î¸¦ °³¹ßÇØ¾ß ÇßÀ¸¸ç °³¹ßµÈ ¼ÒÇÁÆ®¿þ¾î´Â À¯Áö.º¸¼ö°¡ ½¬¿ö¾ß Çß°í À̸¦ À§ÇØ °¡´ÉÇÑ ÇÑ ´Ü¼øÇÏ°Ô ¼³°è.±¸ÇöÇØ¾ß¸¸ Çß´Ù.

ÀÌ·¯ÇÑ ¹®Á¦Á¡À» ±Øº¹ÇϰíÀÚ ÃâÇöÇÑ ÇØ°á¹æ¾ÈÀÌ ¹Ù·Î °´Ã¼ÁöÇâ(Object-Oriented)À̶ó´Â »õ·Î¿î ÆÐ·¯´ÙÀÓÀ̾ú´Ù. ÀÌ ÆÐ·¯´ÙÀÓÀº ½Ç¼¼°èÀÇ ¸ðµç ¹®Á¦¸¦ ¼Ó¼º°ú ÇÔ¼ö·Î Æ÷ÀåµÇ´Â °´Ã¼·Î ¼±¾ðÇÏ°í »ó¼Ó °ü°è³ª Æ÷ÇÔ °ü°èó·³ ÀÌµé °´Ã¼»çÀÌÀÇ ¿¬°ü °ü°è¸¦ ÁöÁ¤ÇÔÀ¸·Î¼­ °¡´ÉÇÑ ÇÑ ¹®Á¦¸¦ Ãß»óÈ­½Ã۰í ÀÌµé ¹®Á¦°£ÀÇ ¹°¸®Àû ¿¬°ü¼ºÀ» ÁÙ¿©ÁÖ¾ú´Ù. µû¶ó¼­ ±âÁ¸ÀÇ ±¸Á¶Àû ¹æ¹ý·ÐÀÌ ÁÙ ¼ö ¾ø¾ú´ø ¸¹Àº ±â´ÉµéÀ» ÀÌ¿ëÇÒ ¼ö ÀÖ¾ú´Ù. ÀÌ·¯ÇÑ °´Ã¼ÁöÇâ ÆÐ·¯´ÙÀÓÀÇ ±¸Ã¼Àû ¹æ¹ýµé¿¡´Â OMT °°Àº °´Ã¼ÁöÇ⠺м®°ú °´Ã¼ÁöÇâ µðÀÚÀÎ, C++³ª ÀÚ¹Ù°°Àº °´Ã¼ÁöÇâ ¾ð¾î, ObjectStore³ª O2°°Àº °´Ã¼ÁöÇâ µ¥ÀÌŸº£À̽º µîÀÌ ÀÖÀ¸¸ç ½ÇÁ¦ ¸¹Àº Á¦Ç°µéÀÌ »ç¿ëÁß¿¡ ÀÖ´Ù.

ÀÌ·¯ÇÑ »óȲÇÏ¿¡¼­ ´Ü±â°£¿¡ ±Þ¼ÓÈ÷ ¼ºÀåÇÑ ÀÎÅͳÝÀº "³× Æ®¿÷ÀÌ ÄÄÇ»ÅÍ"¶ó´Â ¸»À» ÄÄÇ»ÅÍ ¾÷°è¸¦ Ç¥ÇöÇÏ´Â ´ë¸í»ç·Î ¸¸µç °Íó·³ ¸¹Àº ºÐ¾ß¿¡ ¿µÇâÀ» ÁÖ¾ú´Ù. ¹°·Ð ÀÌÁß¿¡¼­ °¡Àå ¸¹Àº ¿µÇâÀ» ¹ÞÀº ºÐ¾ß´Â ¼ÒÇÁÆ®¿þ¾î ºÐ¾ßÀÌ´Ù. ¼ö ¸¹Àº ¼ÒÇÁÆ®¿þ¾î¿Í º¥Ã³ ±â¾÷ÀÌ Æø¹ßÀûÀ¸·Î µîÀåÇßÀ¸¸ç »ç¶óÁö±âµµ Çß´Ù. ÀÌ Áß¿¡¼­ °¡Àå µÎµå¸®Áø °ÍÀÌ ¹Ù·Î WWWÀÇ ±Þ¼ÓÇÑ È®»êÀÌ´Ù. ÀÌÁ¦ ¸ðµç ÄÄÇ»ÅÍ¿¡´Â WWW Ŭ¶óÀ̾ðÆ®ÀÎ ºÎ¶ó¿ìÁ®°¡ Àû¾îµµ Çϳª¾¿Àº ¼³Ä¡µÇ¾î ÀÖÀ¸¸ç À̸¦ ÅëÇØ ´Ù¾çÇÑ ºÎ°¡ ¼­ºñ½º¸¦ ÀÌ¿ëÇϰí ÀÖ´Ù. "ºÎ¶ó¿ìÁ®°¡ ¿î¿µ üÁ¦" ¶Ç´Â "¿î¿µ üÁ¦°¡ ºÎ¶ó¿ìÁ®"¶ó´Â ¸»Àº °áÄÚ °úÀåµÈ Ç¥ÇöÀº ¾Æ´Ò °ÍÀÌ´Ù.

WWWÀÇ È®»êÀº ¸¶Ä§³» Á¤º¸ ½Ã½ºÅÛ ºÐ¾ß¿¡ ±îÁö ºÒ¾î¿Í ±âÁ¸ÀÇ Á¤º¸ ½Ã½ºÅÛÀ» WWW»ó¿¡ ¿¬µ¿½ÃÄÑ WWW ºÎ¶ó¿ìÁ®¸¦ ÅëÇØ ÀÎÅͳÝÀÌ ¿¬°áµÇ¾î ÀÖ´Â °÷Àº ¾îµð¼­³ª ÀÌ¿ëÇÒ ¼ö ÀÖ°Ô µÇ¾ú´Ù. ¹°·Ð »õ·Ó°Ô °³¹ßµÇ´Â ½Ã½ºÅÛÀº WWW ±â¹ÝÇÏ¿¡¼­ WWWÀÇ ÇÁ·ÎÅäÄÝ ÀÎ HTTP(Hyper Text Transfer Protocol)¿Í WWWÀÇ ¸ÖƼ¹Ìµð ¾î ¹®¼­ÀÎ HTML(Hyper Text Markup Language) ±×¸®°í WWWÀÇ ¿ÜºÎ ¿¬µ¿ ¹æ¹ýÀÎ CGI(Common Gateway Interface), ÀüÀÚ ¿ìÆíÀ̳ª ÀüÀÚ °Ô½ÃÆÇ ó·³ ÀÌ¹Ì °³¹ßµÇ¾î ÀÖ´Â ÀÎÅÍ³Ý ¼­ºñ½ºµéÀ» ±â¹ÝÀ¸·Î ÇÑ´Ù. ÀÌ·¯ÇÑ È¯°æÀ» ÀÎÆ®¶ó³ÝÀ̶ó°í ÇÑ´Ù.

±×·¯³ª WWW»óÀÇ Å¬¶óÀÌ¾ðÆ®¿Í ¼­¹ö´Â °è¼Ó »óŸ¦ À¯ÁöÇϸ鼭 Á¤º¸¸¦ ±³È¯ÇÒ ¼ö ¾øÀ¸¸ç ºÎ¶ó¿ìÁ®´Â ´Ü¼øÈ÷ HTML ¹®¼­¸¦ Ç¥ÇöÇØ Áֱ⠶§¹®¿¡ µ¿ÀûÀÎ »ç¿ëÀÚ ÀÎÅÍÆäÀ̽º¿Í Áö¼ÓÀûÀÎ »óÅÂÁ¤º¸¸¦ ¿ä±¸ÇÏ´Â Á¤º¸ ½Ã½ºÅÛÀ» ±¸ÃàÇÒ ¶§ ¸¹Àº ¹®Á¦°¡ ¹ß»ýÇÑ´Ù. ÀÌ·¯ÇÑ ¹®Á¦¸¦ ÇØ°áÇϰíÀÚ µîÀåÇÑ ±â¼úÀÌ ¹Ù·Î ¼±¸¶ÀÌÅ©·Î½Ã½ºÅÛÁîÀÇ °´Ã¼ÁöÇâ ÀÎÅÍÇÁ¸®Æ® ¾ð¾îÀÎ ÀÚ¹ÙÀÌ´Ù. ÀÚ¹Ù ¾ð¾î´Â °´Ã¼ÁöÇâ °³³äÀ» Áö¿øÇÏ¸ç ¹ÙÀ̳ʸ® Äڵ尡 ¾Æ´Ï¶ó Áß°£ ÄÚµå ÇüÅÂÀÇ ¹ÙÀÌÆ® Äڵ带 »ý¼ºÇس»±â ¶§¹®¿¡ ÇØ´ç ¹ÙÀÌÆ® Äڵ带 ÇØ¼®ÇÏ´Â ÄÄÆÄÀÏ·¯°¡ ÀÖ´Â °÷ÀÌ¸é ¾îµð¼­³ª ½ÇÇàµÉ ¼ö ÀÖ´Â ±¸Á¶¸¦ °¡Áö°í ÀÖ´Ù. ÀÌ·¯ÇÑ ±¸Á¶¸¦ Àû±Ø Ȱ¿ëÇÏ¿© ÀÚ¹Ù ÀÎÅÍÇÁ¸®Å͸¦ WWW ºÎ¶ó¿ìÁ®¿¡ »ðÀÔÇϰí ÀÚ¹Ù ÀÀ¿ë ÇÁ·Î±×·¥À» ºÎ¶ó¿ìÁ®¿¡¼­ ½ÇÇà½ÃÅ´À¸·Î¼­ Á¤ÀûÀÎ WWW¿¡ µ¿ÀûÀÎ ±â´ÉÀ» ºÒ¾î³Ö°í Ŭ¶óÀÌ¾ðÆ®¿Í ¼­¹ö »çÀÌÀÇ »óÅÂÁ¤º¸¸¦ À¯ÁöÇÒ ¼ö ÀÖ°Ô ÇØÁÖ¾ú´Ù.

WWW ¸¦ Áß½ÉÀ¸·Î ÇÑ ÀÎÅͳݰú ÀÚ¹Ù ¸øÁö¾Ê°Ô ¶Ç ÇϳªÀÇ Áß¿äÇÑ È¯°æ º¯È­°¡ ¹Ù·Î ºÐ»ê ȯ°æÀÌ´Ù. ³×Æ®¿÷ ÀÇ È®»ê°ú ¾Æ¿ï·¯ ±âÁ¸ÀÇ Å¬¶óÀ̾ðÆ®/¼­¹ö ȯ°æÀ» º¸´Ù Àû±ØÀûÀ¸·Î ¹ßÀü½ÃÄÑ ¿©·¯ ½Ã½ºÅÛÀ» Áö¸®ÀûÀ¸·Î ºÐ»êµÇ¾î ÀÖ´Â °÷¿¡ ºÐ»ê½ÃÄÑ °¢±â µ¶¸³ÀûÀÎ ±â´ÉÀ» ¼öÇàÇϰųª ÇÊ¿ä½Ã Çù·ÂÇÏ´Â ºÐ»ê ½Ã½ºÅÛÀÌ º¸ÆíÈ­µÇ±â ½ÃÀÛÇß´Ù. ÀÌ·¯ÇÑ ºÐ»ê ½Ã½ºÅÛÀº Ãʱ⠼ÒÄÏÀ̳ª RPC ( Remote Procedure Call)°°Àº ÇÏÀ§ ¼öÁØÀÇ ³×Æ®¿÷ ±â´ÉÀ» ÀÌ¿ëÇÏ¿© °³¹ßµÇ¾úÀ¸³ª ÀÌÈÄ DCE(Distributed Computing Environment)°°Àº ÅëÇÕ ºÐ»ê ȯ°æÀ» ÅëÇØ °³¹ßµÇ¾ú´Ù. ±×·¯³ª ±âÁ¸ÀÇ ÀÌ·¯ÇÑ ¹æ¹ýÀº ºÐ»ê ȯ°æÇÏ¿¡¼­ ´Ù¾çÇÑ Çϵå¿þ¾î¿Í ÀÀ¿ë ¼ÒÇÁÆ®¿þ¾î , ¿î¿µ üÁ¦, µ¥ÀÌŸº£À̽º µîÀ» ÀϰüµÇ°Ô ¿¬°áÇØÁÖÁö ¸øÇß´Ù. µû¶ó¼­ ¾Õ¼­ ¾ð±ÞÇÑ °Íó·³ »õ·Î¿î ȯ°æ¿¡ ÀûÇÕÇÑ ÇØ°áÃ¥À» Á¦½ÃÇØ ÁÖÁö ¸øÇÑ °ÍÀ̾ú´Ù. ÀÌ·¯ÇÑ »óȲÀ» ÇØ°áÇϰíÀÚ ³ª¿Â ¹æ¹ýÀÌ ¹Ù·Î OMG(Object Management Group)ÀÇ CORBA(Common Object Request Broker)ÀÌ´Ù. CORBA´Â ±¸Çö ¾ð¾î³ª °³¹ß ȯ°æÀ̶ó±â º¸´Ù´Â °´Ã¼ ±â¼ú¿¡ ±Ù°ÅÇÑ ÅëÇÕ ±â¼úÀÌ´Ù. µû¶ó¼­ ½ÇÁ¦ ±¸ÇöµÈ, ¶Ç´Â ±¸ÇöµÇ´Â ¾ð¾î¿¡ »ó°ü¾øÀÌ °¢ ½Ã½ºÅÛµéÀ» ¿¬°á.ÅëÇÕÇÒ ¼ö ÀÖ´Â ¹æ¹ýÀ» Á¦°øÇÑ´Ù.

Áö±Ý±îÁö ¸¹Àº °³¹ßÀÚµéÀº °¢Á¾ ½Ã½ºÅÛ ±¸Ãà½Ã ±âº» ȯ°æÀ¸·Î¼­ WWW¸¦, WWW ȯ°æÇÏ¿¡¼­ µ¿ÀûÀÎ ½Ã½ºÅÛÀ» ±¸ÃàÇϱâ À§ÇÑ °³¹ß ¾ð¾î·Î¼­ ÀÚ¹Ù¸¦, ÀÌÁ¾ÀÇ ´Ù¾çÇÑ ½Ã½ºÅÛÀ» ÅëÇÕÇϱâ À§ÇÑ Áß°£ ±â¼ú·Î¼­ CORBA¸¦ °¢±â µû·Î »ç¿ëÇØ ¿Ô´Ù. ±×·¯³ª ÇöÀç ¸¹Àº °÷¿¡¼­ ÀÚ¹Ù¿Í CORBAÀÇ ±â´ÉÀ» ÅëÇÕÇÏ¿© ½Ã½ºÅÛÀ» ±¸ÃàÇϰí ÀÖÀ¸¸ç ÅëÇÕµÈ ½Ã½ºÅÛ ¶ÇÇÑ »ó´ç¼ö Á¸ÀçÇÑ´Ù. ±×·¸´Ù ¸é ´ç¿¬È÷ ¿©·¯ºÐÀº ¿Ö ÀÚ¹Ù¿Í WWW, CORBA¸¦ ÅëÇÕÇÏ´Â Áö ±× ÀÌÀ¯¿¡ ´ëÇØ ±Ã±ÝÇØÁú °ÍÀÌ´Ù. ±× ±Ã±ÝÁõÀº ´ÙÀ½ Àý¿¡¼­ Ç®¾îº¸µµ·Ï ÇÑ´Ù. ¿©±â¼­´Â °£´ÜÈ÷ °³³ä¿¡ ´ëÇØ¼­¸¸ »ìÆìº¸ÀÚ. Robert Orfali¿Í Dan HarkeyÀÇ Ã¥ÀÎ "Client/Server Programming with Java and CORBA"¶ó´Â Ã¥¿¡¼­ ÀÚ¹Ù¿Í CORBA¿¡ ´ëÇØ¼­ ´ÙÀ½°ú °°ÀÌ Ç¥ÇöÇß´Ù.

"Java is the first step toword creating an Object Web, but it is

still not enough. Java offers tremendous flexibility for distributed

application development, but it currently does not support a client/

server paradigm. To do this, Java needs to be augmented with a

distributed object infrastructure, which is where OMG's CORBA

comes into the picture. CORBA provides the missing link between

the Java portable application environment and the world of intergalactic

back-end services. The intersection of Java and CORBA object

technologies is the natural next step in the evolution of the

Object Web"

±×µéÀº ÀÚ¹Ù°¡ Á¦°øÇÏ´Â À¯¿¬¼º(flexibility)°ú À̽ļº(portability), CORBA°¡ Á¦°øÇÏ´Â ºÐ»ê °´Ã¼ ÀÎÇÁ¶ó¸¦ °áÇÕÇÔÀ¸·Î½á ÀÎÅÍ³Ý È¯°æÇÏ¿¡¼­ WWW¼­¹ö¸¦ Æ÷ÇÔÇÑ ´Ù¾çÇÑ ¼­¹öµé°ú ÀÚ¹ÙÀÇ À̽ļºÀÖ´Â Äڵ带 ±â¹ÝÀ¸·Î ÇÑ Å¬¶óÀÌ¾ðÆ®¸¦ ±¸ÃàÇÒ ¼ö ÀÖ´Ù°í º¸¾Ò´Ù. ¾Æ¿ï·¯ ÀÚ¹Ù¿Í CORBAÀÇ ÅëÇÕ È¯°æÀ» Object WebÀ̶õ ¿ë¾î·Î Ç¥ÇöÇß´Ù. À̵éÀÇ ±â¼úÀû °ßÇØ´Â Á¤È®ÇÑ °ÍÀ̸ç ÇöÀç ¼ö ¸¹Àº °÷¿¡¼­ Object Web ȯ°æÇÏ¿¡¼­ ½Ã½ºÅÛÀ» °³¹ßÇϰí ÀÖ´Ù.

Áö±Ý±îÁö °ú°ÅºÎÅÍ Áö±Ý±îÁöÀÇ ±â¼úÀû Àüȯ °úÁ¤À» »ìÆìº¸¾Ò´Ù. Áö±Ý±îÁöÀÇ ³»¿ëÀ» Á¤¸®Çϸé [ ±×¸²5-36]°ú °°´Ù. ¿©±â¼­ Áß¿äÇÑ °ÍÀº Ãʱ⠱¸Á¶Àû ¹æ¹ý·Ð¿¡¼­ °´Ã¼ÁöÇâ ¹æ¹ý·ÐÀ¸·ÎÀÇ ÀüȯÀº ºÐ¸íÈ÷ °ú°ÅÀÇ ³°Àº ÆÐ·¯´ÙÀÓÀ» ¹ö¸®°í »õ·Î¿î ÆÐ·¯´ÙÀÓÀ¸·Î ÀüȯÇÑ °ÍÀÌ´Ù. ±×·¯³ª °´Ã¼ÁöÇâ ÆÐ·¯´ÙÀÓÇÏ¿¡¼­ WWWȯ°æ°ú ÀÚ¹Ù °´Ã¼ÁöÇâ ¾ð¾î, CORBA ºÐ»ê °´Ã¼ ½Ã½ºÅÛÀº »õ·Î¿î ÆÐ·¯´ÙÀÓÀÌ ¾Æ´Ï¶ó ÇöÀçÀÇ ±â¼úÀ» ±â¹ÝÀ¸·Î »ó½ÂÈ¿°ú¸¦ ¾òÀÚ´Â µ¥ ÀÖ´Ù. ÇѸ¶µð·Î ÇöÀç ÆÐ·¯´ÙÀÓÇÏ¿¡¼­ÀÇ ÁøÈ­ÀÌ´Ù. ´ÙÀ½ Àý¿¡¼­ º¸´Ù ÀÚ¼¼È÷ Object WebÀ¸·ÎÀÇ ÁøÈ­¿¡ ´ëÇØ »ìÆìº¸ÀÚ.


[ ±×¸²5-36 ] ÆÐ·¯´ÙÀÓÀÇ ÀüÀÌ

4.2 CORBA + ÀÚ¹Ù +WWW = Object Web

4.2.1 Object Web

ÀÚ¹Ù´Â ¿ÏÀüÇÑ ¶ÇÇϳªÀÇ °´Ã¼ÁöÇâ ÇÁ·Î±×·¡¹Ö ¾ð¾îÀÌ´Ù. µû¶ó¼­ ÀÚ¹Ù¸¦ ÅëÇØ Ŭ·¡½º³ª »ó¼Ó µî ´Ù¾çÇÑ °´Ã¼ÁöÇâ ÆÐ·¯´ÙÀÓ¿¡ ÁØÇÏ´Â ½Ã½ºÅÛÀ» °³¹ßÇÒ ¼ö ÀÖ´Ù. ÀÚ¹Ù°¡ °®´Â ÇÁ·Î±×·¥ÀûÀÎ ¸í¼¼¿Ü¿¡ ÀÚ¹Ù´Â ÀÎÅÍÇÁ¸®ÅÍ ¾ð¾î·Î¼­ ¿î¿µ üÁ¦¿¡ »ó°ü¾øÀÌ ¼öÇàÇÒ ¼ö ÀÖ´Ù´Â ÀåÁ¡À» Á¦°øÇÑ´Ù.(¹°·Ð ¼Óµµ°¡ ´À¸®´Ù´Â ´ÜÁ¡µµ ¾È°í ÀÖ´Ù.) ÀÏ´Ü ÀÛ¼ºµÈ ÀÚ¹Ù ÄÚµå´Â ÄÄÆÄÀÏ·¯¿¡ ÀÇÇØ¼­ ÀÚ¹Ù ¹ÙÀÌÆ® ÄÚµå·Î º¯È¯µÈ´Ù. ÀÌ ÄÚµå´Â ·ÎÄà ÄÄÇ»Åͳª ³×Æ®¿÷À» °æÀ¯ÇÏ¿© ´Ù¸¥ ÁöÁ¡¿¡ À§Ä¡ÇÑ ÄÄÇ»ÅÍ»ó¿¡°Ô Àü´ÞµÈ´Ù. Àü´Þ¹ÞÀº ÀÚ¹Ù ÄÚµå´Â ¸ÕÀú ¹ÙÀÌÆ® ÄÚµå ·Î´õ¿¡ ÀÇÇØ¼­ ·ÎµåµÇ°í ¹ÙÀÌÆ® ÄÚµå °Ë»ç±â¿¡ À§Çؼ­ °Ë»çµÈ ÈÄ ÀÎÅÍÇÁ¸®Å͸¦ ÅëÇØ ¼öÇàµÈ´Ù. µû¶ó¼­ À©µµ¿ì°Ç À¯´Ð½º°Ç »ó°ü¾øÀÌ ¹ÙÀÌÆ® Äڵ带 ¼öÇàÇϱâ À§ÇÑ È¯°æÀÌ ÀÖ´Â °÷ÀÌ¸é ¾îµð¼­³ª ¼öÇàµÉ ¼ö ÀÖ´Ù. ƯÈ÷, ÀÚ¹Ù ¼öÇàȯ°æÀ» ³»ÀåÇϰí ÀÖ´Â WWW ºÎ¶ó¿ìÁ®´Â ÀÎÅͳݻóÀÇ ¾îµð¼­³ª ÀÚ¹Ù Äڵ带 ¼öÇàÇÏ°Ô ÇØ ÁØ´Ù. ¹Ù·Î ÀÌ ±â´ÉÀ¸·Î ÀÎÇØ ÀÚ¹Ù´Â Á¤ÀûÀÎ WWWȯ°æ ¿¡ µ¿ÀûÀÎ »ý¸í·ÂÀ» ºÒ¾î³Ö¾úÀ¸¸ç ¸¹Àº °³¹ßÀÚµéÀº ¿î¿µ üÁ¦¿¡ »ó°ü¾øÀÌ °³¹ßµÈ Äڵ带 ¾îµð¼­³ª ¼öÇàÇÒ ¼ö ÀÖ´Ù´Â µæÀ» º¼ ¼ö ÀÖ´Ù.

±×·¯³ª ÀÚ¹Ù°¡ Á¦°øÇÏ´Â ¼öÇà ȯ°æ»óÀÇ ÀåÁ¡¿¡µµ ºÒ±¸Çϰí ÀÚ¹Ù´Â ´ë±Ô¸ðÀÇ ½Ã½ºÅÛÀ» °³¹ßÇÏ´Â µ¥¿¡´Â ¸¹Àº ¹®Á¦Á¡À» ³»Æ÷Çϰí ÀÖ¾ú´Ù. °¡·É, µ¥ÀÌŸº£À̽º¿¡ ´ëÇÑ ¿¬°á±â´ÉÀ̳ª ±âÁ¸ÀÇ ¸®°Å½Ã ½Ã½ºÅÛ¿¡ ´ëÇÑ ¿¬µ¿±â´É µî... µû¶ó¼­ ¼±¼ÒÇÁÆ®»ç´Â ÀÌ·¯ÇÑ È¯°æÀ» ±¸ÃàÇϰíÀÚ ¸¹Àº ³ë·ÂÀ» ±â¿ï¿´´Ù. ±× °á°ú ¼±¼ÒÇÁÆ®»ç´Â ÀÚ¹Ù ¿£ÅÍÇÁ¶óÀÌÁî¶ó´Â ÀÚ¹Ù °³¹ß ÇÁ·¹ÀÓ¿÷À» ¹ßÇ¥Çß´Ù . ´ÙÀ½ÀÇ [±×¸²5-37]Àº ¹ÙÀÌÆ®ÁöÀÇ 97³â 8¿ùÈ£ Ä¿¹ö½ºÅ丮 ¸¦ Àå½ÄÇÑ ±ÛÀÎ "Web Component" ¶ó´Â ±Û¿¡¼­ ¼Ò°³ÇÑ ÀÚ¹Ù ¿£ÅÍÇÁ¶óÀÌÁî ±¸Á¶ÀÌ´Ù(http://www.byte.com/art/9708/sec5/art1.htm). ÀÚ¹Ù ¿£ÅÍÇÁ¶óÀÌÁî ±¸Á¶´Â WWWȯ°æÇÏ¿¡¼­ ¿£ÅÍÇÁ¶óÀÌÁî ±Ô¸ðÀÇ ÀÀ¿ë ½Ã½ºÅÛÀ» °³¹ßÇÒ ¶§ ÇÊ¿äÇÑ ÀÚ¹Ù ±â¼úµéÀÇ ºôµù ºí·°À» ³ªÅ¸³½´Ù.


[ ±×¸² 5-37 ] ÀÚ¹Ù ¿£ÅÍÇÁ¶óÀÌÁî °³¹ß ÇÁ·¹ÀÓ¿÷

°¢°¢ÀÇ ºôµù ºí·°µéÀ» ¼³¸íÇÏ´Â °ÍÀº º» ±ÛÀÇ ¸ñÀûÀÌ ¾Æ´Ï±â ¶§¹®¿¡ Âü°í¹®ÇåÀ» ÅëÇØ ÀÌÇØÇϱ⠹ٶõ´Ù. ±×·¯³ª ÇѰ¡Áö ´«¿¡ ¶Ù´Â Á¡Àº ÀÚ¹Ù ¿£ÅÍÇÁ¶óÀÌÁî °³¹ß ÇÁ·¹ÀÓ¿÷¿¡¼­ Ŭ¶óÀÌ¾ðÆ®¿Í ¼­¹ö»çÀÌÀÇ Åë½Å ÇÁ·ÎÅäÄݷμ­ IIOP ¸¦ Áö¿øÇÏ´Ù´Â Á¡ÀÌ´Ù. ÀÌ ¸»Àº IIOP¸¦ ÀÌ¿ëÇϸé ÀÚ¹Ù·Î °³¹ßµÈ Ŭ¶óÀÌ¾ðÆ®°¡ ´Ù¸¥ ¾ð¾î·Î ÀÛ¼ºµÈ ¼­¹ö¸¦ ÀÌ¿ëÇÒ ¼ö ÀÖ´Ù¶ó´Â Àǹ̸¦ Æ÷ÇÔÇϰí ÀÖ´Ù. ½ÇÁ¦ [±×¸² 5-37]ÀÇ ±¸Á¶´Â ¾ÕÀ¸·Î ¼³¸íÇÏ°Ô µÉ Object Web¿¡ ´ëÇÑ ¹Ø±×¸²À» Á¦½ÃÇÑ´Ù°í ¸»ÇÒ ¼ö ÀÖ´Ù. ±×·¯³ª ÀÚ¹Ù°¡ Á¦°øÇÏ´Â ¸¹Àº ÀåÁ¡µé¿¡µµ ºÒ±¸ÇÏ°í ¾ÆÁ÷ ÇØ°áÇØ¾ß ÇÒ ¸¹Àº ¹®Á¦Á¡µéÀÌ ÀÖ´Ù. ¸ÕÀú, ÀÚ¹Ù°¡ ÁøÁ¤ÇÑ °³¹ß ¾ð¾î°¡ µÇ±â À§Çؼ­´Â ³ôÀº ¼º´É°ú ºü¸¥ ¼öÇà ¼Óµµ¸¦ º¸ÀåÇØ¾ß ÇÑ´Ù. ¶ÇÇÑ ±âÁ¸ÀÇ ¸®°Å½Ã ½Ã½ºÅÛÀ» ¼Õ½±°Ô ¿¬µ¿Çϱâ À§ÇÑ ±â´ÉÀ» Á¦°øÇØ¾ß ÇÑ´Ù. ´ëºÎºÐÀÇ ¿£ÅÍÇÁ¶óÀÌÁî ½Ã½ºÅÛµéÀº ºü¸¥ ¼º´ÉÀ» ¿ä±¸ÇÏ´Â ÇÑÆí ±âÁ¸ÀÇ °³¹ßµÈ ¸®°Å½Ã ½Ã½ºÅÛµéÀ» Àû±Ø Ȱ¿ëÇØ¾ß Çϱ⠶§¹®ÀÌ´Ù. Á¤¸®ÇÏÀÚ¸é, ÀÚ¹Ù´Â °´Ã¼ÁöÇâ °³¹ß ¾ð¾î·Î¼­ Ãâ¹ßÇßÀ¸¸é °³¹ß ¾ð¾î ±× ÀÌ»óÀº ¾Æ´Ï´Ù. µû¶ó¼­ ¿£ÅÍÇÁ¶óÀÌÁî ¼Ö·ç¼ÇÀ» Á¦°øÇϱâ À§Çؼ­´Â º¸´Ù °íµµÀÇ ½Ã½ºÅÛ ÅëÇÕ ±â´ÉÀ» Áö¿øÇØ¾ß ÇÑ´Ù. ¹Ù·Î ÀÌ Á¡ÀÌ ÀÚ¹Ù°¡ CORBA¿ÍÀÇ ÅëÇÕÀ» ÅëÇØ ¾ò°íÀÚ ÀÖ´Â ±â´ÉÀ̱⵵ ÇÑ´Ù.

¾Õ¼­ Á¤¸®ÇÑ °Íó·³ CORBA¿Í ÀÚ¹Ù´Â °¢±â ½Ã½ºÅÛ ÅëÇÕ ±â¼ú·Î¼­, °³¹ß ¾ð¾î·Î¼­ Ãâ¹ßÇÏ¿´´Ù. ±×·¯³ª ÀÎÅͳÝ, ÀÎÆ®¶ó³Ý ÀÌ º¸ÆíÈ­µÈ ȯ°æÇÏ¿¡¼­ CORBA´Â ÀÚ¹ÙÀÇ ¸ðºô ÄÚµå ±â´É°ú À¥ ºÎ¶ó¿ìÁ®¿¡ Ç÷¯±×-ÀÎÇÒ ¼ö ÀÖ´Â Àڹ٠Ŭ¶óÀÌ¾ðÆ®¸¦ ¼ö¿ëÇÒ ¼ö ¹Û¿¡ ¾ø¾ú°í ÀÚ¹Ù ¾ð¾î´Â CORBA¸¦ ÅëÇØ Ç¥ÁØ ½Ã½ºÅÛ ÅëÇÕ ±â¼úÀ» È®º¸ÇÒ ¼ö ÀÖ¾ú´Ù. ÀÌ ±â¼úÀ» Object Web À̶ó°í Ç¥ÇöÇÑ´Ù.


[ ±×¸²5-38 ] Object WebÀÇ ±¸Á¶

Object WebÀº [±×¸² 5-38]¿¡¼­ ó·³ ±âÁ¸ÀÇ CORBAÀÇ IDL¾ð¾î¸¦ ÀÚ¹Ù ¾ð¾î·Î º¯È¯ÇÏ°í ±âÁ¸ÀÇ WWWȯ°æ¿¡¼­ Ŭ¶óÀÌ¾ðÆ®¿Í ¼­¹ö »çÀÌÀÇ Åë½ÅÀº IIOP(Internet Inter ORB Protocol)¸¦ »ç¿ëÇÏ´Â °ÍÀÌ´Ù. IDLÀº º»·¡ ±¸Çö ¾ð¾î Á߸³ÀÇ ÀÎÅÍÆäÀ̽º Á¤ÀǾîÀÌ´Ù. µû¶ó¼­ ÇØ´ç ÀÎÅÍÆäÀ̽º¸¦ ÀÚ¹Ù·Î º¯È¯ÇÏ´Â °úÁ¤ÀÌ ÇÊ¿äÇÏ´Ù. ÀÌ °úÁ¤Àº CORBA ¿¡ ¼­ ÀÚµ¿ÀûÀ¸·Î Á¦°øÇÑ´Ù. ¶ÇÇÑ Object WebÀÇ Å¬¶óÀÌ¾ðÆ®¿Í ¼­¹ö´Â WWW»ó¿¡¼­ À¥ÀÇ ÇÁ·ÎÅäÄÝÀÎ HTTP(Hyper Text Transfer Protocol)¸¦ »ç¿ëÇϱ⠾ʰí CORBA°¡ Á¦°øÇÏ´Â °´Ã¼°£ Åë½Å ÇÁ·ÎÅäÄÝÀÎ IIOP¸¦ ÅëÇØ¼­ ÀÛµ¿ÇÑ´Ù.

ÇöÀç, Object WebÀÇ ±¸Ãà ȯ°æÀº ±âÁ¸ÀÇ WWWȯ°æ°ú µ¿ÀÏÇÏ´Ù. ´ÜÁö ´Ù¸¥ Á¡Àº CORBA IIOP¸¦ Áö¿øÇÏ´Â À¥ ºÎ¶ó¿ìÁ®¿Í CORBA¿Í ¿¬µ¿°¡´ÉÇÑ À¥¼­¹ö¿¡ ÀÖ´Ù. ÀÏ´Ü Object WebÀ» ÅëÇØ °³¹ßµÈ Ŭ¶óÀÌ¾ðÆ® ÇÁ·Î±×·¥Àº CORBA IIOP¸¦ Áö¿øÇÏ´Â À¥ ºÎ¶ó¿ìÁ®¿¡ HTTP¸¦ ÅëÇØ ´Ù¿î·ÎµåµÈ´Ù. ´Ù¿î·ÎµåµÈ ÇÁ·Î±×·¥Àº IIOP¸¦ ÅëÇØ CORBA¿ÍÀÇ ¼­ºñ½º¸¦ °³½ÃÇÏ°Ô µÈ´Ù. ÀÌ ¶§ À¯ÀÇÇÒ Á¡Àº ´Ù¿î·ÎµåµÈ ÇÁ·Î±×·¥ ¿ª½Ã ÀÚ¹Ù ¾ÖÇø´À̱⠶§¹®¿¡ ÀÚ¹Ù ¾ÖÇø´ÀÌ °®°í ÀÖ´Â º¸¾È»óÀÇ Á¦¾à, ƯÈ÷ ´Ù¿î·Îµå ¹ÞÀº È£½ºÆ®¿¡¸¸ ¿¬°áÀ» ¼³Á¤ÇÒ ¼ö ÀÖ´Â Á¦¾à¿¡ Áö¹èµÈ´Ù. µû¶ó¼­ ±âº»ÀûÀ¸·Î ´Ù¿î·ÎµåµÈ WWW¼­¹ö¸¦ ÅëÇØ ¼­ºñ½º ¿¬°áÀ» ½ÃµµÇÑ´Ù. °á±¹ WWW¼­¹ö´Â Ŭ¶óÀÌ¾ðÆ®°¡ ¿äûÇÑ ¼­ºñ½º¸¦ ³×Æ®¿÷»óÀÇ ´Ù¸¥ °÷¿¡ À§Ä¡ÇÑ CORBA¿¡°Ô Àü´ÞÇϱâ À§ÇÑ ¹æ¹ýÀ» °®°í ÀÖ¾î¾ß ÇÑ´Ù. Object Web ȯ°æÀº CORBA ¼­ºñ½º ¿Ü¿¡µµ ±âÁ¸ÀÇ À¥¼­ºñ½º°¡ Á¦°øÇϰí ÀÖ´Â CGI ÀÎÅÍÆäÀ̽º¿Í HTML ¹®¼­ ¼­ºñ½º¸¦ ¿©ÀüÈ÷ Á¦°øÇÑ´Ù. ÇöÀç ³Ý½ºÄÉÀÌÇÁ4.0¿¡ ³»ÀåµÈ CORBA IIOP ±â´ÉÀ» ÅëÇØ Object Web ¼­ºñ½º¸¦ ÀÌ¿ëÇÒ ¼ö ÀÖ´Ù.

4.2.2 CORBA,ÀÚ¹Ù ,WWW ÀÇ ¿¬µ¿ ³ë·Â

4.2.2.1 Object WebÀÇ °³¹ß ³ë·Âµé

ÇöÀç Object Web ȯ°æÀ» Áö¿øÇÏ´Â ¸¹Àº CORBA Á¦Ç°µéÀÌ ¼Ò°³µÇ°í ÀÖ´Ù. ´ÙÀ½Àº ÇØ´ç Á¦Ç°µéÀÌ´Ù. ÀÌ Áß¿¡¼­ ÁÖ¸ñÇÒ ¸¸ÇÑ Á¦Ç°À¸·Î´Â ³Ý½ºÄÉÀÌÇÁ»ç¿Í º¼·£µå µî¿¡¼­ CORBA IIOP ±â´ÉÀ» Áö¿øÇϱâ À§ÇØ ¶óÀ̼¾½ºÇÑ Á¦Ç°À¸·Î ºñÁöÁ¦´Ð»çÀÇ ºñÁöºê·ÎÄ¿¿Í °¡Àå ¸¹Àº Ç÷§Æû°ú ´Ù¾çÇÑ CORBA ¼­ºñ½º¸¦ Á¦°øÇÏ´Â Orbix¿Í ¼±¼ÒÇÁÆ®»çÀÇ JOE °¡ ÀÖ´Ù.

OrbixWeb http://www.iona.com

Visibroker for Java http://www.visigenic.com

JOE http://www.sunsoft.com

CHORUS/COOL http://www.chorus.com/Products/Cool/index.html

JacORB http://www.inf.fu-berlin.de/~brose/jacorb

Julu http://Coho.stanford.EDU/~hassan/Jylu

ELECTRA http://www.olsen.ch/~maffeis/electra.html

Omnibroker http://www.ooc.com/ob.html

Jade http://pariah.ansa.co.uk:8080/~jade/

DOME http://www.realobj.demon.co.kuk/

JORBA http://www.progsoc.uts.edu.au/~raz/jorba/

Java IDL http://splash.javasoft.com/JavaIDL/pages/index.html

4.1.2.2 Object Web À» À§ÇÑ Ç¥ÁØÈ­ ³ë·Â

°ú°Å ÀÚ¹Ù¿Í CORBAÀÇ ÀåÁ¡À» °áÇÕÇÏ·Á´Â ½Ãµµ´Â ÁÖ·Î Çб³³ª ±â¾÷ÀÇ ¿¬±¸±â°ü¿¡¼­ ¸¹ÀÌ ÁøÇàµÇ¾î ¿Ô¾ú´Ù. ±×·¯³ª ÇöÀç Object Web ÀÇ Áøº¸µÈ ¹æ¹ý·ÐÀÌ ´ëµÎµÇ¸é¼­ º»°ÝÀûÀ¸·Î ÀÚ¹Ù¿Í CORBAÀÇ ÅëÇÕÀÌ ÁøÇàµÇ°í ÀÖ´Ù. ƯÈ÷, CORBA Ç¥ÁØÀ» ¸¸µé°í ÀÖ´Â OMG¿Í ÀÚ¹Ù¸¦ Çâ»ó½Ã۰í ÀÖ´Â ¼±¼ÒÇÁÆ®»çÀÇ ³ë·ÂÀº Á¡Á¡ °¡¼ÓÈ­µÇ°í ÀÖ´Ù. 1997³â 7¿ù¿¡ ¿­¸° Object World West 97¿¡¼­´Â ÇâÈÄ 1³â³»Áö 2³â¾È¿¡ ÀÚ¹Ù¿Í CORBAÀÇ °æ°è´Â ¾ø¾îÁú °ÍÀ̶ó°í ¹ßÇ¥Çß´Ù, À̸¦ µÞ¹ÙħÀÌ¶óµµ Çϵí OMG¿¡¼­´Â CORBA3.0 Ç¥ÁØ¾È ¿¡ Àڹٺ󽺸¦ ±â¹ÝÀ¸·Î ÇÑ ÄÄÆ÷³ÍÆ® ¸ðµ¨°ú °ª¿¡ ÀÇÇÑ °´Ã¼ Àü´Þ, ÀÚ¹Ù ½ºÅ©¸³ÆÃ ±â¼ú µîÀ» Áö¿øÇÒ °ÍÀ̶ó°í ¹ßÇ¥ÇßÀ¸¸ç ¼±¼ÒÇÁÆ®»çÀÇ °æ¿ì CORBAÀÇ À̸§ ¼­ºñ½º, µð·º Å丮 ¼­ºñ½º, Æ®·»Á§¼Ç ¼­ºñ½º µî ´Ù¾çÇÑ CORBA ±â´ÉÀ» ÀÚ¹Ù ¿£ÅÍÇÁ¶óÀÌÁî ¼Ö·ç¼Ç¿¡ ÷ºÎÇÒ °ÍÀÌ°í ±âÁ¸ÀÇ CORBA¿Í ÀÚ¹Ù RMI¿ÍÀÇ »óÃæµÇ´Â ¹®Á¦¸¦ Ç®±âÀ§ÇØ RMIÀÇ ÇÏÀ§ ÇÁ·ÎÅäÄÝ·Î CORBAÀÇ IIOP¸¦ »ç¿ëÇÒ °ÍÀ̶ó°í ¹ßÇ¥Çß´Ù. ´ÙÀ½Àº ÀÌ·¯ÇÑ ³ë·ÂµéÀ» Á¤¸®ÇÑ °ÍÀÌ´Ù.

- ÀÚ¹Ù¸¦ ¼ö¿ëÇÏ·Á´Â OMGÀÇ È°µ¿

* ÀÚ¹Ù ÀÎÅÍÆäÀ̽º·Î ºÎÅÍ Á÷Á¢ IDLÀ» »ý¼ºÇس»±â À§ÇÑ ¸í¼¼¸¦ °³¹ß Áß¿¡ ÀÖ´Ù.

* ÀÚ¹Ù RMI¿Í À¯»çÇÏ°Ô °ª¿¡ ÀÇÇÑ °´Ã¼ Àü´ÞÀ» Áö¿øÇÒ °ÍÀÌ´Ù.

* ÀÚ¹Ù ºó½º¿¡ ±â¹ÝÇÑ ÄÄÆ÷³ÍÆ® ¸ðµ¨À» äÅÃÇÒ °ÍÀÌ´Ù.

* ÀÚ¹Ù ½ºÅ©¸³ÆÃ ±â¼úÀ» ÇâÈÄ CORBA3.0¸í¼¼¿¡ Æ÷ÇÔÇÒ °ÍÀÌ´Ù.

- CORBA¸¦ ¼ö¿ëÇÏ·Á´Â ¼±ÀÇ ³ë·Â

* CORBA IIOP¸¦ ä¿ëÇÔÀ¸·Î¼­ ±âÁ¸ÀÇ CORBA°´Ã¼¿ÍÀÇ ¿¬µ¿°ú °³¹æÇü ±¸Á¶¸¦ È®º¸ Áß¿¡

ÀÖ´Ù.

* ÀÚ¹ÙÀÇ Åõ¸í¼º°ú È¿À²¼ºÀ» ÀÒÁö ¾Ê°í RMI¸¦ »ç¿ëÇϱâ À§ÇØ IIOP±â¹ÝÀÇ RMI Á¦¾ÈÁßÀÌ´Ù .

* JTS(Java Transaction Service API)ÀÇ ±â¹Ý ±â¼ú·Î CORBAÀÇ OTS(Object Transaction Service)¸¦ äÅÃÇß´Ù.

* CORBA ¸í¸í ¼­ºñ½º , µð·ºÅ丮 ¼­ºñ½º µî ±âŸ ¼­ºñ½º¸¦ ÀÚ¹Ù ¿£ÅÍÇÁ¶óÀÌÁî ÇÁ·¹ÀÓ¿÷¿¡ µµÀÔÁßÀÌ´Ù.

Áö±Ý±îÁö »ìÆìº» ÀÚ¹Ù¿Í CORBAÀÇ ÅëÇÕ ³ë·ÂµéÀº ½ÇÁ¦ ±â¼úÀûÀÎ È¿°ú¿Ü¿¡ ±Þ¼ÓÈ÷ È®»êµÇ°í ÀÖ´Â ºÐ»ê°´Ã¼ ½ÃÀå¿¡¼­ Çì°Ô¸ð´Ï¸¦ ¼±Á¡ÇÏ·Á´Â Àǵµ°¡ ¼û¾î ÀÖ´Â °Ô »ç½ÇÀÌ´Ù. ½ÇÁ¦ OMG¿Í ¼±¼ÒÇÁÆ®»ç´Â CORBA¿Í Àڹٺ󽺿¡ ±â¹ÝÇÑ CORBA ÄÄÆ÷³ÍÆ®µéÀ» ÅëÇØ ¸¶ÀÌÅ©·Î¼ÒÇÁÆ®ÀÇ DCOM(Distributed Component Object Model)¿¡ ±â¹ÝÇÑ ActiveX ÄÄÆ÷³ÍÆ®µéÀ» °ÝÅðÇÒ ²Þ¿¡ ºÎÇ®¾î ÀÖ´Ù. ¹°·Ð ÀÌ ²ÞÀº ½ÇÁ¦ »óȲÀÌ µÉ ¼ö ÀÖ´Ù. ±×·¯³ª À̸¦ ÀÌ·ç±â À§Çؼ­´Â ¸î°¡Áö ¿ì·ÁÇÒ ¸¸ÇÑ »çÇ׵鿡 ´ëÇÑ ÇØ°áÃ¥À» Á¦½ÃÇØ¾ß ÇÒ °ÍÀÌ´Ù.

¸ÕÀú, CORBA¿¡¼­ °¡Àå Áß¿äÇÏ°í ±Ù°£ÀÌ µÇ´Â öÇÐ Áß Çϳª´Â °³¹ß ¾ð¾î¿¡ Á¾¼ÓµÇÁö ¾Ê´Â Á߸³ÀûÀÎ ¼Ö·ç¼ÇÀ» Á¦°øÇÏ´Â °ÍÀÌ´Ù. ´Ù½Ã ¸»ÇØ, CORBA IDL Àº ƯÁ¤ ¾ð¾î¿¡ Á¾¼ÓµÇ¼­´Â ¾ÈµÈ´Ù´Â °ÍÀÌ´Ù. µû¶ó¼­ CORBA°¡ ÀÚ¹Ù¿Í Åõ¸íÇÏ°Ô ÅëÇյɼö·Ï ¼ö¸¹Àº CORBA °ø±Þ¾÷ÀÚµéÀº ±×µéÀÇ Á¦Ç°À» ¿ÏÀü¹«°áÇÑ ÀÚ¹Ù ¹öÀüÀ¸·Î ¹Ù²ã¾ß¸¸ ÇÑ´Ù. ¹°·Ð ¹Ù²ÙÁö ¾Ê¾Æµµ »ó°ü¾ø°ÚÁö¸¸ ½ÃÀå¿¡¼­ »ì¾Æ³²À» ¼ö ¾øÀ» °ÍÀÌ´Ù. ¿Ö³ÄÇϸé CORBA Ç¥ÁØÀÌ ÀÚ¹ÙÀÇ ±â´ÉÀ» Á߽ɿ¡ ³õ°í Àֱ⠶§¹®ÀÌ´Ù. ƯÈ÷, CORBAÀÇ °æ¿ì 700°³°¡ ³Ñ´Â ȸ»çµéÀÌ Âü¿©ÇÏ¿© Ç¥ÁØÀ» ¸¸µéÁö¸¸ ÀÚ¹ÙÀÇ °æ¿ì ¼±ÀÇ µ¶Á¡ÀûÀÎ ±â¼úÀ̱⠶§¹®¿¡ ½ÇÁ¦ ¸ðµç ÇÕÀÇ µµÃâ°úÁ¤¿¡¼­ ¸¹Àº ¹®Á¦°¡ ¹ß»ýÇÒ ¼ö ÀÖ´Ù. ÀÌ·¯ÇÑ ¹®Á¦Á¡µéÀº ±âÁ¸ÀÇ ºÐ»ê °´Ã¼½ÃÀåÀ» ¶Ç´Ù½Ã ¼¼ºÐÈ­ÇÒ À§ÇèÀÌ ¹ß»ýÇÑ´Ù. ½ÇÁ¦ ÀÌ·¯ÇÑ »óȲÀ» ¿ì·ÁÇÏ´Â ¸ñ¼Ò¸®´Â ³ô´Ù. OrbixÀ» °³¹ßÇÑ ¾ÆÀÌ¿À³ª»çÀÇ ±â¼ú´ã´çÀÚÀÎ Annrai O'Toole´Â ÇâÈÄ CORBA ½ÃÀå Àº C++À» Áß½ÉÀ¸·Î ÇÑ ¸®°Å½Ã ½Ã½ºÅÛ ÅëÇÕ ½ÃÀå°ú ÀÚ¹Ù¸¦ ±â¹ÝÀ¸·Î ÇÑ »õ·Î¿î ½Ã½ºÅÛ ±¸Ãà ½ÃÀåÀ¸·Î ¾çºÐµÉ °ÍÀ¸·Î Àü¸ÁÇß´Ù. ÇÊÀÚÀÇ °æ¿ì, ÀÌ·¯ÇÑ Àǰ߿¡ ÀüÀûÀ¸·Î µ¿ÀÇÇÑ´Ù. ±×·¯³ª ¶Ç Çϳª »ý°¢ÇØ¾ß ÇÒ Á¡Àº ¸¶ÀÌÅ©·Î¼ÒÇÁÆ®ÀÇ ÇຸÀÌ´Ù. ¸¶ÀÌÅ©·Î¼ÒÇÁÆ®´Â À©µµ¿ìNT¸¦ ±â¹ÝÀ¸·Î ÇÑ ¼Ö·ç¼ÇÀ» °è¼Ó È®ÀåÇϰí ÀÖÀ¸¸ç Ç¥¸éÀûÀ¸·Î´Â ¸¹Àº ¼º°ú¸¦ º¸À̰í ÀÖ´Ù. ºñ·Ï ¸¶ÀÌÅ©·Î¼ÒÇÁÆ®ÀÇ DCOM±â¹ÝÀÇ ActiveX°¡ À©µµ¿ì ȯ°æ¿¡ ±¹ÇÑµÈ ±â¼úÀÌÇÏ´Â Á¦¾àÀ» °®°í ÀÖÁö¸¸ À©µµ¿ìNTÀÇ È®»êÀº ºÐ»ê °´Ã¼ ½ÃÀå¿¡ ¸¹Àº ¿µÇâÀ» ¹ÌÄ¥ °ÍÀÌ´Ù. ¶Ç Çϳª Àç¹Ì³­ ½Ã³ª¸®¿À´Â ÇâÈÄ ¸¶ÀÌÅ©·Î¼ÒÇÁÆ®°¡ Áö±Ýº¸´Ù ´õ ±Þ¼ÓÈ÷ ÀÚ¹Ù ±â¼úÀ» ä¿ëÇÏ¿© ¼±ÀÇ ÀÚ¹Ù°¡ ¾Æ´Ï¶ó ¸¶ÀÌÅ©·Î¼ÒÇÁÆ®ÀÇ ÀÚ¹Ù¸¦ ¹ßÇ¥ÇÑ´Ù¸é ¶Ç ´Ù¸¥ »óȲÀÌ ¹ß»ýÇÒ °ÍÀÌ´Ù. Áö ±Ý±îÁö ¸¶ÀÌÅ©·Î¼ÒÇÁÆ®ÀÇ »ç¾÷ ½ºÅ¸ÀÏÀ» º¼ ¶§ ÀÚ¹ÙÀÇ ½ÃÀåÀÇ ¾ÈÁ¤±â¸¦ Á¢¾îµé¼ö·Ï À©µµ¿ì¸¦ ±â¹ÝÀ¸·Î ÇÑ ¸¶ÀÌÅ©·Î¼ÒÇÁÆ®ÀÇ ÀÚ¹Ù ½Ã³ª¸®¿À´Â ´õ¿í °¡´É¼ºÀÌ ³ôÀ» ¼ö ÀÖ´Ù.

5¸·À» ¸¶Ä¡¸ç

CORBA´Â ½Ã½ºÅÛ ÅëÇÕ ±â¼ú·Î¼­ ±âÁ¸ÀÇ ´Ù¸¥ ±â¼úµéÀ» ¼Õ½±°Ô ÅëÇÕÇÏ°Ô ÇØ ÁØ´Ù. ½ÇÁ¦ CORBA¸¦ ¸¶ÀÌÅ©·Î¼ÒÇÁÆ®ÀÇ COM/DCOM ½Ã½ºÅÛ°ú ÅëÇÕÇÒ ¼ö ÀÖÀ¸¸ç ¼±¼ÒÇÁÆ®ÀÇ ÀÚ¹Ù ¾ð¾î, ±×¸®°í ÀÎÅͳÝÀÇ ÇÙ½É ¼­ºñ½ºÀÎ WWW°ú ÅëÇÕÇÒ ¼ö ÀÖ´Ù.

ƯÈ÷, CORBA¿Í WWW, ÀÚ¹ÙÀÇ ÅëÇÕÀº Object WebÀ̶õ »õ·Î¿î °³¹ß ȯ°æÀ» Á¦°øÇØÁÖ°í ÀÖ´Ù. Object WebÀº CORBA°¡ Á¦°øÇÏ´Â ½Ã½ºÅÛ ÅëÇÕ ±â¼ú°ú ÀÚ¹Ù°¡ Á¦°øÇÏ´Â ¸ðºô ÄÚµåȯ°æ, ±×¸®°í WWW°¡ Á¦°øÇÏ´Â °­°ÇÇÑ Åë½Å ȯ°æÀ» Á¦°øÇØ ÁØ´Ù. ¿ì¸®´Â ÀÌ Åë½Å ȯ°æÀ§¿¡ ´ë±Ô¸ðÀÇ °­°ÇÇÑ ½Ã½ºÅÛÀ» ±¸ÃàÇÒ ¼ö ÀÖ´Ù.

[ ´ÙÀ½ | ÀÌÀü ]