1996³â 3¿ù 19ÀÏ Ã¹ ÃâÆÇ, 1998³â 5¿ù 31ÀÏ ÃÖÁ¾ °»½Å


¾Õ ÆäÀÌÁö µÞ ÆäÀÌÁö »öÀÎ


¾ÖÇø´ Ŭ·¡½º

ÀÌÁ¦ ½ÇÁ¦ java.applet ÆÐÅ°Áö¸¦ ÀÌ¿ëÇÏ¿© ¾ÖÇø´ ÇÁ·Î±×·¡¹ÖÀ» Çغ¸ÀÚ. ¸ÕÀú ¾ÖÇø´ÀÇ ÁÖ¿ä ¸Þ¼ÒµåµéÀ» »ìÆ캸ÀÚ.

ÀÚ¹Ù Áö¿ø ºê¶ó¿ìÀú¿Í ¾ÖÇø´ ±âº» ¸Þ¼Òµå

ÇöÀç ÀÚ¹Ù¸¦ Áö¿øÇÏ´Â ºê¶ó¿ìÀú´Â ³Ý½ºÄÉÀÌÇÁ 2.0 ÀÌÈÄ ¹öÀü°ú ¸¶ÀÌÅ©·Î¼ÒÇÁÆ® ÀÎÅÍ³Ý ÀͽºÇ÷η¯ 3.0 ÀÌÈÄ ¹öÀü, ±×¸®°í JDK¿¡ Æ÷ÇԵǾî ÀÖ´Â ¾ÖÇø´ºä¾îÀÌ´Ù. ÀÌµé ºê¶ó¿ìÀú¿Í ÀÚ¹Ù ·±Å¸ÀÓ È¯°æÀÌ ¾ÖÇø´À» ¸Þ¸ð¸®¿¡¼­ °ü¸®ÇÏ´Â ¹æ¹ýÀº ´ëü·Î ´ÙÀ½°ú °°´Ù. (°¢ ºê¶ó¿ìÀú¿¡ µû¶ó ¾à°£ÀÇ Â÷ÀÌ°¡ ÀÖÀ» ¼ö ÀÖ´Ù.)

  1. ƯÁ¤ÇÑ URLÀÇ ÀԷ¿¡ µû¶ó HTML ¹®¼­°¡ ¿äûµÈ´Ù.
  2. ºê¶ó¿ìÀú´Â HTML ¹®¼­¸¦ Àоîµé¿© <APPLET> ű׸¦ ã´Â´Ù.
  3. <APPLET> ű׸¦ ãÀ¸¸é ºê¶ó¿ìÀú´Â ¾ÖÇø´ ¹ÙÀÌÆ®ÄÚµå Áï, Ŭ·¡½º ÆÄÀÏÀ» ÀоîµéÀδÙ.
  4. ºê¶ó¿ìÀú´Â ¾ÖÇø´À» ÀÚ¹Ù ·±Å¸ÀÓ ÀÎÅÍÇÁ¸®ÅÍ¿¡ ³Ñ°ÜÁØ´Ù.
  5. ÀÚ¹Ù ÀÎÅÍÇÁ¸®ÅÍ´Â ¹ÙÀÌÆ®ÄÚµåÀÇ º¸¾È À§¹Ý ¿©ºÎ¸¦ °Ë»çÇÑ´Ù. ¹ÙÀÌÆ®Äڵ尡 ¾ÈÀüÇÏ´Ù°í ÆÇ´ÜµÇ¸é ·±Å¸ÀÓ ½Ã½ºÅÛÀº Ŭ·¡½º¸¦ ¸Þ¸ð¸®·Î ÀûÀçÇÑ´Ù.
  6. ºê¶ó¿ìÀú´Â ÀûÀçµÈ ¾ÖÇø´ Ŭ·¡½º¿¡ Á¤ÀÇ°¡ µÇ¾î ÀÖÀ» °æ¿ì ÇØ´ç Ŭ·¡½ºÀÇ init() ¸Þ¼Òµå¸¦ ½ÇÇàÇÑ´Ù. ÀÌ ¸Þ¼Òµå´Â º¯¼ö¸¦ ÃʱâÈ­ÇÏ°í È­Æø Å©±â¸¦ ÀçÁ¶Á¤Çϰųª ÇÊ¿äÇÑ ´Ù¸¥ ¸®¼Ò½ºµéÀ» ã´Â µ¥ ÁÖ·Î »ç¿ëµÈ´Ù.
  7. ºê¶ó¿ìÀú´Â HTML ¹®¼­¸¦ ¹ø¿ªÇÏ¿© µð½ºÇ÷¹ÀÌ Ã¢¿¡ º¸¿©Áֱ⠽ÃÀÛÇÑ´Ù. ±× ´ÙÀ½ ºê¶ó¿ìÀú´Â Á¤ÀÇ°¡ µÇ¾î ÀÖÀ» °æ¿ì ¾ÖÇø´ÀÇ start() ¸Þ¼Òµå¸¦ ½ÇÇàÇÑ´Ù.
  8. ´ÙÀ½À¸·Î ºê¶ó¿ìÀú´Â ÈÞ½ÄÀ» ÃëÇϸ鼭 ±â´Ù¸°´Ù.
  9. »ç¿ëÀÚ°¡ ÇöÀçÀÇ HTML ¹®¼­¸¦ ¶°³ª¸é ºê¶ó¿ìÀú´Â Á¤ÀÇ°¡ µÇ¾î ÀÖÀ» °æ¿ì stop() ¸Þ¼Òµå¸¦ ½ÇÇàÇÑ´Ù. ÀÌ ¸Þ¼Òµå´Â ¾ÖÇø´ÀÇ ¸ðµç È°¼ºÈ­µÈ ½ÇÇà ¾²·¹µå¸¦ Á¾·á½ÃŲ´Ù.
  10. stop()ÀÌ Á¾·áÇÏ¸é ºê¶ó¿ìÀú´Â destroy() ¸Þ¼Òµå¸¦ ºÎ¸§À¸·Î½á ·±Å¸ÀÓ ½Ã½ºÅÛ¿¡ ¾ÖÇø´ÀÌ ÁßÁöµÇ¾úÀ½À» ¾Ë¸°´Ù.
  11. ±×·¯¸é ·±Å¸ÀÓ ½Ã½ºÅÛÀº ¸Þ¸ð¸®¿¡¼­ ¾ÖÇø´À» Á¦°ÅÇÑ´Ù. ÀÌÁ¦ ¾ÖÇø´Àº ½ÇÇàÀ» ÁßÁöÇÏ°í ¸Þ¸ð¸® °ø°£À» ¹ÝȯÇÑ´Ù.

