1-1.ÀÚ¹Ù °³·Ð

ÀÚ¹Ù ¼Ò°³

ÇÁ·Î±×·¡¹Ö ¾ð¾î¶õ ±â°è¿¡°Ô ¸í·ÉÀ» ³»¸®´Â Åë½Å ¼ö´ÜÀÌ´Ù. ÃÖÃÊ¿¡´Â Àú±ÞÀÇ ±â°è¾î¸¦ »ç¿ëÇßÁö¸¸ ÀÌÈÄ ¾î¼Àºí¸®¸¦ °ÅÃÄ º£ÀÌÁ÷, ÆĽºÄ®, C/C++ °°Àº °í±Þ ¾ð¾î·Î ¹ßÀüÇØ ¿Ô´Ù. ÀÚ¹Ùµµ ¼ö¸¹Àº ¾ð¾îÁßÀÇ ÇϳªÀÌµÇ ºñ±³Àû ÃÖ±Ù¿¡ ¹ßÇ¥µÈ ÃֽŠ¾ð¾îÀÌ´Ù. »ç½Ç ÀÌ °­Á´ C++À» ¾Æ´Â »ç¶÷À» ´ë»óÀ¸·Î ¾²¿©Áø °ÍÀ̹ǷΠ¾ð¾î¿¡ ´ëÇÑ ÀÌ·± °³·ÐÀûÀÎ ¾ê±â´Â ´õ ÀÌ»ó ÇÒ ÇÊ¿ä°¡ ¾øÀ» °ÍÀÌ´Ù. µµÀԺο¡¼­ºÎÅÍ ¹Ù·Î ÀÚ¹Ù¸¦ ¼Ò°³Çϱâ´Â ¾î»öÇؼ­ ¹º°¡ °¡º­¿î ³»¿ëÀ¸·Î ½ÃÀÛÀ» ÇØ ºÃÀ» »ÓÀÌ´Ù.

ÀÚ¹Ù°¡ ±âÁ¸ ¾ð¾î¿Í ´Ù¸¥ °¡Àå Å« Â÷ÀÌÁ¡Àº Áß°£ Äڵ带 »ç¿ëÇÑ´Ù´Â Á¡ÀÌ´Ù. ³×ÀÌƼºê ¾ð¾îÀÇ °á°ú¹°Àº CPU°¡ ¹Ù·Î Çؼ®ÇÒ ¼ö ÀÖ´Â ±â°è¾îÀÌÁö¸¸ ÀÚ¹Ù´Â Áß°£ ¾ð¾îÀÎ ¹ÙÀÌÆ® Äڵ带 »ý¼ºÇØ ³½´Ù. ¹°·Ð ½ÇÇàÇϱâ À§Çؼ­ °á±¹Àº ±â°è¾î·Î ¹Ù²î¾î¾ß ÇÏÁö¸¸ ÄÄÆÄÀÏ Å¸ÀÓÀÌ ¾Æ´Ï¶ó ·±Å¸ÀÓ¿¡ ÀÚ¹Ù °¡»ó ¸Ó½ÅÀÇ JIT(Just In Time) ÄÄÆÄÀÏ·¯¿¡ ÀÇÇØ ±â°è¾î·Î ¹ø¿ªµÈ´Ù.

±×·¡¼­ ÀÚ¹Ù´Â Ç÷§Æû¿¡ µ¶¸³ÀûÀÌ´Ù. ÀÚ¹ÙÀÇ ¹ÙÀÌÆ® ÄÚµå´Â Ç¥ÁØÈ­µÇ¾î ÀÖµÇ ´ë½Å Ç÷§Æû¿¡ Á¾¼ÓÀûÀÎ ÀÚ¹Ù °¡»ó ¸Ó½Å(JVM:Java Virtual Machine)ÀÌ Á¦°øµÇ¾î Ç÷§Æûº° Â÷ÀÌÁ¡À» ±Øº¹ÇÑ´Ù. Àڹٴ ƯÁ¤ Ç÷§Æû¿¡¼­ Á÷Á¢ÀûÀ¸·Î ½ÇÇàµÇ´Â °ÍÀÌ ¾Æ´Ï¶ó ÀÚ¹Ù °¡»ó ¸Ó½Å¿¡¼­ ½ÇÇàµÇ¹Ç·Î Çѹø ¸¸µç Äڵ带 ¾î´À °÷¿¡¼­³ª »ç¿ëÇÒ ¼ö ÀÖ´Ù. ÀÚ¹ÙÀÇ ÀÌ·± Ư¼ºÀ» WORA(Write Once Run Anywhere)¶ó°í Çϴµ¥ Ç÷§Æû¿¡ µû¶ó ÀÏÀÏÀÌ Äڵ带 ÀÛ¼ºÇÒ ÇÊ¿ä°¡ ¾ø¾î »ý»ê¼ºÀÇ Çâ»ó¿¡ »ó´çÇÑ ±â¿©¸¦ ÇÑ´Ù.

