ÃÑ ÆäÀÌÁö ¼ö : 3224
![]()
|
Facebook Joinc ±×·ì
Joinc QA »çÀÌÆ®
![]()
Tweet
joinc´Â Firefox¿Í chrome¿¡¼ Å×½ºÆ® Çß½À´Ï´Ù. IE¿¡¼´Â Å×À̺íÀÌ ±úÁö°Å³ª À̹ÌÁö°¡ º¸ÀÌÁö ¾ÊÀ» ¼ö ÀÖ½À´Ï´Ù. ƯÈ÷ ±¸±Û DocsÀ̹ÌÁöÀÇ °æ¿ì ¿¢¹Úó¸®µÉ ¼ö ÀÖ½À´Ï´Ù.
HTML º¯È¯¹®¼
<!DOCTYPE article PUBLIC "-//OASIS//DTD DocBook V4.1//EN">
<article lang="ko">
<!-- -->
<!-- ¹®¼ Á¤º¸ -->
<!-- -->
<articleinfo>
<title>ADT</title>
<author>
<surname>À± »ó¹è</surname>
<affiliation>
<address>
<email>dreamyun@yahoo.co.kr</email>
</address>
</affiliation>
</author>
</articleinfo>
<!-- -->
<!-- ¼½¼Ç ½ÃÀÛ -->
<!-- -->
<section>
<title>¼Ò°³</title>
<para>
À̱ÛÀº ÀڷᱸÁ¶¿Í ¾Ë¸®Áò¿¡ °ü·ÃµÈ ù¹øÂ° ±Û·Î¼,
ÇÊÀÚÀÇ ´ëÇпø°úÁ¤Áß¿¡ ÀÖ´Â ÀڷᱸÁ¶ ¼ö¾÷ÀÇ ³»¿ëÀ» ³ª¸§´ë·Î
Á¤¸®ÇÏ°í °øºÎÇØ¼ ¿Ã¸®´Â ±ÛÀÌ´Ù.
</para>
<para>
°ü·ÃÀü°øÀÚ¶ó¸é ºÐ¸íÈ÷ 2-3Çбâ Á¤µµ´Â ¼ö°ÇßÀ»°ÍÀ¸·Î »ý°¢µÇ¹Ç·Î
¾îÂî º¸¸é »·Çѳ»¿ëÀϼöµµ ÀÖ°Ú´Ù. ÀÌ¹Ì ¼ö°Çß´Ù¸é º¹½ÀÇÏ´Â ¸¶À½À¸·Î
°¡º±°Ô ÀÐÀ¸¸é ÁÁÀ»µí ÇÏ´Ù.
</para>
<para>
ºñ·Ï °³ÀÎÀûÀ¸·Î °øºÎÇÏ´Â ³»¿ëÀ» ¿Ã¸®±â´Â ÇÏÁö¸¸ ¸¹Àº À̱ÛÀ»
Àд µ¶ÀÚ?ºÐµéÀÌ ³Ê¹« ½É½ÉÇÏÁö ¾Êµµ·Ï À̷аú ´õºÒ¾î ½ÇÁ¦ ±¸Çö¿¡
ÁßÁ¡À» µÎ°í ±ÛÀ» Àü°³ÇØ ³ª°¥ °ÍÀÌ´Ù.
</para>
<para>
ÀڷᱸÁ¶/¾Ë°í¸®Áò ÀÚü°¡ ¹è¿ö¾ßÇÒ ³»¿ëÀÌ »ó´çÈ÷ ¸¹À½À¸·Î ½Ã°£ÀÌ
Á»°É¸®±ä ÇϰÚÁö¸¸
ÃÖÁ¾ÀûÀ¸·Î´Â µ¥ÀÌŸº£À̽º ±¸Á¶/±¸Çö ±îÁö¸¦ ´Ù·ç°Ô µÉ°ÍÀÌ´Ù.
</para>
<para>
°³ÀÎÀûÀÎ ¸ñÇ¥´Â ÀڷᱸÁ¶/¾Ë°í¸®ÁòÀÇ ÀÌ·Ð¹× ±¸ÇöÀ» ÃæºÐÈ÷ ´Ù·ç°í,
µ¥ÀÌŸº£À̽º ±¸Á¶/±¸Çö¿¡ ´ëÇÑ ±â¼úÀ» ÀÍÇô¼ RDBMS Á¤µµ¸¦ ±¸ÇöÇÒ¼ö
ÀÖ´Â ´É·ÂÀ» °¡Áö´Â °ÍÀÌ´Ù.
</para>
</section>
<section>
<title>µ¥ÀÌŸ Ãß»óÈ</title>
<para>
À̹øÀå¿¡¼´Â µ¥ÀÌŸ Ãß»óÈ¿¡ ´ëÇÑ ³»¿ëÀ» ´Ù·é´Ù.
¼³¸íÀº À̱ÛÀ» Àд ¿©·¯ºÐÀÌ C/C++ ¿¡ Àͼ÷ÇÏ´Ù´Â °¡Á¤ÇÏ¿¡
¾²¿©Áö°Ô µÉ°ÍÀÌ´Ù - ÁÖ·Î °³³äÀûÀÎ ¼³¸íÀÓÀ¸·Î
Äڵ带 ÀÌÇØÇÒ¼ö ÀÖÀ» Á¤µµ¸¸ µÇ¸é ÃæºÐÇÏ´Ù -.
</para>
<section>
<title>Ãß»ó¿¡ ´ëÇØ¼</title>
<para>
º¸Åë ¿µ¾î·Î abstract¶ó°í Çϸç, Çѹ®À¸·Î´Â õÎßÚ À̶ó°í
Ç¥±âµÈ´Ù. ±×·³ Ãß»óÀ̶õ ¹«¾ùÀΰ¡¿¡ ´ëÇØ¼ ¶æÇ®À̸¦
ÇØº¸µµ·Ï ÇÏÀÚ.
</para>
<para>
¾Æ¹«·¡µµ ¿ì¸®´Â ÇÑÀÚ¹®È±Ç¿¡ ¼ÓÇØ ÀÖ°í, Ã߻󿪽à ÇÑÀÚ¾î ÀÓÀ¸·Î
õÎßÚ À» ÀÌ¿ëÇØ¼ ±âº»ÀûÀÎ ¶æÀ» ¾Ë¾Æº¸µµ·Ï ÇϰڴÙ.
õÎ ´Â "»©´Ù", "¾ø¾Ö´Ù" ÀÇ ¶æÀ» °¡Áö¸ç, ßÚ Àº "¸ð¾ç", "±×¸²",
"ÇüÅÂ" ÀÇ ¶æÀ»°¡Áø´Ù. Áï "¸ð¾çÀ̳ª ÇüŰ¡ ¾ø´Â",
"¸ð¾çÀ̳ª ÇüŸ¦ »« ȤÀº °¨Ãá", À̶õ ¶æÀ» º¸¿©ÁØ´Ù.
</para>
<para>
´Ù½Ã¸»Çؼ º¸ÀÌÁö ¾Ê´Â °ÍÀÇ ½Çü¸¦ ¶æÇÑ´Ù. º¸ÀÌÁö ¾Ê´Âµ¥ ½Çü°¡ ÀÖ´Ù´Ï..
¹«½¼¼Ò¸®Àΰ¡. ...
±Ç·ÂÀº ´«¿¡ º¸ÀÌÁö ¾ÊÁö¸¸ »çȸ¸¦ Áö¹èÇϰí, Æòȸ¦ ³º±âµµ Çϸç
ÀüÀïÀ» ÀÏÀ¸Å°±âµµÇÑ´Ù.
¼ýÀÚµµ ´«¿¡ º¸ÀÌÁö ¾ÊÁö¸¸
¹°¸®¹ýÄ¢À» ÅëÇØ ¿ìÁÖÀÇ Áú¼¸¦ ÀÌ·ç¾î³½´Ù. »ç¶û¿ª½Ã ´«¿¡ º¸ÀÌÁö ¾ÊÁö¸¸
³²¿©»çÀ̸¦ °üÀåÇÑ´Ù.
</para>
<para>
±Ç·ÂÀÇ ½Çü´Â ÀúµÚ¿¡ ¼û¾î ÀÖÀ¸¸ç, ¿ì¸®´Â ±× ±Ç·ÂÀÇ °á°ú¸¦ ¸ö¼Ò
üÇèÇÏ¸é¼ »ì°í ÀÖ´Ù. º¸ÀÌÁö ¾Ê´Â Àú µÚÀÇ ±Ç·ÂÀÌ ¾î¶»°Ô ÀÛ¿ëÇÏ´À³Ä¿¡
µû¶ó¼ »çȸ, ±¹°¡ °³ÀÎÀÇ Èñºñ°¡ ±³Â÷ÇÑ´Ù. ´«¿¡ º¸ÀÌÁö ¾ÊÀ½À¸·Î
º°°Å ¾Æ´Ï¶ó°í »ý°¢Çϰí ÀÖÁö¸¸ ½ÇÀº ´«¿¡ º¸À̴°ͺ¸´Ù ´õ Å«ÈûÀ»
Çà»çÇÏ´Â°Ô ÀÌ·± Ãß»óÀûÀÎ °ÍµéÀÌ´Ù.
</para>
<para>
¼¼°èÀûÀΠöÇÐÀÚ, °úÇÐÀÚ, Á¤Ä¡°¡, °æÁ¦°¡ µéÀº ÀÌ·¯ÇÑ º¸ÀÌÁö ¾Ê´Â ½Çü¸¦
ޱ¸Çؼ ±× Çٽɿ¡ °ÅÀÇ ´Ù´Ù¸£°í ÀÖ´Â »ç¶÷µéÀÌ´Ù.
ÀÌ·¯ÇÑ Ãß»óÈ´Â º¸ÀÌÁö ¾Ê´Â ½Çü¿Í ±× °á°ú¸¦ ±¸ºÐ½ÃÄÑ ÁØ´Ù.
±×·³À¸·Î½á ¾ò´Â ÀÌÀÍÀ» »ý°¢ÇØ º¸ÀÚ.
º¸ÅëÀÇ ÀϹÝÀεéÀº °æÁ¦°¡ ¾î¶»°Ô ±¸ÇöµÇ°í
Èê·¯°¡´ÂÁö ¾ËÁö ¸øÇصµ ¼¼»óÀ» »ì¾Æ°¥¼ö ÀÖ´Ù. Á¤Ä¡, °úÇÐ, ¼öÇÐ ÀÌ·±°Íµé
¿ª½Ã ¸¶Âù°¡ÁöÀÌ´Ù. ÀÌ·± °íÈ¿À²ÀÇ »çȸ(±¹°¡)¸¦ ¸¸µé¾î ÁØ´Ù.
°³Àο¡°Ô ´Ù¸¥°ÍµéÀÌ ¾î¶»°Ô ±¸ÇöµÇ´ÂÁö ½Å°æ¾µÇÊ¿ä ¾øÀÌ ÀÚ½ÅÀÇ ÀüºÐºÐ¾ß¿¡
ÁýÁßÇÒ¼ö ÀÖ°Ô ¸¸µé¾î Áֱ⠶§¹®ÀÌ´Ù.
</para>
<para>
Ãß»óȰ¡ ÀÌ·ç¾îÁöÁö ¾ÊÀº »çȸ¿¡¼´Â ¼¼»óÀ» »ì¾Æ°¥°æ¿ì¸¦ »ý°¢Çغ¸ÀÚ,
¿ø½Ã ºÎÁ·»çȸ¸¦ ¿¹¸¦ µé¾îº¸ÀÚ¸é ÇϳªÀÇ °¡Á¤Àº »ì¾Æ³²±â À§Çؼ, ¼ö·Æµµ ÇØ¾ß Çϰí,
»ç³Éµµ ÇØ¾ßÇϰí, ¹çµµ Àϱ¸¾î¾ß Çϰí, Áýµµ ¸¸µé¾î¾ßÇÏ°í °¡Àçµµ±¸µµ ¼Õ¼ö
¸¸µé¾î¾ß Çϸç, ¾ÆÀÌµé ±³À°µµ Á÷Á¢ ÇØ¾ßÇÑ´Ù.
ºÎÁ·³»¿¡¼ ±¸Çϱâ Èûµç ¹°°ÇÀ» ±¸Çϱâ À§Çؼ ¼Õ¼ö ¹°¹°±³È¯À»
ÇØ¾ßÇϱ⵵ ÇÑ´Ù. ȸÀÇ¿¡µµ ¸ö¼ÒÂü¼®ÇØ¾ß ÇÑ´Ù. ÇϳªºÎÅÍ ¿±îÁö
¸ðµÎ ½Å°æ½áÁà¾ß ÇÑ´Ù.
±×³ª¸¶ °£´ÜÇÑ ºÎÁ·»çȸ¶ó¸é °¡´ÉÇϰÚÁö¸¸,
Á¶±Ý¸¸ ±Ô¸ð°¡ Ä¿Áö¸é ÀÌÁ¤µµ°¡Áö°í´Â Èûµé¾îÁø´Ù.
Áö±Ý »çȸ¸¦ »ì°í ÀÖ´Â ¿ì¸®´Â ½ÒÀÌ ¾î¶»°Ô ¸¸µé¾îÁ®¼ ¾î¶²°æ·Î¸¦
°ÅÃļ ½ÒÅë±îÁö ¿À´ÂÁö ¸ô¶óµµ µÈ´Ù. ÀÌ·±°Ç ³ó»ç²Û, À¯Åë¾÷ÀÚ, °¡°ø¾÷ÀÚ
µîµîÀÇ »ç¶÷µéÀÌ ÇÒÀÏÀÌ´Ù. °æÁ¦ ¼öÇÐ ´Ù¸¥ °Íµµ ¸¶Âù°¡Áö´Ù.
±×·³À¸·Î °³ÀÎÀº °³ÀÎÀÌ ÇÒÀÏ¿¡ Ãæ½ÇÈ÷ÇÏ´Â (¹°·Ð ´Ù¸¥ºÐ¾ß¿¡µµ ¾à°£ÀÇ
°ü½ÉÀ» °¡Áö°í Á¢±ÙÇÏ¸é ´õ ÁÁ°ÚÁö¸¸) Á¤µµ·Îµµ º¹ÀâÇÑ »çȸ¸¦ À¯Áö½ÃÄÑ
³ª°¥¼ö ÀÖ°Ô µÈ´Ù.
</para>
<para>
ÀÌ·± Ãß»óÈÀÇ ´É·ÂÀÌ¾ß ¸»·Î Àΰ£°ú µ¿¹°À» ±¸ºÐ½ÃÄÑÁÖ´Â ÁöÀû´É·ÂÀÇ »ê¹°À̶ó°í
º¼¼ö ÀÖ´Ù.
</para>
<section>
<title>±×¸²¿¡¼ÀÇ Ãß»ó</title>
<para>
¹Ì¼ú·Î º¸ÀÚ¸é ±¸»óÈÀÇ ¹Ý´ëµÇ´Â°Ô Ãß»óÈÀε¥,
±¸»óȰ¡ ÀÖ´Â ±×´ë·Î »ç¹°À» ÈÆøÀ» ÅëÇØº¸¿©ÁÖ´Â ¹Ý¸é
Ãß»óÈ´Â ÈÆøµÚ¿¡ Ȱ¡ÀÇ Àǵµ¿Í ÀǽÄÀ» "°¨Ã߰ųª ÀϺκÐÀ»
»ý·«Çؼ" ³ªÅ¸³»°í ÀÖÀ½À» ¾Ë¼ö ÀÖ´Ù.
°ü°´Àº ÈÆø¿¡ ±×·ÁÁø ÀÌ»óÇÑ ¼±°ú »öÀÇ º¯È¸¦ °¡Áö°í
Ȱ¡°¡ Àü´ÞÇϰíÀÚ ÇÏ´Â ¼û°ÜÁø Àǵµ¸¦ À¯ÃßÇØ ³»¾ß¸¸ ÇÑ´Ù.
¿Ö.. Ȱ¡´Â ±¸»óȸ¦ ÀÌ¿ëÇØ¼ ±¸Ã¼ÀûÀ¸·Î ÀÚ½ÅÀÇ Àǵµ¸¦
°ü°´¿¡¼ º¸¿©ÁÖÁö ¾Ê°í, ¹«¾ð°¡ ºüÁøµíÇÑ Ãß»óȸ¦ ÀÌ¿ëÇØ¼
ÀÚ½ÅÀÇ Àǵµ¸¦ º¸¿©ÁÖ·Á°í Çϴ°ÍÀϱî.
<figure>
<title>Ãß»óÈ 1</title>
<graphic fileref=/images/articles/99/chusang-1.jpg>
</figure>
<figure>
<title>Ãß»óÈ 2 - ¸óµå¸®¾ÈÀÇ Broadway Boogie woogie</title>
<graphic fileref=/images/articles/99/chusang-2.jpg>
</figure>
<figure>
<title>Ãß»óÈ 3 - Ŭ¸²Æ®ÀÇ The Kiss</title>
<graphic fileref=/images/articles/99/chusang-3.gif>
</figure>
</para>
<para>
±¸»óÈÀÇ ÀåÁ¡Àº ¸íÈ®ÇØ¼ ÀÌÇØÇϱⰡ ½±´Ù´Â Á¡ÀÏ °ÍÀÌ´Ù.
¹Ý¸é ´ÜÁ¡Àº ÀüÇϰíÀÚ ÇÏ´Â ÇѰ¡Áö(´«¿¡º¸À̴°Í)¸¸
Àü´ÞÇÒ¼ö ÀÖ´Ù´Â °ÍÀÌ´Ù.
°Ô´Ù°¡ »ç¶÷ÀÇ º¯È¹«½ÖÇÑ ±âºÐ ¼±ÇÏ°í ¾ÇÇÑ °¨Á¤, ³ª¾àÇϰí
¹«±â·ÂÇѵí ÇÏÁö¸¸ ¸ðµç°É ÃÊ¿ùÇÏ´Â »ç¶û.. ÀÌ·±°ÍµéÀº
Ç¥ÇöÇϱⰡ ¸Å¿ì ¾Ö¸ÅÇÏ´Ù.
</para>
<para>
¹Ý¸é Ãß»óȴ óÀ½¿¡ ÀÌÇØÇϱâ´Â ¾î·ÆÁö¸¸, ±×¾ß¸»·Î ´Ù¾çÇϰí
Æø³ÐÀº °³ÀÎÀÇ »ç»ó°ú Àǵµ¸¦ °ü°´¿¡°Ô º¸¿©ÁÙ¼ö ÀÖ´Ù.
Ȱ¡°¡ ´É·ÂÀÌ ÁÁ´Ù¸é ½½ÇÁ±âµµ ÇÏ¸é¼ ±â»Ú±âµµ ÇÑ ¸¶À½ÀÇ
»óŸ¦ ÈÆø¿¡ ´ã¾Æ¼ Ç¥ÇöÇÒ¼ö ÀÖÀ¸¸ç, °ü°´Àº ¼öÁظ¸ µÈ´Ù¸é
ÇϳªÀÇ ±×¸²À» ÅëÇØ¼ ´Ù¾çÇÑ °æÇèÀ» ÇÒ¼ö ÀÖ°Ô µÈ´Ù.
ÀÌ·¯ÇÑ °ÍÀº Ȱ¡°¡ ÀÚ½ÅÀÇ Àǵµ¸¦ ÈÆøµÚ¿¡
¼û±â±â(Ãß»óÈ) ¶§¹®¿¡ °¡´ÉÇØÁø´Ù.
</para>
</section>
<section>
<title>ÇÁ·Î±×·¡¹Ö ¿¡¼ÀÇ Ãß»ó</title>
<para>
ÇÁ·Î±×·¡¹Ö¿¡¼ÀÇ Ãß»ó ¿ª½Ã ±×¸²¿¡¼ÀÇ Ãß»ó°ú ºñ½ÁÇÑ Àǹ̸¦
°¡Áø´Ù. Ãß»ó±×¸²(Ãß»óȶó°í Çϸé Çò°¥¸±°Í °°¾Æ¼ Ãß»ó±×¸²
À̶ó°í Ç¥ÇöÇÔ)¿¡¼ ´Ù¾çÇÑ ÀÛ°¡ÀÇ Àǵµ¸¦ Ç¥ÇöÇϱâ À§Çؼ
ÈÆøµÚ¿¡ ÀÛ°¡ÀÇ ½ÇÁ¦Àǵµ¸¦ ¼û°å´Âµ¥,
ÇÁ·Î±×·¡¹Ö¿¡¼ÀÇ Ãß»óȵµ ¿ª½Ã ÀÌ·¯ÇÑ ¸ñÀûÀ¸·Î ¸¸µé¾îÁø
°³³äÀÌ´Ù.
</para>
<para>
±×¸²¿¡¼ Ȱ¡°¡ ¼û±â°íÀÚ ÇÏ´Â °ÍÀº Ȱ¡ÀÇ Àǵµ¿´´Ù.
ÇÁ·Î±×·¡¹Ö¿¡¼ ¼û±â°íÀÚ Çϴ°ÍÀº ¹«¾ùÀϱî ? ±¸Çö
ÀÌ´Ù. Ȱ¡´Â ÀÚ½ÅÀÇ Àǵµ¸¦ ÈÆøµÚ¿¡ ¼û°å´Ù.
ÇÁ·Î±×·¡¹Ö¿¡¼´Â ±¸ÇöÀ» class(Ada ¶ó¸é package) µÚ¿¡
¼û±ä´Ù.
</para>
<para>
¹°·Ð ±×¸²¿¡¼ÀÇ Ãß»ó°ú ÇÁ·Î±×·¡¹Ö¿¡¼ÀÇ Ãß»óÀÌ ¿ÏÀüÈ÷
µ¿ÀÏÇÑ°Ç ¾Æ´Ï´Ù. ¸ñÀûÀÌ ¾à°£ ´Ù¸¥µ¥,
±×¸²¿¡¼ÀÇ Ãß»óÀº(ÈÆøµÚ¿¡ ÀǽÄÀ» ¼û±è)
Àº °ü°´¿¡°Ô ´Ù¾çÇÑ »ç°íÀÇ °æÇèÀ» ÇÏ°Ô Çϱâ À§ÇÑ °ÍÀ̰í,
ÇÁ·Î±×·¡¹Ö¿¡¼ÀÇ Ãß»óÈ´Â class °³¹ßÀÚ°¡ ±¸ÇöÀ»
Ŭ·¡½º µÚ¿¡ (Ãß»óÈ)¼û±â°Ô µÊÀ¸·Î
class »ç¿ëÀÚ(¿ª½Ã °³¹ßÀÚÀÌÁö¸¸)´Â
±¸ÇöÀÌ ¾î¶»°Ô µÇ¾îÀÖ´ÂÁö ½Å°æ¾²Áö ¾Ê°í class ÀÇ ±â´ÉÀ»
ÀÌ¿ëÇÏ°Ô Çϵµ·Ï Çϱâ À§ÇÔÀÌ´Ù.
</para>
<para>
Ãß»óÀº OOP ÀÇ ÇÙ½ÉÀ̸ç, ÃÖ±Ù¹ßÇ¥µÇ´Â ¾ð¾îµéÀº
¿©·¯°¡Áö ÇüÅ·ΠÃß»óÀ» Áö¿øÇÑ´Ù. C ÀÇ °æ¿ì´Â
Á÷Á¢ÀûÀ¸·Î Ãß»óÀ» Áö¿øÇÏÁö ¾ÊÁö¸¸ Ãß»óÀ»
Áö¿øÇϴ°Íó·³ »ç¿ëÇÒ¼ö´Â ÀÖ´Ù.
</para>
</section>
</section>
<section>
<title>ADT(Abstracte Data Type) - µ¥ÀÌŸÀÇ Ãß»ó -</title>
<para>
ÀÌ»ó Ãß»ó¿¡ ´ëÇØ¼ ÀÌ·±Àú·± Àâ´ÙÇÑ ¾ê±â¸¦ ´Ã¾î ³õÀº°ÍÀº
Ãß»ó µ¥ÀÌŸ ŸÀÔ(ADT)¿¡ ´ëÇÑ ¼³¸íÀ» À§Çؼ¿´´Ù.
</para>
<para>
Ãß»ó µ¥ÀÌŸ ŸÀÔ¿ª½Ã ÇÁ·Î±×·¡¹Ö¿¡¼ÀÇ Ãß»ó°ú ¸¶Âù°¡Áö·Î
±¸Çö°ú »ç¿ëÀ» (±¸ÇöÀ» ¼û±èÀ¸·Î½á)ºÐ¸®½Ã۱â
À§Çؼ »ç¿ëÇÏ´Â °³³äÀÌ´Ù.
À̶§ ¼û°ÜÁö´Â ±¸ÇöÀÌ ÀڷᱸÁ¶¸¦ À§ÇÑ °ÍÀ̸é Ãß»ó µ¥ÀÌŸ
ŸÀÔÀÌµÇ ´Â °ÍÀÌ´Ù.
</para>
<para>
°£´ÜÇÑ ¿¹¸¦ µé¾î º¸µµ·Ï ÇÏÀÚ.
¸¸¾à ¿©·¯ºÐÀÌ stack ÀڷᱸÁ¶¸¦ ADT ¸¦ ÅëÇØ¼ ±¸ÇöÇØ¾ß ÇÑ´Ù°í
ÇßÀ»¶§, ´ÙÀ½°ú °°ÀÌ class ¸¦ ÅëÇØ¼ ADT ¸¦ Á¤ÀÇ ÇÒ¼ö
ÀÖÀ» °ÍÀÌ´Ù.
</para>
<para>
<emphasis>¿¹Á¦ : stack_adt.cc</emphasis>
<screen>
#include <iostream.h>
#define MAX_ELE_NUM 256
using namespace std;
// Stack Class
class Stack
{
private:
int element_num;
int mystack[MAX_ELE_NUM];
public:
Stack();
int push_back(int);
int get_back();
int size();
};
// »ý¼ºÀÚ
Stack::Stack()
{
element_num = 0;
memset(mystack, 0x00, sizeof(int)*MAX_ELE_NUM);
}
// µ¥ÀÌŸ ÀÔ·Â
int Stack::push_back(int data)
{
if (element_num > (MAX_ELE_NUM))
{
return -1;
}
mystack[element_num] = data;
element_num++;
return 1;
}
// µ¥ÀÌŸ °¡Á®¿À±â
int Stack::get_back()
{
element_num--;
return mystack[element_num];
}
// °¡Áö°í ÀÖ´Â µ¥ÀÌŸÀÇ °¹¼ö
int Stack::size()
{
return element_num;
}
int main()
{
int i;
Stack *mystack;
int size;
mystack = new Stack;
mystack->push_back(1);
mystack->push_back(2);
mystack->push_back(3);
mystack->push_back(4);
size = mystack->size();
for(i = 0; i < size; i++)
{
cout << mystack->get_back() << endl;
}
}
</screen>
ÀÌ·¸°Ô ADT ¸¦ ÀÌ¿ëÇØ¼ ÀڷḦ Ãß»óÈ ÇÒ°æ¿ì ¾òÀ»¼ö ÀÖ´Â
ÀÌÀÍ¿¡ ´ëÇØ »ý°¢Çغ¸ÀÚ. À§ÀÇ Stack class ¸¦ ¶óÀ̺귯¸®È
ÇØ¼ °ü¸®ÇÒ°æ¿ì Ŭ·¡½º »ç¿ëÀÚ´Â stack ÀڷᱸÁ¶¸¦ ¾î¶»°Ô
±¸ÇöÇØ¾ß ÇÏ´ÂÁö
½Å°æ¾µÇÊ¿ä¾øÀÌ ÀÚ½ÅÀÇ °³¹ß¿¡¸¸ Àü³äÇÒ¼ö ÀÖ´Ù. class °³¹ß
ÀÚ°¡ get_back() ÇÔ¼ö¿¡ ¹®Á¦°¡ »ý°Ü¼ À̰ÍÀ» ¹Ù²Ü°æ¿ì°¡
»ý±â´õ¶óµµ (Àμö³ª ¸®ÅϰªÀÌ ¹Ù²îÁö ¾Ê´ÂÇÑ) class »ç¿ëÀÚ´Â
¿©±â¿¡ ´ëÇØ¼ ÀüÇô ½Å°æ¾µ Çʿ䰡 ¾ø´Ù. class »ç¿ëÀÚ°¡
class »ç¿ëÁß ¹ö±×¸¦ »ç¿ëÇß´Ù¸é, ÇØ´ç¹®Á¦¸¸ °³¹ßÀÚ¿¡°Ô ¾Ë·Á
ÁÖ°í ÀÚ½ÅÀº ÀÛ¾÷À» °è¼ÓÇÏ¸é µÈ´Ù. ÀüüÀûÀ¸·Î °³¹ß¼Óµµ°¡
»¡¶óÁú°ÍÀ̸ç, À¯Áöº¸¼ö ¿ª½Ã ¼ö¿ùÇØ Áú°ÍÀÌ´Ù.
</para>
<para>
À§ÀÇ ÄÚµåÀÇ °æ¿ì c++ À» ÀÌ¿ëÇߴµ¥, ±âº»ÀûÀ¸·Î class ¸¦
ÀÌ¿ëÇÒ °æ¿ì ½±°Ô ADT ¸¦ Á¤ÀÇÇÒ¼ö Àֱ⠶§¹®À¸·Î °³³ä¼³¸í¿¡
ÀûÇÕÇϱ⠶§¹®ÀÌ´Ù (class ÀÚü¸¦ ADT¶ó°í º¼¼ö ÀÖ´Ù).
¹°·Ð ADT ´Â °³³äÀÓÀ¸·Î ¾à°£´õ ½Å°æ½áÁÖ¸é C ·Îµµ
¾î·ÆÁö ¾Ê°Ô Á¤ÀÇ ÇÒ¼ö ÀÖ´Ù.
</para>
<para>
À§ÀÇ ÄÚµå´Â int ÀڷḸÀ» stack ¿¡ ÀÔ·ÂÇÒ¼ö Àִµ¥,
c++ ÀÇ ´ÙÇü¼ºÀ» ÀÌ¿ëÇÏ¸é ´Ù¸¥ ÀÚ·áÇüÀ¸·Îµµ ½±°Ô
È®Àå °¡´ÉÇÒ°ÍÀÌ´Ù. ¸¸¾à Template ¸¦ »ç¿ëÇÒ°æ¿ì °ÅÀÇ ´ëºÎºÐÀÇ
ÀÚ·áÇü¿¡ ´ëÇÑ ÀÔ/Ãâ·ÂÀÌ °¡´ÉÇÒ°ÍÀÌ´Ù.
Template ¿¡ ´ëÇÑ ³»¿ëÀº <ulink url=/modules.php?name=News&file=article&sid=68>stl(1)-STL °³¿ä</ulink>¿¡¼ (ºñ·Ï °£´ÜÇÏÁö¸¸)´Ù·ç°í ÀÖÀ½À¸·Î
ÂüÁ¶Çϱ⠹ٶõ´Ù.
</para>
</section>
</section>
<section>
<title>°á·Ð</title>
<para>
º»·ÐÀÎ ADT ¸¦ ´Ù·ç±â Àü¿¡ Ãß»óÀÇ °³³ä¿¡ ´ëÇØ¼ ²Ï ¸¹Àº ³»¿ëÀ»
´Ù·ç¾ú´Âµ¥, ÀÌ´Â Çö´ë ÇÁ·Î±×·¡¹Ö¿¡ ÀÖ¾î¼ Ãß»óÀÌ ´ë´ÜÈ÷ Áß¿äÇÑ
ÁÖÁ¦ÀÓ¿¡µµ ºÒ±¸ÇÏ°í °³³äÀûÀÎ ÀÌÇØ°¡ ºÎÁ·ÇÑ °æ¿ì¸¦ ÀÚÁÖ º¸¾Æ¿Ô±â
¶§¹®ÀÌ´Ù. Ãß»óÀÇ °³³äÀ» Á¦´ë·Î ÀÌÇØÇϰí ÀÖÀ¸¸é Çö´ë ÇÁ·Î±×·¡¹ÖÀÇ
Áٱ⸦ ÀÌÇØÇϱⰡ Á»´õ ½¬¿öÁø´Ù.
</para>
<para>
ÀڷᱸÁ¶¿¡ µé¾î°¡±âÀü¿¡ ¾Õ¼ ADT¸¦ ´Ù·é ÀÌÀ¯´Â ¾ÕÀ¸·Î ÀڷᱸÁ¶¸¦
±¸ÇöÇÔ¿¡ ÀÖ¾î¼ ADT ¸¦ Á¤ÀÇÇØ¼ ±¸ÇöÇÒ ¿¹Á¤À̱⠶§¹®ÀÌ´Ù.
ÀÌ ¹®¼¿¡¼´Â ADT ÀÇ °³³äÀ» c++ À» ÅëÇØ¼ ±¸ÇöÇߴµ¥,
¸Ó¸®µµ ½ÄÈú°â c ·Îµµ Çѹø ±¸ÇöÇØ º¸±â ¹Ù¶õ´Ù. ±×·¡µµ
½Ã°£ÀÌ ³²´Â´Ù¸é ÅÛÇø´¹öÁ¯µµ ¿¬½À»ï¾Æ ¸¸µé¾î º¸±â ¹Ù¶õ´Ù.
</para>
</section>
</article>
|
|
|
EmailÀ» ±âÀÔÇϸé, ´ñ±ÛÀÌ ¸ÞÀÏ·Î Àü´ÞµË´Ï´Ù. |
|