¾ÖÇø´ÀÇ ½ÇÇà¿¡ ÇÊ¿äÇÑ ±âº» ¸Þ¼Òµå´Â À§¿¡¼­ ³ª¿Â ³× °¡ÁöÀÌ´Ù. ÀÌµé ¸Þ¼Òµå´Â ¸ðµÎ java.applet ÆÐÅ°ÁöÀÇ Applet Ŭ·¡½º¿¡ ¼±¾ðµÇ¾î ÀÖÀ¸¸ç ¹Ýµå½Ã ¿À¹ö¶óÀ̵åÇÏ¿© ÀçÁ¤ÀÇÇÒ ÇÊ¿ä´Â ¾ø´Ù. °¢ ¸Þ¼ÒµåÀÇ ÁÖµÈ ¿ªÇÒÀº ´ÙÀ½°ú °°´Ù.

init() ¸Þ¼Òµå: ¾ÖÇø´À» ÃʱâÈ­ÇÑ´Ù. ¾ÖÇø´ÀÌ Ã³À½ ÀûÀçµÉ ¶§, ÇÑ ¹ø¸¸ ½Ã½ºÅÛ¿¡ ÀÇÇؼ­ ÀÚµ¿À¸·Î È£ÃâµÈ´Ù. ¾ÖÇø´¿¡ »ç¿ëµÇ´Â ¿©·¯ °¡Áö ÃʱâÈ­¸¦ ¼öÇàÇϱ⿡ ÁÁÀº ¸Þ¼ÒµåÀÌ´Ù.
start() ¸Þ¼Òµå : ¾ÖÇø´ÀÌ ½ÃÀÛµÉ ¶§ È£ÃâµÈ´Ù. ¾ÖÇø´ÀÌ Æ÷ÇԵǾî ÀÖ´Â ¹®¼­¸¦ ¹æ¹®ÇÒ ¶§ È£ÃâµÈ´Ù.
stop() ¸Þ¼Òµå : ¾ÖÇø´ ½ÇÇàÀ» ÁßÁö½Ãų ¶§ È£ÃâÇÑ´Ù. ºê¶ó¿ìÀú È­¸é¿¡ ÇØ´ç ¹®¼­°¡ ¾øÀ» ¶§ È£ÃâµÈ´Ù. ¹Ýµå½Ã destroy() È£Ãâ Àü¿¡ ºÒ·ÁÁø´Ù.
destroy() ¸Þ¼Òµå : ¿­·ÁÁø ¸ðµç ¸®¼Ò½ºµéÀ» û¼ÒÇÑ´Ù. ±×¸®°í ¾²·¹µå¸¦ »ç¿ëÇÏ´Â ¾ÖÇø´Àº ÀÌ ¸Þ¼Òµå¿¡¼­ ¾²·¹µå¸¦ Æı«ÇØ¾ß ÇÑ´Ù.