ÀÚ¹Ùº¸´Ù Á¶±Ý ´õ ´Ê°Ô µîÀåÇÑ ´å³Ýµµ Ç÷§Æû¿¡ µ¶¸³ÀûÀÌ´Ù. ´å³ÝÀº ¿©±â¿¡ ÇÑ ¼ú ´õ ¶°¼­ ¾ð¾î µ¶¸³¼º±îÁö Á¦°øÇÑ´Ù. ´å³ÝÀÇ ±âº» ¾ð¾îÀÎ C#µµ ÀüüÀûÀÎ ±¸Á¶³ª °³³äÀÌ ÀÚ¹Ù¿Í À¯»çÇؼ­ ÀÚ¹Ù¸¦ º£²¼´Ù´Â ÀÇȤÀ» »ç±âµµ ÇÑ´Ù. ÀÌ µÎ ¾ð¾î°¡ Áö±ÝÀº °¡Àå ´ëÁßÀûÀÌ°í À¯¸ÁÇÑ ¾ð¾î·Î °¢±¤À» ¹Þ°í ÀÖÀ¸¸ç ¼±ÀÇÀÇ °æÀïÀ» ÆîÄ¡°í ÀÖ´Â »óÅÂÀÌ´Ù.

Áß°£ ÄÚµå´Â Ç÷§Æû µ¶¸³¼ºÀ» È®º¸ÇÏÁö¸¸ ´ë½Å ´À¸®´Ù´Â Ä¡¸íÀûÀÎ ¾àÁ¡ÀÌ ÀÖ´Ù. ¾Æ¹«¸® ÃÖÀûÈ­¸¦ Çصµ CPU°¡ Çϵå¿þ¾î Â÷¿ø¿¡¼­ ½ÇÇàÇÏ´Â ³×ÀÌƼºê Äڵ庸´Ù ºü¸¦ ¼ö´Â ¾ø´Ù. Å×½ºÆ® ¹æ¹ý¿¡ µû¶ó ¼ÓµµÂ÷´Â ´Þ¶óÁöÁö¸¸ ¼ø¼öÇÑ ÄÚµåÀÇ ½ÇÇà ¼Óµµ¸¸À» ÃøÁ¤ÇØ º¸¸é ´ë·« 2.5¹è Á¤µµ ´õ ´À¸®´Ù. ±×·¡¼­ ÀÚ¹ÙÀÇ È°¿ëó¿¡´Â ¾à°£ÀÇ Á¦¾àÀÌ µû¸¦ ¼ö¹Û¿¡ ¾ø´Âµ¥ µ¥½ºÅ©Å¾ ÀÀ¿ë ÇÁ·Î±×·¥À̳ª °ÔÀÓÀ» ÀÚ¹Ù·Î ¸¸µé±â¿¡´Â ÀûÇÕÇÏÁö ¾Ê´Ù.

±×·³¿¡µµ ºÒ±¸ÇÏ°í ÀÚ¹Ù°¡ ¼º°øÇÑ ÀÌÀ¯´Â Çϵå¿þ¾î ȯ°æÀÇ ºñ¾àÀûÀÎ ¹ßÀüÀ¸·Î ¼ÒÇÁÆ®¿þ¾îÀÇ ´À¸° ¼Óµµ¸¦ ÃæºÐÈ÷ µÞ¹ÞħÇÒ ¼ö Àֱ⠶§¹®ÀÌ´Ù. ÇöÀç´Â ÀΰǺñ°¡ Çϵå¿þ¾î ºñ¿ëº¸´Ù ÈξÀ ´õ ºñ½Î¼­ ÃÖÀûÈ­µÈ ¼ÒÇÁÆ®¿þ¾î¸¦ ¸¸µé±â À§ÇØ µÎ ¹èÀÇ ÀηÂÀ» ÅõÀÔÇÏ´Â °Íº¸´Ù µÎ ¹è ´õ ºü¸¥ Çϵå¿þ¾î¸¦ ÅõÀÔÇÏ´Â °ÍÀÌ ´õ °æÁ¦ÀûÀÌ´Ù. ¶ÇÇÑ ÇÁ·ÎÁ§Æ®ÀÇ ±Ô¸ð°¡ ÃÊ´ëÇüÀ¸·Î Ä¿Áü¿¡ µû¶ó ÀÌÀüÀÇ ¹æ¹ýÀ¸·Î´Â µµÀúÈ÷ »ý»ê¼º°ú ¾ÈÀü¼ºÀ» È®º¸Çϱ⠾î·Á¿öÁ³´Ù. ½ÇÇà ¼Óµµ°¡ Á¶±Ý ´À¸®´õ¶óµµ Æ°Æ°ÇÏ°íµµ È®Àå °¡´ÉÇÑ ±¸Á¶¸¦ ÃÖ´ëÇÑ ½Å¼ÓÇÏ°Ô ¸¸µé¾î ³»´Â °ÍÀÌ ´õ Áß¿äÇØÁ³´Ù.

