È®ÀåÁ¡ ½ºÅ°¸¶ »ç¿ë¹ý

ÀÛ¾÷°ø°£ÀÇ Ç÷¯±×Àο¡ ÀÇÇØ Á¤ÀÇµÈ È®ÀåÁ¡À» »ç¿ëÀÚ °íÀ¯ÀÇ Ç÷¯±×ÀÎÀ̳ª ´Ù¸¥ Ç÷¯±×Àο¡ Áï½Ã »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. È®ÀåÁ¡ ½ºÅ°¸¶°¡ Á¤ÀÇµÈ °æ¿ì, PDE´Â »õ È®ÀåÀ» Á¤ÀÇÇÒ ¶§ µµ¿òÀ» Á¦°øÇÒ ¼ö ÀÖ½À´Ï´Ù. ´ÙÀ½°ú °°Àº µµ¿òÀ» Á¦°øÇÕ´Ï´Ù.

¿¹: "»ùÇà ±¸¹® ºÐ¼®±â" È®ÀåÁ¡ »ç¿ë

¾Õ¼­ Á¤ÀÇÇÑ È®ÀåÁ¡À» »ç¿ëÇϱâ Àü¿¡ ¿¹»óµÇ´Â ÀÎÅÍÆäÀ̽º¸¦ Á¤ÀÇÇØ¾ß ÇÕ´Ï´Ù. ³×ºñ°ÔÀÌÅÍ¿¡¼­ com.example.xyz ÇÁ·ÎÁ§Æ®¸¦ ¼±ÅÃÇϰí Java ÀÎÅÍÆäÀ̽º ÀÛ¼º µµ±¸ ¸ðÀ½ ´ÜÃ߸¦ ´­·¯ »õ Java ÀÎÅÍÆäÀ̽º¸¦ ÀÛ¼ºÇϽʽÿÀ. ¿Ï·á¸¦ ´©¸£±â Àü¿¡ ÆÐŰÁö À̸§À» com.example.xyzÀ¸·Î ¼³Á¤Çϰí ÀÎÅÍÆäÀ̽º À̸§À» IParser·Î ¼³Á¤Çß´ÂÁö È®ÀÎÇϽʽÿÀ.  ÀÎÅÍÆäÀ̽º¸¦ ´ÙÀ½°ú °°ÀÌ ÆíÁýÇϽʽÿÀ.

      package com.example.xyz;

   public interface IParser {
      /**
* Run the parser using the
provided mode
       */
      public void parse(int mode);
   }