À§ÀÇ ¸Þ¼ÒµåµéÀº ¸ðµÎ ºê¶ó¿ìÀú¿¡ ÀÇÇؼ­ ÀÚµ¿À¸·Î È£ÃâµÈ´Ù. ¾ÖÇø´ÀÇ ´Ù¸¥ ¸Þ¼Òµå¿¡¼­ Á÷Á¢ È£ÃâÇÒ ÇÊ¿ä°¡ ¾ø´Ù.
³Ý½ºÄÉÀÌÇÁ¿Í °°Àº ºê¶ó¿ìÀú´Â ½ÇÇà È¿À²À» À§ÇØ ÀÏ´Ü ÀûÀçµÈ ¾ÖÇø´Àº ´Ù¸¥ ÆäÀÌÁö·Î À̵¿ÇØ°¡´õ¶óµµ stop() ¸Þ¼Òµå¸¸ È£ÃâÇÏ°í destroy() ¸Þ¼Òµå´Â È£ÃâÇÏÁö ¾Ê°í ÀÖ´Ù°¡ Back ȤÀº Forward ¹öÆ°¿¡ ÀÇÇØ ´Ù½Ã ¾ÖÇø´ÀÌ ÀÖ´Â ÆäÀÌÁö·Î À̵¿ÇÏ°Ô µÇ¸é init() ¸Þ¼Òµå È£Ãâ ¾øÀÌ start() ¸Þ¼Òµå¸¸ ´Ù½Ã È£ÃâÇÏ´Â ¹æ½ÄÀ» »ç¿ëÇÑ´Ù. ½ÇÁ¦·Î´Â ¾ÖÇø´¿¡ init()°ú start()¸¦ È¥µ·Çؼ­ »ç¿ëÇÏ°í stop()°ú destroy()¸¦ ±¸º°ÇÏÁö ¾Ê°í »ç¿ëÇÏ´Â °æ¿ì°¡ Á¾Á¾ Àִµ¥ ÀÌ·¯ÇÑ °æ¿ì ¾ÖÇø´ÀÌ ÃʱâÈ­°¡ Á¦´ë·Î µÇÁö ¾Ê°Å³ª ¿Àµ¿ÀÛÇÒ ¼ö ÀÖ´Ù.

ÀÌ·² ¶§ °¡Àå ÁÁÀº ¹æ¹ýÀº ½ÇÁ¦ »ç¿ëÇÏ°Ô µÉ ºê¶ó¿ìÀúµéÀ» °¡Áö°í Å×½ºÆ®¸¦ Çغ¸´Â °ÍÀÌ´Ù.

 

java.applet.Applet Ŭ·¡½ºÀÇ ÁÖ¿ä ¸Þ¼Òµåµé