Çѹø Àß ¸¸µé¾î ³õÀº Äڵ带 ¸Å¹ø »õ·Î ¸¸µéÁö ¾Ê°í ÀÓÀÇÀÇ ÇÁ·ÎÁ§Æ®¿¡ µÎ·ç »ç¿ëÇÒ ¼ö ÀÖ´Â Àç»ç¿ë¼ºµµ Áß¿äÇÑ ÀåÁ¡ÀÌ´Ù. ÀÚ¹Ù´Â °´Ã¼ ÁöÇâÀÇ Àç»ç¿ë¼º¿¡ Ç÷§Æû µ¶¸³¼º±îÁö °®Ãß¾úÀ¸¹Ç·Î ¾î¶² ¾ð¾îº¸´Ùµµ Àç»ç¿ë¼ºÀÌ ¶Ù¾î³ª´Ù. ÀÚ¹ÙÀÇ ÇÁ·¹ÀÓ¿öÅ©´Â ½Å¼ÓÇÑ °³¹ß, ¾ÈÁ¤ÀûÀÎ ±â´É, ÀçÈ°¿ë¼ºÀ» Àß ÃæÁ·ÇÏ¿© ÆÀ ÇÁ·ÎÁ§Æ®¿¡ ÀûÇÕÇÏ´Ù.

ÀÚ¹ÙÀÇ ¿ª»ç

ÀÚ¹Ù°¡ ÃÖÃÊ·Î µîÀåÇÑ ½Ã±â´Â 1991³âÀ¸·Î °Å½½·¯ ¿Ã¶ó°¡¹Ç·Î ÀÚ¹ÙÀÇ ¿ª»çµµ ÀÌÁ¦ °ÅÀÇ 20³âÀÌ µÇ¾î °£´Ù. ¼± ¸¶ÀÌÅ©·Î½ÃÆ®ÅÛÁîÀÇ Á¦ÀÓ½º °í½½¸µÀÌ °¡Àü Á¦Ç°¿ë ¼ÒÇÁÆ®¿þ¾î ÀÛ¼ºÀ» À§ÇÑ ¾ð¾î·Î µðÀÚÀÎÇß´Ù. ´ç½ÃÀÇ °¡Àå ´ëÁßÀûÀÎ ¾ð¾îÀÎ C++Àº ¼Ò½º Â÷¿øÀÇ À̽ļºÀº ÀÖÁö¸¸ ÀÌÁø Â÷¿øÀÇ È£È¯¼ºÀÌ ¾ø¾î ÀûÇÕÄ¡ ¾Ê¾Ò´Ù. ¶ÇÇÑ ´ÙÁß »ó¼ÓÀ̳ª ¸Þ¸ð¸® °ü¸® ±â´ÉÀÌ ³Ê¹« º¹ÀâÇÏ¿© °¡Àü Á¦Ç°¿¡ ¾²±â¿¡´Â ³Ê¹« °Å´ëÇßÀ¸¸ç ´Ù¾çÇÑ À̱âÁ¾ÀÇ ½Ã½ºÅÛÀÌ ³×Æ®¿öÅ©·Î ¿¬°áµÈ ºÐ»ê ȯ°æ¿¡´Â »ç¿ëÇÒ ¼ö ¾ø¾ú´Ù.

±×·¡¼­ °í½½¸µÀº ¾Æ¿¹ Oak¶ó´Â ¾ð¾î¸¦ »õ·Î ¸¸µé¾ú´Ù. ±× ´ç½ÃÀÇ °¡Àå ´ëÁßÀûÀÎ ¾ð¾îÀÎ C++·ÎºÎÅÍ ¸¹Àº ºÎºÐÀ» ÂüÁ¶ÇÏ¿© C++°ú ±âº»ÀûÀÎ ¹®¹ý ü°è°¡ ºñ½ÁÇÏ´Ù. ƯÈ÷ ¿¬»êÀÚ¿Í Á¦¾î¹®Àº C++ÀÇ ±×°Í°ú °ÅÀÇ 90% ÀÌ»ó ±¸¹®ÀÌ °°´Ù. ±×·¯³ª Ŭ·¡½º¿Í °ü·ÃµÈ ¹®¹ýÀº C++°ú ´Ù¼Ò ´Ù¸¥µ¥ ÀÌ ºÎºÐÀº Á¤Åë °´Ã¼ ÁöÇâ ¾ð¾îÀÎ ½º¸ôÅäÅ©(Smalltalk)¸¦ ÂüÁ¶Çß´Ù. Áï, ÀÚ¹Ù´Â C++°ú ½º¸ôÅäÅ©ÀÇ ÀåÁ¡À» ÃëÇÕÇؼ­ ¸¸µé¾îÁø ¾ð¾î¶ó°í ÇÒ ¼ö ÀÖ´Ù.

Oak´Â ÀÌÈÄ ÈÞ´ë¿ë ÄÄÇ»ÅÍÀÎ *7À» °³¹ßÇÏ´Â ±×¸° ÇÁ·ÎÁ§Æ®¿¡ È°¿ëµÇ¾ú´Ù. ºñ·Ï ÀÌ ÇÁ·ÎÁ§Æ® ÀÚü´Â »ó¿ëÈ­±îÁö °¡Áö ¸øÇÏ°í ½ÇÆÐÇßÁö¸¸ ÀÚ¹ÙÀÇ °¡´É¼ºÀ» È®ÀÎÇß´Ù´Â Á¡¿¡¼­ ¿ª»çÀûÀÎ Àǹ̰¡ ÀÖ´Ù. ÀÌÈÄ Oak´Â »óÇ¥±Ç ¹®Á¦·Î ÀÎÇØ ÀÚ¹Ù·Î À̸§À» ¹Ù²Û´Ù. ÀÚ¹Ù´Â Ä¿ÇÇ À̸§Àε¥ ¾Æħ¿¡ ÀϾ ¸¶½Ã´Â ¸ð´× Ä¿ÇÇó·³ ÀÎÅͳݿ¡ È°·ÂÀ» ºÒ¾î ³ÖÀÚ´Â ¶æÀ̶ó°í ÇÑ´Ù.

