¼Ò¼³°°Àº ÀÚ¹Ù 4ºÎ  Á¦20Àå J N I  20.2 ÀÚ¹Ù¿¡¼­ C »ç¿ëÇϱ⠠

 

20.2 ÀÚ¹Ù¿¡¼­ C »ç¿ëÇϱâ

 

À̹ø Àý¿¡¼­´Â C¾ð¾î·Î ÀÛ¼ºµÈ ÇÁ·Î±×·¥À» ÀÚ¹Ù¿¡¼­ ÀÌ¿ëÇÏ´Â ¹æ¹ýÀ» ¾Ë¾Æ º¸µµ·Ï ÇϰڽÀ´Ï´Ù. °¡Àå ±âº»ÀûÀÎ JNIÀÇ »ç¿ë¹ýÀÌ´Ï ÁÖÀÇ ±í°Ô »ìÆì º¸½Ã±â ¹Ù¶ø´Ï´Ù.

 

JNI´Â ÀÚ¹Ù°¡ ´Ù¸¥ ¾ð¾î·Î ¸¸µé¾îÁø ¾îÇø®ÄÉÀ̼ǰú »óÈ£ ÀÛ¿ëÇÒ ¼ö ÀÖ´Â ÀÎÅÍÆäÀ̽º¸¦ Á¦°øÇÑ´Ù°í Çß½À´Ï´Ù. ¿¹¸¦ µé¾î, C¾ð¾î·Î ¸¸µé¾îÁø ¾îÇø®ÄÉÀ̼ÇÀ» ÀÚ¹Ù¿¡¼­ »ç¿ëÇÑ´Ù°í °¡Á¤Çϸé, ±×¸² 20-1ó·³ JNI´Â C¾ð¾îÂÊ¿¡´Â ¹Ì¸® ¸¸µé¾îÁø ¶óÀ̺귯¸®µé°ú ÇÔ¼ö¸¦ Á¦°øÇϰí, ÀÚ¹Ù ÂÊ¿¡µµ ¹Ì¸® ¸¸µé¾îÁø Ŭ·¡½º¿Í ¿¹¿Üó¸® ±×¸®°í °¡»ó¸Ó½ÅÀÇ Æ¯¼º µîÀ» Á¦°øÇÕ´Ï´Ù.

 

±×¸² 20-1 ÀÚ¹Ù¿Í C¾ð¾î »çÀÌ¿¡¼­ ÀÎÅÍÆäÀ̽º ¿ªÇÒÀÇ JNI

 

±×¸²À» º¸¸é, JNI°¡ C¾ð¾î¿Í ÀÚ¹Ù »çÀÌ¿¡¼­ ´Ù¸® ¿ªÇÒÀ» Çϰí ÀÖ´Â °ÍÀ» º¼ ¼ö ÀÖ½À´Ï´Ù. ´Ù½Ã ¸»Çϸé, C³ª C++¿¡¼­ ¸¸µé¾îÁø ±â´ÉµéÀ» JNI¸¦ ÅëÇØ¼­ ÀÚ¹Ù¿¡¼­ ²ø¾î´Ù°¡ ¾´´Ù´Â °ÍÀÌÁÒ. ¹°·Ð ¹Ý´ëÀÇ °æ¿ìµµ ¼º¸³µË´Ï´Ù. JNI°¡ Á¦°øÇÏ´Â ÀÌ·¯ÇÑ ÀÎÅÍÆäÀ̽º¸¦ »ç¿ëÇØ¼­ ¿ì¸®´Â ÀÚ¹Ù ÀÌ¿ÜÀÇ ¾ð¾îµé°ú »óÈ£ ÀÛ¿ëÀ» ÇÏ´Â °ÍÀÌ °¡´ÉÇÕ´Ï´Ù.

 