¾ÖÇø´ Ŭ·¡½º¿¡´Â À§ÀÇ ³× °³ÀÇ ¸Þ¼Òµå ¿Ü¿¡µµ ¾ÖÇø´ ±¸Çö¿¡ Áß¿äÇÑ ¸¹Àº ¸Þ¼ÒµåµéÀ» Á¦°øÇÑ´Ù. ¾ÖÇø´ ÇÁ·Î±×·¡¹Ö¿¡ °¡Àå ºó¹øÇÏ°Ô »ç¿ëµÇ´Â ¸Þ¼ÒµåµéÀÎ ¼ÀÀÌ´Ù. Çϳª¾¿ »ìÆ캸ÀÚ.

public URL getCodeBase() : ¾ÖÇø´ÀÇ URLÀ» ±¸ÇÑ´Ù. ÀÌ ¸Þ¼Òµå´Â ½ÇÁ¦ ÀûÀçµÈ ¾ÖÇø´ Ŭ·¡½º ¹ÙÀÌÆ®ÄÚµåÀÇ ±âÁØ URLÀ» µ¹·ÁÁØ´Ù.
public URL getDocumentBase() : <APPLET> ű׸¦ Æ÷ÇÔÇÏ°í ÀÖ´Â HTML ¹®¼­ÀÇ URLÀ» µ¹·ÁÁØ´Ù.
public String getParameter(String name) : ¹®¼­¿¡ ÁöÁ¤µÇ¾î ÀÖ´Â ¾ÖÇø´ÀÇ º¯¼ö °ªÀ» µ¹·ÁÁØ´Ù. º¯¼ö°¡ ¹®¼­¿¡ ÁöÁ¤µÇ¾î ÀÖÁö ¾ÊÀ¸¸é nullÀ» µ¹·ÁÁØ´Ù. ÀÌ ¸Þ¼Òµå´Â »ç¿ëÀÚ°¡ ¹®¼­¸¦ ÅëÇÏ¿© ÃʱⰪÀ» ÁöÁ¤ÇÒ ¼ö ÀÖ´Â Áß¿äÇÑ ¼ö´ÜÀÌ´Ù. ¾ÖÇø´ÀÇ ÃʱⰪÀ» ÄÚµå ¾È¿¡ Çϵå ÄÚµùÇÏÁö ¾Ê°í HTML ¹®¼­¿¡¼­ ´Ù¾çÇÏ°Ô ÁöÁ¤ÇÒ ¼ö Àֱ⠶§¹®¿¡ ¾ÖÇø´ÀÇ À¯¿¬¼ºÀ» ³ô¿©ÁØ´Ù.

¿¹¸¦ µé¾î http://java.freehosting.co.kr/~yoonforh/index.html ¹®¼­¿¡ ´ÙÀ½°ú °°Àº <APPLET>űװ¡ Æ÷ÇԵǾî ÀÖ´Ù°í ÇÏÀÚ.

<APPLET CODEBASE="Blinking" CODE="Blink.class" WIDTH=320 HEIGHT=120> 
<PARAM NAME=lbl VALUE="¹Ý¦¹Ý¦">
<PARAM NAME=speed VALUE="4">
</APPLET>

<APPLET> ű׿¡¼­ ¹Ýµå½Ã ÇÊ¿äÇÑ °ÍÀº CODE, WIDTH, HEIGHT ÇʵåÀÌ´Ù. WIDTH, HEIGHT Çʵå´Â <IMG> ű׿¡¼­Ã³·³ ¾ÖÇø´ÀÌ ºê¶ó¿ìÀú¿¡ Ç¥½ÃµÉ ¶§ Æø°ú ³ôÀ̸¦ ÁöÁ¤ÇÏ´Â °ÍÀÌ´Ù. CODE´Â ¾ÖÇø´¿¡ ÇØ´çÇϴ Ŭ·¡½º À̸§À¸·Î È®ÀåÀÚÀÎ ".class"´Â »ý·«Çصµ ¹«¹æÇÏ´Ù. CODEBASE Çʵå´Â ¾ÖÇø´ÀÌ ¹®¼­¿Í ´Ù¸¥ URL¿¡ À§Ä¡ÇÒ ¶§ ±× À§Ä¡¸¦ ÁöÁ¤Çϱâ À§ÇÑ ÇʵåÀÌ´Ù. À§ÀÇ ¿¹¿¡¼­´Â ¹®¼­ ÆÄÀÏÀÌ À§Ä¡ÇÏ´Â µð·ºÅ丮ÀÇ ¼­ºê µð·ºÅ丮ÀÎ Blinking µð·ºÅ丮¿¡ Blinking.class ÆÄÀÏÀÌ ÀÖÀ½À» ÁöÁ¤ÇÏ°í ÀÖ´Ù.