ÀÚ¹Ù°¡ º»°ÝÀûÀ¸·Î ¼¼»ó¿¡ ¾Ë·ÁÁø °è±â´Â ÀÎÅͳÝÀÇ Æø¹ßÀûÀÎ ¼ºÀåÀÌ´Ù. ´Ù¾çÇÑ À̱âÁ¾ÀÇ ÄÄÇ»ÅÍ°¡ Á¢¼ÓÇÏ´Â À¥À̾߸»·Î ÀÚ¹ÙÀÇ ÃÖÀû È°¿ëó¿´À¸¸ç °í¾¾ ¾ÆÀú¾¾´Â ÀÚ¹Ù¸¦ À¥¿¡ Àû¿ëÇÏ¿´´Ù.  ÀÚ¹Ù·Î ÇÖÀÚ¹Ù(HotJava)¶ó´Â À¥ ºê¶ó¿ìÀú¸¦ ¹ßÇ¥Çߴµ¥ ÃÖÃÊÀÇ ÀÚ¹Ù ÀÀ¿ë ÇÁ·Î±×·¥ÀÎ ÇÖÀÚ¹Ù´Â ¾ð¾î·Î¼­ÀÇ ÀÚ¹Ù¸¦ °ËÁõÇÏ´Â ÀÛÇ°À̾ú´Ù. 1995³â 5¿ù SunWorld ÄÁÆÛ·±½º¿¡¼­ ÀÚ¹Ù´Â °ø½ÄÀûÀ¸·Î ¼¼»ó¿¡ ¹ßÇ¥µÇ¾ú´Ù.

¹ßÇ¥ Á÷ÈĺÎÅÍ ¸¹Àº »ç¶÷µéÀÌ ÀÚ¹ÙÀÇ °¡´É¼ºÀ» ÀνÄÇÏ°í °ü½ÉÀ» °¡Áö±â ½ÃÀÛÇß´Ù. ±¹³»ÀÇ ¸¹Àº °³¹ßÀڵ鵵 ÀÚ¹ÙÀÇ Ã¶Çп¡ ¸Å·áµÇ¾î ÀÚ¹Ù¸¦ ¹è¿ì±â ½ÃÀÛÇß´Ù. ´ç½Ã ³»°¡ ´Ù´Ï´ø ȸ»çÀÇ ¸î¸î Á÷¿øµéÀº ±×µ¿¾È ½á ¿À´ø C++À» Çå½Å¦ó·³ ¹ö¸®°í ÀÚ¹Ù¿¡ ¿Â¸öÀ» ³» ´øÁö´õ´Ï ¾ÆÁ÷±îÁöµµ ¿À·ÎÁö ÀÚ¹Ù¸¸ ÇÏ°í ÀÖ´Ù. À̸¥¹Ù ÀÚ¹Ù ¿­Ç³ÀÌ ½ÃÀÛµÈ °ÍÀε¥ ´ç½ÃÀÇ »óȲÀº Á¤¸» ´ë´ÜÇß¾ú´Ù.

ÀÚ¹ÙÀÇ ¾ÖÇø´¿¡ ÀÇÇØ À¥Àº ´õ ÀÌ»ó Á¤ÀûÀÎ Á¤º¸¸¸ º¸¿©ÁÖ´Â °ÍÀÌ ¾Æ´Ñ µ¿ÀûÀÎ ÆäÀÌÁö¸¦ ¸¸µé¾î ³Â´ø °ÍÀÌ´Ù. ´ç½Ã °¡Àå ´ëÁßÀûÀÎ À¥ ºê¶ó¿ìÀúÀÎ ³Ý½ºÄÉÀÌÇÁ 2.0ÀÌ ÀÚ¹Ù¸¦ Áö¿øÇÔÀ¸·Î½á Å« Áö¿ø±ºÀ» ¾ò¾ú´Ù. ±ÛÀÚ¿Í ±×¸²¸¸ º¸ÀÌ´ø À¥ÀÌ ¿òÁ÷À̱⠽ÃÀÛÇßÀ¸¸ç »ç¿ëÀÚÀÇ ¾×¼Ç¿¡ ¹ÝÀÀÇÒ ¼ö ÀÖ°Ô µÇ¾ú´Ù. ÀÚ¹Ù ¾ÖÇø´¿¡ ´ëÇÑ ´ç½Ã »ç¶÷µéÀÇ ¹ÝÀÀÀº °¡È÷ °¨µ¿ ±× ÀÚü¿´´Ù. ÀÌÈÄ ÀÚ¹Ù ¾ÖÇø´Àº Ç÷¡½Ã¶ó´Â ´õ °­·ÂÇÑ ¼Ö·ç¼Ç¿¡ ¿ÏÀüÈ÷ ¹âÇô ¹ö·ÈÁö¸¸ ¾î¶µç ¾ÖÇø´Àº ÀÚ¹Ù¸¦ ªÀº ±â°£¿¡ ´ëÁßÈ­½ÃÅ°´Âµ¥ Å« ±â¿©¸¦ Çß´Ù.