JNI°¡ Á¦°øÇÏ´Â ÀÎÅÍÆäÀ̽ºÀÇ »ç¿ë¹ýÀ» »ìÆì º¸±â À§ÇØ, °£´ÜÇÑ ¿¹Á¦¸¦ ¸¸µé¾î º¸°Ú½À´Ï´Ù. ¿ì¸®°¡ ¸¸µé ¿¹Á¦´Â µµ½º ÄܼÖâ¿¡ ¡°Hello World!¡±¸¦ Ãâ·ÂÇÏ´Â ÇÁ·Î±×·¥ÀÔ´Ï´Ù. ÇÏÁö¸¸, ¡°Hello World!¡±¸¦ Ãâ·ÂÇϱâ À§ÇØ ÀÚ¹Ù°¡ Á¦°øÇÏ´Â System.out.println()¸Þ¼­µå¸¦ »ç¿ëÇÏÁö ¾Ê°í, C¾ð¾îÀÇ printf¶ó´Â ÇÔ¼ö¸¦ »ç¿ëÇÒ °ÍÀÔ´Ï´Ù. Áï, C¾ð¾î·Î ¡°Hello World!¡±¸¦ Ãâ·ÂÇÏ´Â ÇÔ¼ö¸¦ ¸¸µé°í, ÀÚ¹Ù¿¡¼­ ÀÌ ÇÔ¼ö¸¦ È£ÃâÇÒ °ÍÀÔ´Ï´Ù. JNI¿¡¼­´Â ÀÌ·¯ÇÑ ÇÔ¼ö¸¦ Native Method¶ó°í ºÎ¸¨´Ï´Ù.

¿ë¾îÀûÀÎ Ãø¸é¿¡¼­ ÇÔ¼ö¿Í ¸Þ¼­µå¸¦ È¥¿ëÇØ¼­ »ç¿ëÇϰí Àִµ¥ À̰ÍÀº C¾ð¾î ÀýÂ÷ÁöÇâ ¾ð¾î¿¡¼­´Â ã¾Æº¼ ¼ö ¾ø¾ú´ø JavaƯÀ¯ÀÇ Class¶õ °³³äÀ» µÞ¹Þħ ÇØ ÁÖ±âÀ§ÇØ ¡®Function¡¯À̶õ ¸»º¸´Ù´Â ³ÐÀº ¶æÀ» °¡Áø ¡®Method¡¯¶õ ¿ë¾î¸¦ »ç¿ëÇÏ´Â °ÍÀ¸·Î »ý°¢µÇ¾î Áý´Ï´Ù. ±×·¡¼­ ÀÚ¹Ù¿¡¼­´Â ¸Þ¼­µå·Î ÅëÄªÇØ¼­ »ç¿ëÇÑ´Ù´Â °ÍÀº ÀÌ¹Ì ¾Ë°í ÀÖÀ¸¸®¶ó »ý°¢µË´Ï´Ù.

 

ÀÚ¹Ù ÇÁ·Î±×·¥ ³»¿¡¼­ C·Î ¸¸µé¾îÁø Native Method¸¦ »ç¿ë Çϱâ À§Çؼ± ±âº»ÀûÀ¸·Î ´ÙÀ½ÀÇ 6´Ü°è¸¦ °ÅÃÄ¾ß ÇÕ´Ï´Ù.

 

n        1´Ü°è : Native Method¸¦ ¼±¾ðÇÏ´Â Àڹ٠Ŭ·¡½º ÀÛ¼º

n        2´Ü°è : 1´Ü°è¿¡¼­ ÀÛ¼ºÇÑ Å¬·¡½º ÄÄÆÄÀÏ

n        3´Ü°è : javah¸¦ »ç¿ëÇØ¼­ Native Method°¡ »ç¿ëÇÒ Çì´õ ÆÄÀÏ »ý¼º

n        4´Ü°è : C¾ð¾î·Î Native Method ½ÇÁ¦ ±¸Çö

n        5´Ü°è : C ÄÚµå¿Í Çì´õ ÆÄÀÏÀ» ÄÄÆÄÀÏ

n        6´Ü°è : ÀÚ¹Ù ÇÁ·Î±×·¥ ½ÇÇà

 

 °¢ ´Ü°è¿¡ ¸ÂÃç, ¿¹Á¦¸¦ ÀÛ¼ºÇØ º¸°Ú½À´Ï´Ù



jabookÀúÀÚ¸íÇÔ
Á¦¸ñ:¼Ò¼³°°ÀºÀÚ¹Ù4ºÎ
ÀúÀÚ:ÃÖ¿µ°ü