ÀÌ ¿¹¿¡¼­ getCodeBase()ÀÇ ¹Ýȯ°ªÀº "http://java.freehosting.co.kr/~yoonforh/Blinking/"ÀÌ°í getDocumentBase()ÀÇ ¹Ýȯ°ªÀº "http://java.freehosting.co.kr/~yoonforh/index.html"ÀÌ´Ù.
getParameter("lbl")ÀÇ ¹Ýȯ°ªÀº <PARAM> ű׿¡¼­ ÁöÁ¤ÇÑ ´ë·Î "¹Ý¦¹Ý¦"ÀÌ µÇ°í ¸¶Âù°¡Áö·Î getParameter("speed")ÀÇ ¹Ýȯ°ªÀº "4"°¡ µÈ´Ù. Âü°í·Î ¾ÖÇø´À» ³Ñ°ÜÁÙ º¯¼ö À̸§À» ÁöÁ¤ÇÏ´Â NAME °ªÀº ´ë¼Ò¹®ÀÚ ±¸º°À» ÇÏÁö ¾ÊÁö¸¸ º¯¼ö °ªÀÌ µé¾î°¥ VALUE °ªÀº ´ë¼Ò¹®ÀÚ ±¸º°À» ÇÑ´Ù. ±×¸®°í µû¿ÈÇ¥´Â ¿©Å¸ HTML ű׿¡¼­ °ªÀ» ÁöÁ¤ÇÏ´Â °Í°ú ¸¶Âù°¡Áö·Î À־ ÁÁ°í ¾ø¾îµµ ÁÁÀ¸³ª °ª °¡¿îµ¥¿¡ ºó Ä­ÀÌ µé¾î°¥ °æ¿ì¿¡´Â ¹Ýµå½Ã µû¿ÈÇ¥¸¦ »ç¿ëÇØ¾ß ÇÑ´Ù.

´ÙÀ½Àº À̹ÌÁö ÆÄÀÏ°ú ¿Àµð¿À ÆÄÀÏÀ» ¾ò´Â ¸Þ¼ÒµåµéÀÌ´Ù.

public Image getImage(URL url) : Àý´ë °æ·Î URL·Î À̹ÌÁö ÆÄÀÏÀ» ¾ò´Â´Ù.
public Image getImage(URL url, String name) : URL°ú »ó´ë °æ·Î¸¦ ÁöÁ¤ÇÑ ¹®ÀÚ¿­À» Á¶ÇÕÇÏ¿© ±¸ÇÑ Àý´ë °æ·Î URL·Î À̹ÌÁö ÆÄÀÏÀ» ¾ò´Â´Ù.
public AudioClip getAudioClip(URL url) : Àý´ë °æ·Î URL·Î ¿Àµð¿À ÆÄÀÏÀ» ¾ò´Â´Ù.
public AudioClip getAudioClip(URL url, String name) : URL°ú »ó´ë °æ·Î¸¦ ÁöÁ¤ÇÑ ¹®ÀÚ¿­À» Á¶ÇÕÇÏ¿© ±¸ÇÑ Àý´ë °æ·Î URL·Î ¿Àµð¿À ÆÄÀÏÀ» ¾ò´Â´Ù.
public void play(URL url) : Àý´ë °æ·Î URL·Î ¿Àµð¿À ÆÄÀÏÀ» ã¾Æ ¿¬ÁÖÇÑ´Ù.
public void play(URL url, String name) : URL°ú »ó´ë °æ·Î¸¦ ÁöÁ¤ÇÑ ¹®ÀÚ¿­À» Á¶ÇÕÇÏ¿© ±¸ÇÑ Àý´ë °æ·Î URL·Î ¿Àµð¿À ÆÄÀÏÀ» ã¾Æ ¿¬ÁÖÇÑ´Ù.