ÀÚ¹Ù °³¹ßÅøÀº °³¹ß»çÀÎ ½ãÀÌ JDK(Java Development Kit)¶ó´Â À̸§À¸·Î ¹«·á ¹èÆ÷Çϴµ¥ ÃÖÃÊÀÇ ¹öÀüÀº ´ç±Ù 1.0ÀÌ´Ù. JDK´Â ¸í·ÉÇà¿¡¼­ ÄÄÆÄÀÏÀ» ÇÏ´Â ´Ù¼Ò ºÒÆíÇÑ ¹æ½ÄÀ» »ç¿ëÇϸç ÃֽŠ¹öÀüµµ ¿©ÀüÈ÷ ¸í·ÉÇà ¹æ½ÄÀ» °í¼öÇÑ´Ù. ¹°·Ð ¾ó¸¶ Áö³ªÁö ¾Ê¾Æ ºñÁÖ¾ó Ä«Æä, Æ÷¸£Å×, ÀÌŬ¸³½º°°Àº ±×·¡ÇÈ È¯°æÀÇ Æí¸®ÇÑ °³¹ßÅøÀÌ ¸¹ÀÌ ¹ßÇ¥µÇ¾ú´Ù.

JDK´Â ±×µ¿¾È ²ÙÁØÈ÷ ¾÷±×·¹À̵åµÇ¾î ÀÌ °­Á¸¦ ¾²´Â ½ÃÁ¡(2009³â 5¿ù)¿¡¼­ ÃֽŠ¹öÀüÀº 1.6.13ÀÌ´Ù. ¹°·Ð ¿©·¯ºÐµéÀÌ ÀÌ °­Á¸¦ ÀÐÀ» ¶§´Â ´õ ÃֽŠ¹öÀüÀÌ ¹ßÇ¥µÇ¾î ÀÖÀ» °ÍÀÌ´Ù. JDKÀÇ ¹öÀü°ú´Â º°µµ·Î ÀÚ¹Ù ÀÚüÀÇ ¹öÀüÀ» µû·Î ¸Þ±â±âµµ Çϴµ¥ JDK 1.2 ¹öÀü¿¡¼­ ´ë±Ô¸ðÀÇ ±â´É Ãß°¡°¡ ÀÖ¾î ÀÌÈÄÀÇ ÀÚ¹Ù¸¦ Java2¶ó°í ºÎ¸£±âµµ ÇÑ´Ù. ±×·¯³ª 1.3, 1.4 ¹öÀü¿¡ ´ëÇؼ­´Â Java3, Java4¶ó°í ºÎ¸£Áö ¾ÊÀ¸¸ç ¿©ÀüÈ÷ Java2¶ó°í ºÎ¸¥´Ù.

ÀÌÈÄ JDK 1.5¿¡¼­ ¶Ç ´Ù½Ã ´ë´ëÀûÀÎ ¹®¹ýÀÌ Ãß°¡µÇ¾î ÀÌ ¹öÀü ÀÌÈĸ¦ Java 5¶ó°í Çϸç Java 5.0À̶ó°íµµ ÇÑ´Ù. °°Àº ½ÄÀ¸·Î JDK 1.6Àº Java 6¶ó°í ºÎ¸£´Âµ¥ ¹öÀü ¹øÈ£¿¡ ÀÏ°ü¼ºÀÌ ¾ø¾î ´Ù¼Ò Çò°¥¸®´Â ¸éÀÌ ÀÖ´Ù. ¹öÀüÀ» À̵ûÀ§·Î ÀÏ°ü¼º¾ø°Ô ºÙÀÌ°Ô µÈ ¿øÀÎÀº ¼øÀüÈ÷ ¸¶ÄÉÆà ¶§¹®À̶ó°í ÇÑ´Ù. 1.2º¸´Ù´Â 2.0ÀÌ ¿ØÁö ´õ ÀÖ¾î º¸ÀÌ´Ï±î ¸»ÀÌ´Ù.

ÀÚ¹ÙÀÇ Æ¯Â¡

ÀÚ¹Ù´Â ±âÁ¸ÀÇ ³×ÀÌƼºê ¾ð¾îµé°ú´Â ¸¹Àº ¸é¿¡¼­ Ʋ¸®´Ù. Å« Â÷ÀÌÁ¡µé¸¸ °£·«ÇÏ°Ô ¿ä¾àÇØ º¸¸é ´ÙÀ½°ú °°´Ù.

 

¨ç ÀÚ¹ÙÀÇ °¡Àå Å« Ư¡Àº Ç÷§Æû¿¡ µ¶¸³ÀûÀ̶ó´Â Á¡ÀÌ´Ù. Áß°£ Äڵ带 »ç¿ëÇÏ´Â ¹æ½ÄÀ¸·Î ¹°¸®ÀûÀÎ Ç÷§ÆûÀÇ ¿µÇâÀ» ¹ÞÁö ¾Ê¾Æ¼­ È°¿ë¼ºÀÌ ³ô´Ù. ±×·¯³ª ¾à°£ÀÇ ¼º´É ÀúÇÏ°¡ ÀÖ°í ƯÁ¤ Ç÷§ÆûÀÇ °íÀ¯ÇÑ ±â´ÉÀ» È°¿ëÇϱ⠾î·Æ´Ù´Â ¹Ý´ë ±ÞºÎ°¡ ÀÖ´Ù.