ÀÌÁ¦ È®ÀåÁ¡, È®ÀåÁ¡¿¡ ´ëÇÑ XML ½ºÅ°¸¶, Çʼö ÀÎÅÍÆäÀ̽º°¡ ¸ðµÎ ÁغñµÇ¾ú½À´Ï´Ù. ¿­·Á ÀÖ´Â ¸ðµç ÆíÁý±â¸¦ ÀúÀåÇϽʽÿÀ.  ÀÌÁ¦ °íÀ¯ Ç÷¯±×ÀÎ ¶Ç´Â ´Ù¸¥ Ç÷¯±×ÀÎÀÌ È®ÀåÁ¡À» »ç¿ëÇÒ ¸ðµç Áغñ°¡ ¿Ï·áµÇ¾ú½À´Ï´Ù.

  1. com.example.xyz Ç÷¯±×Àο¡ ´ëÇØ Manifest ÆíÁý±â¸¦ ¿©½Ê½Ã¿À.
  2. È®Àå ÆäÀÌÁö·Î ÀüȯÇÏ¿© ½Å±Ô-> È®ÀåÀ» ´©¸£½Ê½Ã¿À.
  3. "com.example.xyz.parsers"¸¦ ¼±ÅûçÇ×À¸·Î »ç¿ëÇÒ ¼ö ÀÖ¾î¾ß ÇÕ´Ï´Ù. À̸¦ ¼±ÅÃÇÏ°í ¿Ï·á¸¦ ´©¸£½Ê½Ã¿À.
  4. »õ·Î Ãß°¡µÈ "com.example.xyz.parsers" ¿ä¼Ò¸¦ ¼±ÅÃÇÏ°í ½Å±Ô->±¸¹® ºÐ¼®±â ¸Þ´º¸¦ ÆË¾÷ Ç¥½ÃÇϽʽÿÀ(È®ÀåÁ¡ÀÌ ¸ðµç ¼öÀÇ "parser" ¿ä¼Ò¸¦ ¼ö¿ëÇÒ ¼ö ÀÖµµ·Ï ÁöÁ¤ÇÔ).
  5. »õ ±¸¹® ºÐ¼®±â ¿ä¼Ò¸¦ ¼±ÅÃÇϽʽÿÀ. È®Àå ¿ä¼Ò ¼¼ºÎ»çÇ× ¼½¼Ç¿¡ id, name, class ¹× modeÀÇ ³× °¡Áö ¼Ó¼ºÀÌ Ç¥½ÃµÇ¾î¾ß ÇÕ´Ï´Ù. ¼Ó¼ºÀ» ¼±ÅÃÇÒ ¶§ »óÅ ǥ½ÃÁÙ¿¡ Ãà¾àÇü ¼Ó¼º Á¤º¸°¡ ¾î¶»°Ô Ç¥½ÃµÇ´ÂÁö Âü°íÇϽʽÿÀ. ÀÌ Á¤º¸´Â È®ÀåÁ¡ ½ºÅ°¸¶¿¡¼­ Á÷Á¢ Á¦°øµË´Ï´Ù.
  6. nameÀ» "±âº» ±¸¹® ºÐ¼®±â"·Î º¯°æÇϽʽÿÀ. mode¸¦ "¼öµ¿"À¸·Î º¯°æÇϽʽÿÀ. 
  7. È®Àå ¿ä¼Ò ¼¼ºÎ»çÇ× ¼½¼Ç¿¡¼­ class ÇÏÀÌÆÛ¸µÅ©¸¦ Ŭ¸¯ÇϽʽÿÀ. ¿©±â¼­ PDE°¡ JDTÀÇ "»õ Java Ŭ·¡½º" ¸¶¹ý»ç¿Í ¿ÏÀüÈ÷ ÅëÇյǰí IParser ÀÎÅÍÆäÀ̽º¸¦ ÀÚµ¿À¸·Î ±¸ÇöÇϱâ À§ÇØ ½ºÅ°¸¶ ¼Ó¼ºÀ» »ç¿ëÇÏ´Â °ÍÀ» º¸°Ô µË´Ï´Ù. ¼Ò½º Æú´õ·Î "com.example.xyz/src"¸¦ »ç¿ëÇÏ°í ÆÐŰÁö·Î "com.example.xyz"¸¦, ±×¸®°í Ŭ·¡½º À̸§À¸·Î DefaultParser¸¦ »ç¿ëÇϴ Ŭ·¡½º¸¦ ÀÛ¼ºÇϽʽÿÀ. ¿Ï·á¸¦ ´©¸£½Ê½Ã¿À.
  8. ÀÌÁ¦ DefaultParser Ŭ·¡½º¿¡ ´ëÇØ Java ÆíÁý±â°¡ ¿­¸³´Ï´Ù. ¿Ã¹Ù¸¥ ÀÎÅÍÆäÀ̽º(IParser) ±¸Çö ¹× "parse" ¸Þ¼Òµå¿¡ ´ëÇÑ ½ºÅÓ ±¸Çö ¹æ¹ý¿¡ ÁÖ¸ñÇϽʽÿÀ.
    ÆíÁý±â¸¦ ´Ý°í class ÇÏÀÌÆÛ¸µÅ©¸¦ ´Ù½Ã Ŭ¸¯ÇÒ °æ¿ì ÆíÁý±â°¡ DefaultParser Ŭ·¡½º¸¦ ´Ù½Ã ¿©´Â Á¡À» Âü°íÇϽʽÿÀ. "»õ Java Ŭ·¡½º" ¸¶¹ý»ç´Â Ŭ·¡½º ¼Ó¼º ÅØ½ºÆ® Çʵ忡 ÁöÁ¤µÈ Ŭ·¡½º¸¦ ãÀ» ¼ö ¾øÀ» ¶§¸¸ ³ªÅ¸³ª¹Ç·Î ¸µÅ©°¡ Ŭ·¡½º¸¦ ÆíÁý±â·Î ¿­°Ô µË´Ï´Ù.

ÀÌ´Â Àüü XML ½ºÅ°¸¶¸¦ È®ÀåÁ¡¿¡ Á¦°øÇÒ ¶§ PDEÀÇ Áö¿øÀ¸·Î ¿À·ù¸¦ ¿¹¹æÇÏ´Â µ¥ µµ¿òÀÌ µË´Ï´Ù.

Ư¼º ½ÃÆ® ¼¿ ÆíÁý±â¿¡¼­ ¼±ÅûçÇ×À¸·Î ³ªÅ¸³ª´Â Á¦ÇÑ ¼±ÅûçÇ×

¹ýÀû ÁÖÀÇ»çÇ×