±× ¿Ü ÀÚÁÖ »ç¿ëµÇ´Â ¾ÖÇø´ ¸Þ¼Òµå´Â ´ÙÀ½°ú °°´Ù.

public void resize(int width, int height) : ¾ÖÇø´ÀÇ Å©±â¸¦ ÀçÁ¶Á¤ÇÑ´Ù.
public void resize(Dimension d) : ¾ÖÇø´ÀÇ Å©±â¸¦ ÀçÁ¶Á¤ÇÑ´Ù.
public void showStatus(String msg) : ºê¶ó¿ìÀúÀÇ »óÅ ¹Ù¿¡ ¸Þ½ÃÁö¸¦ ³ªÅ¸³½´Ù.
public AppletContext getAppletContext() : ¾ÖÇø´ÀÇ È¯°æ(ÁÖ·Î ºê¶ó¿ìÀú)¿¡ °ü°èµÇ´Â ÀÎÅÍÆäÀ̽ºÀÎ ¾ÖÇø´ ÄÁÅؽºÆ®¿¡ ´ëÇÑ ÇÚµéÀ» µ¹·ÁÁØ´Ù. ¾ÖÇø´ ÄÁÅؽºÆ®ÀÇ ¸Þ¼ÒµåÀÎ public abstract void showDocument(URL url)¸¦ »ç¿ëÇÏ¸é ºê¶ó¿ìÀúÀÇ ÇöÀç È­¸é¿¡ ÁöÁ¤µÈ URLÀÌ Ç¥½ÃµÇ°Ô ÇÒ ¼ö ÀÖ´Ù.

´ÙÀ½Àº °£´ÜÇÑ ¾ÖÇø´ ¿¹Á¦ ÇÁ·Î±×·¥ ¼Ò½º ÆÄÀÏ°ú ½ÇÇà °á°úÀÌ´Ù. HTML ¹®¼­¿¡¼­ º¯¼ö¸¦ ÀԷ¹޾Ƽ­ º¯¼ö¿¡ ÇØ´çÇÏ´Â ±×¸²À» ¾ÖÇø´ À©µµ¿ì¿¡ Ãâ·ÂÇÏ°í ¹Ýº¹Çؼ­ ¿Àµð¿À ÆÄÀÏÀ» ¿¬ÁÖÇÑ´Ù.

AppletEx1.java

¡¡

<AppletEx1.html>

<HTML><HEAD><TITLE> Applet Example 1 </TITLE></HEAD>
<BODY>
<APPLET CODE=AppletEx1 WIDTH=300 HEIGHT=300>
<PARAM NAME=image VALUE=yoonkg.gif> <! IMAGE º¯¼ö°ªÀ» yoonkg.gif·Î ÁöÁ¤>
<PARAM NAME=audio VALUE=hello.au> <! AUDIO º¯¼ö°ªÀ» hello.au·Î ÁöÁ¤>
</APPLET>
</BODY></HTML>


¿Àµð¿À ÆÄÀÏÀ» ½ÇÇàÇÏ´Â µ¥ »ç¿ëµÇ´Â AudioClipÀÇ ¸Þ¼Òµå´Â ¸ðµÎ ¼¼ °¡Áö»ÓÀÌ´Ù.

public abstract void play() : ¿Àµð¿À ÆÄÀÏÀ» ¿¬ÁÖÇÑ´Ù.
public abstract void loop() : ¿Àµð¿À ÆÄÀÏÀ» ¹Ýº¹Çؼ­ ¿¬ÁÖÇÑ´Ù.
public abstract void stop() : ¿Àµð¿À ÆÄÀÏ ¿¬ÁÖ¸¦ Áß´ÜÇÑ´Ù.

À§ ¿¹Á¦¿¡¼­´Â loop()¿Í stop()ÀÌ »ç¿ëµÇ¾ú´Ù.¡¡¡¡¡¡¡¡


¾Õ ÆäÀÌÁö µÞ ÆäÀÌÁö »öÀÎ