¨è C++·ÎºÎÅÍ Á÷Á¢ÀûÀÎ ¿µÇâÀ» ¹Þ¾ÒÁö¸¸ Àß »ç¿ëÇÏÁö ¾Ê´Â ´ÙÁß »ó¼ÓÀ̳ª ¿¬»êÀÚ ÀçÁ¤ÀÇ °°Àº ¹®¹ýÀ» Á¦°ÅÇÏ¿© ¹®¹ý ü°è°¡ ´Ü¼ø ¸í·áÇÏ´Ù. ¹®¹ýÀÌ ´Ü¼øÇØÁü¿¡ µû¶ó ÈξÀ ´õ ¹è¿ì±â ½¬¿öÁ³°í »ç¿ëÇϱ⵵ ½¬¿ö ½Ç¼öÀÇ À§ÇèÀÌ ³·´Ù.

¨é °¡ºñÁö Ä÷ºÅÍ°¡ ÀÚµ¿À¸·Î ¸Þ¸ð¸®¸¦ °ü¸®ÇÑ´Ù. ÇҴ縸 ÇÏ°í »ç¿ëÇÏ´Ù°¡ ±×³É ³»¹ö·Á µÎ¸é Àû´çÇÑ ¶§¿¡ ¾²·¹±â ¼öÁýµÈ´Ù. ±×·¡¼­ ¸Þ¸ð¸® ´©¼öÀÇ À§ÇèÀÌ ¾ø°í °´Ã¼¸¦ »ç¿ëÇϱⰡ Æí¸®ÇÏ¸ç ½Å·Ú¼ºÀ̳ª ¾ÈÀü¼ºµµ °³¼±µÇ¾ú´Ù.

 

C++ °³¹ßÀÚÀÇ ÀÔÀå¿¡¼­ º¼ ¶§ °¡ºñÁö Ä÷ºÅÍ´Â Á¤¸» ºÎ·¯¿î ±â´ÉÀÌ´Ù. ¸Þ¸ð¸® ´©¼ö´Â ÀÏÁ¾ÀÇ ¹ö±×À̹ǷΠ¹Ýµå½Ã ÇØ°áÇØ¾ß Çϴµ¥ Á¤¸» Àâ±â Èûµé´Ù. ¸Þ¸ð¸® °ü¸®¿¡ ÁöÄ£ C++ °³¹ßÀڵ鿡°Ô °¡ºñÁö Ä÷ºÅÍ´Â Á¤¸» ¸Å·ÂÀûÀÎ ±â´ÉÀ̾úÀ¸¸ç C++ °³¹ßÀÚ°¡ ÀÚ¹Ù·Î ÀüÇâÇÑ ÁÖ¿äÇÑ ÀÌÀ¯ Áß ÇϳªÀ̱⵵ ÇÏ´Ù. ´ÙÀ½Àº C++ ¾ð¾î¿Í ÀÚ¹Ù¸¦ Á÷Á¢ÀûÀ¸·Î ºñ±³ÇØ º¸ÀÚ.

 

¡á ÀÚ¹Ù´Â ¸ðµç °ÍÀÌ Å¬·¡½º¿¡ ¼ÓÇØ¾ß Çϸç Àü¿ª º¯¼ö¸¦ Çã¿ëÇÏÁö ¾Ê´Â ¿ÏÀüÇÑ °´Ã¼ ÁöÇâ ¾ð¾îÀÌ´Ù. ÀÌ¿¡ ºñÇØ C++Àº ±¸Á¶Àû °³¹ß ±â¹ýµµ µ¿½Ã¿¡ Áö¿øÇϴ ȥÇÕÇü °´Ã¼ ÁöÇâ ¾ð¾îÀÌ´Ù.

¡á ¿©·¯°¡Áö º¹ÀâÇÑ ¹®Á¦¸¦ ¾ß±âÇÏ´Â ´ÙÁß »ó¼ÓÀ» Áö¿øÇÏÁö ¾Ê´Â´Ù. ´ë½Å ÀÎÅÍÆäÀ̽º¸¦ ÅëÇØ ´ÙÁß »ó¼Ó°ú À¯»çÇÑ È¿°ú¸¦ ³¾ ¼ö ÀÖ´Ù.

¡á ¿¬»êÀÚ ¿À¹ö·ÎµùÀ» Áö¿øÇÏÁö ¾Ê´Â´Ù. ¿¬»êÀÚ ¿À¹ö·Îµù ±â´É ÀÚü´Â ½Ç¿ëÀûÀÌÁö¸¸ À߸ø »ç¿ëÇÏ¸é ºÎÀÛ¿ëÀÌ ¹ß»ýÇÒ ¼ÒÁö°¡ ¸¹´Ù.

¡á ±¸Á¶Ã¼¿Í °ø¿ëü¸¦ Áö¿øÇÏÁö ¾Ê´Â´Ù. ±¸Á¶Ã¼´Â ¾îÂ÷ÇÇ Å¬·¡½º¿Í °°À¸¹Ç·Î »ó°üÀÌ ¾øÁö¸¸ °ø¿ëü¸¦ Áö¿øÇÏÁö ¾Ê´Â °ÍÀº ´Ù¼Ò ¾Æ½±´Ù.

¡á ¾ð¾î Â÷¿ø¿¡¼­ ¸ÖƼ ½º·¹µå¸¦ Áö¿øÇÑ´Ù. ÀÚ¹Ù °¡»ó ¸Ó½ÅÀÌ ¹Ì´Ï Ç÷§ÆûÀ̱⠶§¹®¿¡ ¾ð¾î°¡ ½º·¹µå¸¦ Áö¿øÇÏ´Â °ÍÀÌ °¡´ÉÇÏ´Ù.

¡á µðÆúÆ® Àμö ±â´ÉÀ» Á¦°øÇÏÁö ¾Ê´Â´Ù. º°´Ù¸¥ ¸»½éÀÌ ¾ø´Â ±â´ÉÀε¥ ¿Ö Áö¿øÇÏÁö ¾Ê´ÂÁö ´Ù¼Ò ÀǾƽº·´´Ù. ¾Æ¸¶ ¹º°¡ ÀÌÀ¯°¡ ÀÖÀ» µíÇÏ´Ù.

 

C++¿¡ ºñÇØ ±â´É»ó Ãà¼ÒµÈ ºÎºÐÀÌ ¸¹´Ù. ¹°·Ð È®ÀåµÈ ºÎºÐµµ ¸¹´Ù. RTTI¸¦ ±âº»ÀûÀ¸·Î Áö¿øÇÏ¿© ŸÀÔ ¾ÈÁ¤ÀûÀÎ Äڵ带 ÀÛ¼ºÇÒ ¼ö ÀÖÀ¸¸ç ¾ÖÃÊ¿¡ ¿¹¿Ü ó¸® ±â´ÉÀÌ Æ÷ÇԵǾî À־ ¿¹¿Ü 󸮸¦ Çصµ ¼º´É»óÀÇ ºÒÀÌÀÍÀÌ ¾ø´Ù. ±âº»ÀûÀ¸·Î Á¦°øµÇ´Â ¶óÀ̺귯¸®´Â C++ÀÇ ¶óÀ̺귯¸®¿Í ºñ±³°¡ µÇÁö ¾ÊÀ» Á¤µµ·Î ´Ù¾çÇؼ­ ¿Ø¸¸ÇÑ ÃֽŠ±â´ÉÀº ¾ð¾î Â÷¿ø¿¡¼­ ´Ù Á¦°øµÈ´Ù.

±×·¯³ª C++ °³¹ßÀÚ ÀÔÀå¿¡¼­ ¾Æ½¬¿î ºÎºÐµµ ¸î°¡Áö ÀÖ¾ú´Ù. ¾Æ¸¶µµ »õ·Î¿î ¾ð¾î¿¡ Àͼ÷ÇÏÁö ¾Ê°Å³ª ´ëüµÇ´Â ¹æ¹ýÀ» ãÁö ¸øÇؼ­ ±×·¸°ÚÁö¸¸ ÁÖ°üÀûÀÎ °üÁ¡¿¡¼­ º¼ ¶§ ´ÙÀ½ µÎ °¡Áö°¡ Á¦ÀÏ ¾Æ½¬¿ü´Ù. ¾îµð±îÁö³ª ÀÚ¹Ù¸¦ ±íÀÌ ÀÖ°Ô ¿¬±¸ÇØ º¸Áö ¸øÇÑ Ãʺ¸ °³¹ßÀÚÀÇ °³ÀÎÀûÀÎ ÀÇ°ßÀÏ »ÓÀ̹ǷΠµýÁö¸¦ °ÉÁö´Â ¸»¾Æ Áֱ⠹ٶõ´Ù.

¿ì¼± Àüó¸® ¸í·ÉÀÌ ¾ø´Ù´Â °ÍÀÌ ¹«Ã´ ºÒÆíÇÏ´Ù. #defineÀÇ ´Ü¼ø ¹«½ÄÇÔÀº ¸¹Àº ÇÔÁ¤ÀÌ ÀÖ±â´Â ÇÏÁö¸¸ Àß »ç¿ëÇÏ¸é ¾î·°Å³ª ¹«Ã´ Æí¸®ÇÑ °ÍÀº »ç½ÇÀÌ´Ù. Á¶°ÇºÎ ÄÄÆÄÀÏ ±â´ÉÀÌ ¾ø¾î °°Àº ¼Ò½º·Î ¿©·¯ ¹úÀÇ ÇÁ·ÎÁ§Æ®¸¦ ¼öÇàÇϴµ¥µµ »ó´çÈ÷ ºÒÆíÇß´Ù. ÀÚ¹Ù¿¡¼­´Â Á¶°Ç¹®À¸·Î ºñ½ÁÇÑ È¿°ú¸¦ ³¾ ¼ö´Â ÀÖÁö¸¸ Á¶°ÇºÎ ÄÄÆÄÀÏ°ú´Â ¼öÁØÀÌ ´Ù¸£´Ù.

¶Ç Àü¿ª º¯¼ö¸¦ ¾µ ¼ö ¾ø´Ù´Â Á¡µµ »ó´çÈ÷ ¸¶À½¿¡ µéÁö ¾Ê´Â´Ù. Àü¿ª º¯¼öÀÇ À§Ç輺ÀÌ¾ß ÀÍÈ÷ ¾Ë·ÁÁ® ÀÖÁö¸¸ ±×·¡µµ Àü¿ª º¯¼ö¸¦ ²À »ç¿ëÇØ¾ß ÇÒ °æ¿ì´Â ¹Ýµå½Ã ÀÖ´Ù. ÀÚ¹Ù¿¡¼­´Â ƯÁ¤ Ŭ·¡½º¿¡ static º¯¼ö³ª ¸Þ¼­µå¸¦ ¼±¾ðÇÔÀ¸·Î½á Àü¿ªÀÇ Èä³»¸¦ ³»´Âµ¥ ±×·± ¾î»öÇÑ ¹æ¹ýÀ» ¾µ ¹Ù¿¡¾ß ¾Æ¿¹ Àü¿ª º¯¼ö¸¦ Áö¿øÇÏ´Â °ÍÀÌ ´õ ±ò²ûÇÏÁö ¾ÊÀ»±î? ÀÚ¹Ù¸¦ óÀ½ ¹è¿ì´Â Ãʺ¸ÀÚ¿¡°Ô mainÀÌ ¿Ö staticÀ̾î¾ß ÇÏ´ÂÁö¸¦ Á¶¸®ÀÖ°Ô ¼³¸íÇÏ´Â °ÍÀº Á¤¸» ¾î·Á¿î ÀÏÀÌ´Ù.

¹®¹ý ü°è¸¸À¸·Î ºñ±³¸¦ ÇØ º»´Ù¸é C++Àº ÀÚ¹Ù¿¡ ºñÇØ È®½ÇÈ÷ ±¸´Ú´Ù¸® ¾ð¾îÀÓÀÌ ºÐ¸íÇÏ´Ù. ±×·¯³ª ¸·»ó ÀÚ¹Ù·Î ÇÁ·ÎÁ§Æ®¸¦ ÇØ º» °á°ú C++ÀÌ ±×¸®¿öÁö´Â ºÎºÐÀÌ ¿¹»ó¿Ü·Î ¸¹¾ÒÀ¸¸ç ÀÚ¹Ùµµ 20³âÀÇ ¼¼¿ùµ¿¾È ¸¹ÀÌ ´Ä¾ú´Ù´Â ´À³¦ÀÌ µé¾ú´Ù. ¾ð¾îÀÇ ½ºÆ常À¸·Î ¼±ÅÃÀ» Ç϶ó¸é °³ÀÎÀûÀ¸·Î C#ÀÇ ¹®¹ýÀÌ °¡Àå ¸¶À½¿¡ µç´Ù. ´ÙÀ½ µµÇ¥´Â 2009³â 5¿ù ÇöÀç ¾ð¾î Á¡À¯À²ÀÌ´Ù.

 

¼øÀ§

¾ð¾î

2009³â 5¿ù Á¡À¯À²

2008³â ¼øÀ§

1

ÀÚ¹Ù

19.7

1

2

C

15.8

2

3

C++

10.3

5

4

PHP

9.4

4

5

ºñÁÖ¾ó º£ÀÌÁ÷

8.2

3

6

ÆÄÀ̽ã

5.1

7

7

C#

4.3

8

8

ÀÚ¹Ù ½ºÅ©¸³Æ®

3.6

10

9

ÆÞ

3.4

6

10

µ¨ÆÄÀÌ

2.7

9

 

ÇöÀç ÀÚ¹ÙÀÇ ½ÃÀå Á¡À¯À²Àº ¸í½Ç°øÈ÷ 1À§ÀÌ¸ç °¡Àå ¸¹ÀÌ »ç¿ëµÇ´Â ¾ð¾îÀÌ´Ù. C°¡ ±× µÚ¸¦ ÀÕ°í ÀÖÀ¸¸ç C++ÀÇ Á¡À¯À²Àº µÎ ¾ð¾îº¸´Ù »ó´ëÀûÀ¸·Î ³·Àº ÆíÀÌ´Ù. C¿Í C++À» ÇϳªÀÇ ¾ð¾î·Î º¸¸é ÀÚ¹ÙÀÇ Á¡À¯À²º¸´Ù Á¶±Ý ´õ ³ôÀº ¼öÁØÀ̹ǷΠµÎ ¾ð¾îÀÇ Á¡À¯À²Àº °ÅÀÇ ºñ½ÁÇÏ´Ù°í º¼ ¼ö ÀÖ´Ù. ÀÌ¿¡ ºñÇØ ¸¶ÀÌÅ©·Î¼ÒÇÁÆ®°¡ µ·À» ÃÄ ¹ß¶ó ¶ç¿ö º¸·Á°í ¾Ö¸¦ ¾²°í ÀÖ´Â C#ÀÇ Á¡À¯À²Àº ¾ÆÁ÷µµ ±âÁ¸ ¾ð¾î¸¦ µû¶ó Àâ±â¿¡´Â ºÎÁ·ÇÑ ½ÇÁ¤ÀÌ´Ù.