1-1.À¥ °³¹ß

À¥ ±â¼ú

ÀÎÅͳÝÀÌ ¿¬°áµÇÁö ¾ÊÀº °÷ÀÌ ¾ø°í ¼¼»ó ¸ðµç °ÍÀÌ ´Ù À¥¿¡¼­ µ¹¾Æ°¡°í ÀÖ´Ù. ¿ÀÇǽº ÇÁ·Î±×·¥À» ¼³Ä¡ÇÏÁö ¾Ê¾Æµµ ºê¶ó¿ìÀú·Î ±¸±Û µ¶½º¿¡ Á¢¼ÓÇÏ¿© ¹®¼­¸¦ ÀÛ¼ºÇÏ°í º¼ ¼ö ÀÖ°í Çϵð µð½ºÅ©°¡ ¾ø¾îµµ Ŭ¶ó¿ìµå¿¡ ³» Á¤º¸¸¦ ¸¶À½²¯ ÀúÀåÇÒ ¼ö ÀÖ´Ù.

´º½º³ª ¿µÈ­µµ ³×Æ®¿öÅ©¸¦ ÅëÇØ ¾ðÁ¦µçÁö º¼ ¼ö ÀÖÀ¸¸ç ÀºÇà¿¡µµ °¥ ÇÊ¿ä ¾ø°í ¼îÇεµ ÄÄÇ»ÅÍ·Î Áñ±ä´Ù. ÀÌ ¸ðµç ÇýÅÃÀ» ¼Õ¹Ù´Ú À§ÀÇ ½º¸¶Æ®ÆùÀ¸·Î ¾ðÁ¦ ¾îµð¼­³ª ´©¸± ¼ö ÀÖ´Ù. ½ÉÁö¾î °Å´ëÇÑ °ÔÀÓµµ ¼³Ä¡ÇÒ ÇÊ¿ä¾øÀÌ À¥¿¡¼­ Ç÷¹ÀÌÇÒ ¼ö ÀÖ´Ù.

¼¼»óÀÌ ÀÌ·¸°Ô ¹Ù²î´Ù º¸´Ï ¸ðµç ¼ÒÇÁÆ®¿þ¾î´Â À¥À¸·Î ÀüȯµÇ°í ÀÖÀ¸¸ç ¾ÕÀ¸·Î´Â ´õÇÒ °ÍÀÌ´Ù. C/C++ °³¹ßÀÚ´Â 70³â´ë ÄÚº¼ °³¹ßÀÚ¿Í ºñ½ÁÇÑ Ã³Áö°¡ µÇ¾î ¹ö·È°í »õ·Î ¹è¿ì´Â ÀþÀº ¼¼´ë´Â À¥ °³¹ß·Î ÀÔ¹®ÇÏ´Â°Ô º¸ÅëÀÌ´Ù.

À¥ °ü·Ã ±â¼úÀÇ ³­À̵µ´Â ³ôÁö ¾Ê¾Æµµ ¾Ë¾Æ¾ß ÇÒ ±â¼úÀÌ ³Ê¹« ¸¹¾ÆÁ® ¿ÀÈ÷·Á ´õ º¹ÀâÇØÁ³°í °áÄÚ ¸¸¸¸Ä¡ ¾Ê´Ù. µü Çϳª¸¸ ±íÀÌÀÖ°Ô ¹è¿ö¼­´Â ¾ÈµÇ¸é ÀÚÀßÇÏ°Ô ¹è¿ö¾ß ÇÒ °ú¸ñ°ú ±â¼úÀÌ ¸¹´Ù. À¥ ±â¼úÀÌ ¾î·Á¿î ±Ã±ØÀûÀÎ ÀÌÀ¯´Â °ú´ÙÇÑ ´Ù¾ç¼ºÀÌ´Ù.

 

¢º °°Àº ¸ñÀûÀÇ ±â¼úÀÌ ³Ê¹« ¸¹°í Àý´ë °­ÀÚ°¡ ¾ø´Ù. À¥ ÇÁ·¹ÀÓ¿öÅ©¸¸ ÇØµµ ¾Þ±Ö·¯, ¸®¾×Æ®, ºä°¡ °æÀïÁßÀÌ¸ç ±â¾÷¸¶´Ù ¼±È£ÇÏ´Â ±â¼úÀÌ ´Þ¶ó ¾î¿ ¼ö ¾øÀÌ ´Ù ¹è¿ö¾ß ÇÑ´Ù.

¢º º¯È­ÀÇ ¼Óµµ°¡ ³Ê¹« ºü¸£´Ù. Á÷¼±ÀûÀ¸·Î °³¼±µÇ´Â°Ô ¾Æ´Ï¶ó Áö±×Àç±× ½ÄÀ¸·Î °¥ÆÎÁúÆÎÇÏ¸ç ³ª¾Æ°£´Ù. °ÅÀÇ ¸ÅÀÏ ¹Ù²î¸ç ÈĹæ ȣȯ¼ºÀº °³³ª Áà ¹ö¸®¶ó´Â ½ÄÀ̶ó ¾Ö½á ¹è¿ö ºÁ¾ß ¾µ¸ð¾ø´Â ±â¼úµµ ¸¹´Ù.

¢º Âü¿©ÀÚ°¡ ³Ê¹« ¸¹°í ¿À¸¸°¡Áö ±â¼úÀ» µé°í ³ª¿Í ÃÖ°í¶ó°í ±¤°íÇØ ´ë´Ï °¥ÇǸ¦ Àâ±â ¾î·Æ´Ù. ±×·¸´Ù°í ¹«½ÃÇÒ ¼öµµ ¾ø°í 2% ¼º´É Çâ»óÀ» À§ÇØ ¿ÏÀüÈ÷ ´Ù½Ã ¹è¿ö ºÃÀÚ ¼Ò¸®¼Ò¹®¾øÀÌ »ç¶óÁ® ¹ö¸®´Â °Íµµ ¸¹´Ù.

¢º °³¹ß ¹× ½ÇÇà ȯ°æÀÌ °¡º¯ÀûÀ̶ó ÃÖÀûÀÇ ±ÃÇÕÀ» ¸ÂÃß±â ¾î·Æ´Ù. ºê¶ó¿ìÀú³ª Àåºñ°¡ õÂ÷¸¸º°À̶ó ¹ü¿ë¼ºÀ» È®º¸ÇÏ±â ¾î·Æ´Ù. ¿©±â¼­ Àß µÇ´Â°Ô Àú±â¼­´Â ¾ÈµÇ°í Áö±Ý µÇ´Â°Ô ³»³â¿¡µµ Àߵȴٴ º¸ÀåÀÌ ¾ø´Ù.

 

À¥ °³¹ßÀº ´ëºÎºÐ ¿ÀÇ ¼Ò½º ±â¹ÝÀÌ´Ù. Áß¾ÓÀÇ °­·ÂÇÑ ÅëÁ¦ÀÚ°¡ ¾ø¾î ÀÚÀ¯·Ó°Ô ¾÷±×·¹À̵åÇÏ´Ù º¸´Ï ´Ù¾çÇØÁú ¼ö¹Û¿¡ ¾ø´Ù. ³Ê¹« ÀÚÀ¯ºÐ¹æÇØ °ÅÀÇ ÁöÀúºÐÇÑ ¼öÁØÀÌ´Ù. ±×³ª¸¶ ±¹Á¦ÀûÀΠǥÁØ ÀçÁ¤À¸·Î ¾î´À Á¤µµÀÇ ¹æÇ⼺Àº À¯ÁöÇϰí ÀÖ¾î ´ÙÇàÀÌ´Ù.

ÀÌ·± »óȲÀÌ´Ù º¸´Ï ¾î¿ µµ¸® ¾øÀÌ ¼ø¼­´ë·Î Çϳª¾¿ ¹è¿ì°í ²÷ÀÓ¾øÀÌ µû¶ó°¡¾ß ÇÑ´Ù. ½Ã°£°ú ü·ÂÀÌ ¸¹ÀÌ °É¸± ¼ö¹Û¿¡ ¾ø°í ´Ü±â°£ÀÇ º­¶ôÄ¡±â·Î´Â µû¶óÀâÀ» ¼ö ¾ø´Ù. ´ÙÇàÈ÷ ´Ù ºñ½Á ºñ½ÁÀº ÇØ¼­ ÇÑ °ú¸ñÀ» Àß ÀÍÇô ưưÇÑ ±âÃʸ¦ ´ÙÁ® µÎ¸é ´ÙÀ½ °øºÎ´Â ÈξÀ ¼ö¿ùÇÏ°Ô ÇÒ ¼ö ÀÖ´Ù.

¸ÕÀú °øºÎÇÒ °ú¸ñ

À¥Àº Ŭ¶óÀ̾ðÆ®/¼­¹ö ±¸Á¶À̸ç Ŭ¶óÀÌ¾ðÆ®°¡ ¿äûÀ» º¸³»¸é ¼­¹ö°¡ ÀÀ´äÇÏ´Â ¹æ½ÄÀ¸·Î µ¿ÀÛÇÑ´Ù. ºê¶ó¿ìÀú¿¡¼­ ³×À̹ö¸¦ ¿­°í °Ë»ö½ÄÀ» ÀÔ·ÂÇÏ¿© ¿äûÇÏ¸é ³×À̹ö ¼­¹ö°¡ °Ë»ö °á°ú¸¦ ã¾Æ ÀÀ´äÇÏ´Â ½ÄÀÌ´Ù.

ÀÌ ½Ã½ºÅÛÀÌ µ¿ÀÛÇÏ·Á¸é Ŭ¶óÀÌ¾ðÆ®¿Í ¼­¹ö°¡ ´Ù ±¸ºñµÇ¾î ÀÖ¾î¾ß ÇÏ¸ç ³×Æ®¿öÅ©·Î ¿¬°áµÇ¾î ÀÖ¾î¾ß ÇÑ´Ù. »ç¿ëÀÚÂÊÀ» ¾Õ´Ü(front end)¶ó°í ÇÏ¸ç ¼­¹öÂÊÀ» µÞ´Ü(back end)¶ó°í ÇÑ´Ù. ÇϳªÀÇ ¾ÛÀ» ¿Ï¼ºÇÏ·Á¸é ¾çÂÊ ´Ù °³¹ßÇØ¾ß ÇÑ´Ù.

ÀÌ Ã¥ÀÇ ÁÖÁ¦ÀÎ ¸®¾×Æ®´Â ÇÁ·ÐÆ®, Áï ¾Õ´ÜÀÇ È­¸éÀ» ±¸ÇöÇÏ´Â ±â¼úÀÌ´Ù. ºê¶ó¿ìÀú¿¡ Á¤º¸¸¦ Ç¥½ÃÇÏ°í ¿¹»Ú°Ô ´Ùµë°í »ç¿ëÀÚ¿Í »óÈ£ÀÛ¿ë±îÁö ÇÏ·Á¸é °¢ ¿µ¿ªÀ» ´ã´çÇÏ´Â ±â¼úÀ» Á¶ÇÕÇØ¾ß ÇÑ´Ù. ¿©·¯ °¡Áö ±â¼úÀÌ »ç¿ëµÇÁö¸¸ ´ÙÀ½ ¼¼ °¡Áö°¡ ±âº»ÀÌ´Ù.

 

¢ºHTML : º¸¿©ÁÙ ³»¿ëÀ» ÀÛ¼ºÇÑ´Ù. ÅÂ±×¿Í ¹®ÀÚ¿­·Î ±¸¼ºµÇ¸ç ¾îµð¿¡ ¾î¶² ³»¿ëÀ» º¸ÀÏ °ÍÀÎÁö Á¤ÀÇÇÏ´Â ¹®¼­ÀÌ´Ù. ±¸Á¶°¡ °£´ÜÇØ ¹è¿ì±â ½±°í Á÷°üÀûÀÌ´Ù.

¢ºCSS : ÆäÀÌÁöÀÇ ¸ð¾çÀ» Á¤ÀÇÇÑ´Ù. È­¸é ¿ä¼Ò¸¦ ¹èÄ¡ÇÏ´Â ¹æ¹ý°ú »ö»ó, ¸ð¾çÀ» ÁöÁ¤ÇÑ´Ù. ´Ü¼øÇÏÁö¸¸ ¾çÀÌ ¸¹¾Æ ´Ù ¾Ë±â´Â ¾î·Æ°í ·¹ÆÛ·±½º¸¦ ã¾Æº¼ Áغñ¸¸ ÇØ µÎ¸é ÃæºÐÇÏ´Ù.

¢ºÀÚ¹Ù ½ºÅ©¸³Æ® : ¹öư Ŭ¸¯À̳ª ÆäÀÌÁö À̵¿½ÃÀÇ µ¿ÀÛÀ» Á¤ÀÇÇÏ¿© »ç¿ëÀÚ¿Í »óÈ£ÀÛ¿ëÇÑ´Ù. ¹®¹ý ÀÚü´Â °£´ÜÇÏÁö¸¸ ³ôÀº ¼÷·Ãµµ¸¦ ¿ä±¸ÇÑ´Ù.

 

ÀÌ ¼ÂÀº À¥ °³¹ßÀÇ ±âº»À̸ç Àü°ø ÇʼöÀÌ´Ù. À¥ °³¹ß ÇÁ·¹ÀÓ¿öÅ©´Â ¸ðµÎ ÀÌ ¼¼ ±â¼ú À§¿¡¼­ µ¿ÀÛÇϸç ÇÇÇÒ ¼ö ¾ø´Ù. ¸®¾×Æ®¸¦ °øºÎÇϱâ·Î Çß´Ù¸é ÀÌ¹Ì ´Ù ¾Ë°í ÀÖÀ» °ÍÀÌ¸ç ±×·¸Áö ¾Ê´Ù¸é ÇнÀÀÇ ¼ø¼­¸¦ À߸ø Á¤ÇÑ °ÍÀÌ´Ù.

¿ÏÀüÈ÷ ´Ù ¾Ë ÇÊ¿ä´Â ¾ø´õ¶óµµ °³³äÀº ÆÄ¾ÇÇÏ°í ¸ð¸£¸é ã¾Æº¼ Á¤µµ±îÁö´Â ÁغñÇØ µÎ¾î¾ß ÇÑ´Ù. ¸®¾×Æ® ÀÚüµµ ¾î·Á¿îµ¥ ¾ÕºÎºÐÀ» ã¾Æ°¡¸ç °°ÀÌ °øºÎÇÏ´Â °Ç ºñÈ¿À²ÀûÀÌ´Ù. ¹ÌºÐ, ÀûºÐÀ» ±¸±¸´Ü°ú ÇÔ²² °øºÎÇÒ ¼ö´Â ¾ø´Â ³ë¸©ÀÌ´Ù.

ÀÌ ¼¼ °ú¸ñ¸¸ ¾Ë¸é ¸®¾×Æ® °øºÎ¸¦ ÀÏ´Ü ½ÃÀÛÇÒ ¼ö´Â ÀÖ´Ù. ¹°·Ð ÀÌ°Ô ´Ù´Â ¾Æ´Ï¾î¼­ ½Ç¹«¸¦ ÇÏ·Á¸é ´õ ¸¹Àº °ÍÀ» °øºÎÇØ¾ß ÇÑ´Ù. ¸®¾×Æ®¿Í ÇÔ²² º´ÇàÇÏ¿© °øºÎÇØµµ µÇÁö¸¸ °¢°¢ÀÌ º°µµÀÇ ÁÖÁ¦À̹ǷΠµû·Î ½Ã°£À» ³»¼­ °øºÎÇÏ´Â °ÍÀÌ ÁÁ´Ù.

 

¢ºµ¥ÀÌÅͺ£À̽º : µ¥ÀÌÅ͸¦ ´Ù·ç·Á¸é Äõ¸®´Â ÀÛ¼ºÇÒ ¼ö ÀÖ¾î¾ß ÇÑ´Ù. ¾Õ´Ü¸¸ ÀÛ¾÷ÇÑ´Ù¸é ÀÏ´ÜÀº ¸ô¶óµµ µÇÁö¸¸ ÃÖ¼ÒÇÑ °³³äÀº ¾Ë°í ÀÖ¾î¾ß ÇÑ´Ù.

¢ºNode.js : ¼­¹öÃø ±â¼úÀÌ¸ç ¹é´Ü°ú Çù¾÷ÇÏ·Á¸é ¾î´À Á¤µµ´Â ¾Ë¾Æ¾ß ÇÑ´Ù. ¸®¾×Æ®ÀÇ ½ÇÇà ȯ°æÀ̾ ÃÖ¼ÒÇÑ ÆÐŰÁö °ü¸®´Â ÇÒ ¼ö ÀÖ¾î¾ß ÇÑ´Ù.

¢ºÅ¸ÀÔ½ºÅ©¸³Æ® : ´ë±Ô¸ð ÇÁ·ÎÁ§Æ®¸¦ ¾ÈÁ¤ÀûÀ¸·Î ¼öÇàÇϱâ À§ÇØ ÇÊ¿äÇϸç Á¡Á¡ ´ëÁßÈ­µÇ°í ÀÖ¾î ÇʼöÀûÀÌ´Ù.

 

ÀÌ ¿Ü¿¡ ½¢ÇÏ°Ô ¸¹Àº ¶óÀ̺귯¸®¿Í °³¹ß ȯ°æµµ ÀÍÇô¾ß ÇÑ´Ù. °¥ ±æÀÌ ¸ÖÁö¸¸ ±âÃʰ¡ źźÇÏ¸é ³ª¸ÓÁö´Â ÆÁ ½Àµæ ¼öÁØÀ¸·Î ÀÍÈú ¼ö ÀÖ´Ù. ÀÏ´ÜÀº Àü°ø Çʼö 3°ú¸ñ°ú ¸®¾×Æ®¿¡ Ä¡ÁßÇÏ¿© ½Ç½ÀÇÏÀÚ.

´ÜÀÏ ÆäÀÌÁö ¾Û

ÃʱâÀÇ À¥Àº º¸¿©ÁÙ ³»¿ë¸¶´Ù ÆäÀÌÁö¸¦ µû·Î ÀÛ¼ºÇß´Ù. ¿äûÀ» º¸³»¸é °á°ú¸¦ ´ãÀº ÆäÀÌÁö¸¦ ´Ù½Ã º¸³» ÁÖ´Â ½ÄÀÌ´Ù. ¿©·¯ ÆäÀÌÁö·Î ±¸¼ºµÈ ±¸Á¶¸¦ MPA(Multiple Page Application)À̶ó°í ÇÑ´Ù. ¿¹¸¦ µé¾î 1 + 2¸¦ ¿äûÇÏ¿© 3À̶ó´Â °è»ê °á°ú¸¦ ¹Þ´Â´Ù¸é ´ÙÀ½ °úÁ¤À» °ÅÃÄ ½ÇÇàÇÑ´Ù.

¿äûÀ» ¹ÞÀº ¼­¹ö´Â °è»ê °á°ú¸¦ result.htmlÀ̶ó´Â º°µµÀÇ ¹®¼­·Î ¸¸µé¾î º¸³» ÁÖ¸ç ºê¶ó¿ìÀú´Â ÀÌ ÆäÀÌÁö·Î ÀüȯÇÑ´Ù. µ¶¸³ÀûÀÎ ÆäÀÌÁö¸¦ °¢°¢ µû·Î ¸¸µå´Ï ½±Áö¸¸ ÆäÀÌÁö ÀüȯÀÌ Àæ°í ¸Å¹ø Åë½ÅÀÌ ÀÌ·ç¾îÁö¹Ç·Î ¼Óµµ°¡ ´À¸®´Ù. °Ë»öÀ» ÇÏ¸é °Ë»ö ÆäÀÌÁö°¡ »õ·Î ¿­¸®¸ç ÁÖ¼Òµµ ¹Ù²î´Âµ¥ ÀÌ·± Á¤ÅëÀûÀÎ ¹æ½ÄÀÌ MPAÀÌ´Ù.

ÀÌ¿¡ ºñÇØ ÇϳªÀÇ ÆäÀÌÁö·Î µÈ ±¸Á¶¸¦ SPA(Single Page Application)¶ó°í ÇÑ´Ù. »õ·Î¿î ÆäÀÌÁö·Î ¹Ù²î´Â°Ô ¾Æ´Ï¶ó °°Àº ÆäÀÌÁö°¡ ÀϺΠ¹Ù²î¸ç ÁÖ¼Ò´Â ±×´ë·ÎÀÌ´Ù. ¿äûÀ» º¸³»µÇ ¼­¹ö´Â °è»ê °á°ú¸¦ À¥ ÆäÀÌÁö°¡ ¾Æ´Ñ XML ¹®¼­³ª JSON ¹®ÀÚ¿­¿¡ ´ã¾Æ º¸³½´Ù. Ŭ¶óÀÌ¾ðÆ®´Â ÀÌ ¹®¼­¸¦ ÇØ¼®ÇÏ¿© ¹Ì¸® Á¤ÇØÁø ¿ä¼Ò¿¡ Ãâ·ÂÇÑ´Ù.

¿äû°ú ÀÀ´äÀÌ ºñµ¿±âÀûÀ¸·Î ¼öÇàµÇ´Âµ¥ ÀÌ°É °¡´ÉÇÏ°Ô ÇÏ´Â ±â¼úÀÌ AJAXÀÌ´Ù. MPA´Â ÀÀ´äÀ» ¹Þ±â Àü¿¡ µ¿±âÀûÀ¸·Î ±â´Ù·Á¾ß Çϴµ¥ ºñÇØ SPA´Â ºñµ¿±â·Î ¿äû¸¸ º¸³»°í ÀÀ´äÀÌ ¿Ã¶§±îÁö ´Ù¸¥ ÀÏÀ» ÇÒ ¼ö ÀÖ´Ù.

ÆäÀÌÁö¸¦ ¹Ù²Ù´Â°Ô ¾Æ´Ï¶ó ¹Ì¸® ¹èÄ¡ÇØ ³õÀº ¿ä¼Ò¿¡ °á°ú¸¸ Ãâ·ÂÇÏ¸é µÈ´Ù. ½ÇÇàÁß¿¡ À¥ÆäÀÌÁö¸¦ ¿øÇϴ´ë·Î ÁÖ¹«¸¦ ¼ö ÀÖ´Ù. ¸¶Ä¡ ÀÀ¿ë ÇÁ·Î±×·¥À» ¾²µíÀÌ ÇÑ ÆäÀÌÁö ¾È¿¡¼­ ¸ðµç ÀÏÀ» ó¸®ÇÒ ¼ö ÀÖÀ¸¸ç È­¸é ÀüȯÀÌ ¾øÀ¸´Ï ±ô¹ÚÀÓµµ ´úÇÏ´Ù.

Á¤º¸¸¦ º¸¿© Áֱ⸸ ÇÏ´Â°Ô ¾Æ´Ï¶ó »ç¿ëÀÚÀÇ ÀÔ·ÂÀ» ¹Þ¾Æ µ¿ÀÛÀ» ó¸®Çϱ⠶§¹®¿¡ À¥ ÆäÀÌÁö°¡ ¾Æ´Ñ À¥ ¾ÛÀ̶ó°í ÇÑ´Ù. ÆäÀÌÁö Çϳª°¡ °ð ÇÁ·Î±×·¥ÀÎ ¼ÀÀÌ´Ù. »ç¿ëÀÚ´Â ¿¢¼¿À̳ª ¿öµå¸¦ ¾²µí À¥ÆäÀÌÁö ¾È¿¡¼­ ¿øÇÏ´Â ÀÛ¾÷À» ´Ù ÇÒ ¼ö ÀÖ´Ù.

ÇÁ·¹ÀÓ¿öÅ©

À¥ ¾ÛÀº »ç¿ëÀÚÀÇ ÀÔ·ÂÀ» ¹Þ¾Æ ó¸®ÇÏ´Â ÇÁ·Î±×·¥À̹ǷΠ¿øÄ¢ÀûÀ¸·Î ÀÚ¹Ù½ºÅ©¸³Æ®·Î ¸ðµç °ÍÀ» ´Ù ÇÒ ¼ö ÀÖ´Ù. ±×·¯³ª ½ºÅ©¸³Æ®·Î ¸ðµç °ÍÀ» ÄÚµùÇÏ¸é ¾î·Æ±âµµ Çϰí ÀÏÀÏÀÌ Äڵ带 Â¥¾ß ÇÏ´Ï »ý»ê¼ºµµ ¶³¾îÁø´Ù. ÆíÀǼº°ú »ý»ê¼ºÀ» º¸ÀåÇÏ´Â °í¼öÁØÀÇ Å¬¶óÀ̾ðÆ®Ãø ÇÁ·¹ÀÓ¿öÅ©°¡ ¸¹ÀÌ ¹ßÇ¥µÇ¾î Àִµ¥ ´ÙÀ½ 3°¡Áö°¡ ÀαⰡ ¸¹´Ù.

 

¢ºAngular : ±¸±ÛÀÌ ¸¸µé°í »ç¿ëÇÑ´Ù. AngularJS 1.x´Â ÀÚ¹Ù½ºÅ©¸³Æ® »ç¿ëÇÏ´Ù ¹öÀü2¿¡¼­ ŸÀÔ½ºÅ©¸³Æ®¸¦ »ç¿ëÇϸ鼭 À̸§¿¡ JS¸¦ ¶¼ ³Â´Ù. ¿©±â Àú±â Ȱ¿ëÇÒ ¼ö ÀÖ´Â ÀÌÁ¡Àº ÀÖÁö¸¸ ¹è¿ì±â ¾î·Á¿ö »ó´ëÀûÀ¸·Î ÀαⰡ ´úÇÏ´Ù.

¢ºReact : ¸ÞŸ(ÆäÀ̽ººÏ)°¡ °³¹ßÇÑ ¶óÀ̺귯¸®ÀÌ´Ù. SPA(Single Page Application)¸¦ ÀüÁ¦·Î ÇÏ¸ç °¡»ó DOMÀ» Ȱ¿ëÇÏ¿© ·£´õ¸µÀÌ ºü¸£´Ù. HTMLÀ» JSX(JavaScript XML)·Î Ç¥ÇöÇϸç ÄÄÆ÷³ÍÆ®¸¦ Á¶¸³ÇÏ¿© ÆäÀÌÁö¸¦ ¸¸µç´Ù.

¢ºVue.js : ÀÚ¹Ù½ºÅ©¸³Æ® ±â¹ÝÀÌ¸ç °¡»ó DOM Ȱ¿ëÀ¸·Î ¼Óµµ°¡ ºü¸£´Ù. ¹®¹ýÀÌ °£´ÜÇÏ¿© ±âÁ¸ °³¹ßÀÚ°¡ ÀûÀÀÇϱ⠽±Áö¸¸ ÄÚµå Çü½ÄÀÌ ³Ê¹« ÀÚÀ¯·Î¿ö ´ë±Ô¸ð ÇÁ·ÎÁ§Æ®¿¡ Àû¿ëÇϱâ´Â ¾î·Á¿î ´ÜÁ¡ÀÌ ÀÖ´Ù.

 

¼Â´Ù ³ëµå ȯ°æ¿¡¼­ ½ÇÇàµÇ¸ç npm ÆÐŰÁö·Î ¹èÆ÷ÇÑ´Ù. https://npmtrends.comÀº °¢ ÆÐŰÁöÀÇ ´Ù¿î·Îµå ȸ¼ö¸¦ ºñ±³ÇØ º¸¿©Áִµ¥ À̸¦ ÅëÇØ ÀαâÀÇ Á¤µµ¸¦ °¡´ÆÇÒ ¼ö ÀÖ´Ù. angular´Â °ÅÀÇ ¹Ù´ÚÀ» ±â°í ÀÖ°í react¿Í vue°¡ °¢ÃàÀüÀ» ¹úÀ̰í ÀÖ´Â »óÅÂÀ̳ª ¸®¾×Æ®ÀÇ Á¡À¯À²ÀÌ ´õ ³ô´Ù.

¹°·Ð ÀαⰡ ¸¹´Ù°í ÇØ¼­ °¡Àå ÁÁÀº ¶óÀ̺귯¸®¶ó´Â °ÍÀº ¾Æ´Ï´Ù. ÇÁ·ÎÁ§Æ®ÀÇ ±Ô¸ð¿Í ¸ñÀû¿¡ µû¶ó ÀûÇÕÇÑ ¶óÀ̺귯¸®¸¦ Àß ¼±ÅÃÇØ¾ß ÇÑ´Ù. °æÀï ¶óÀ̺귯¸®¶ó°í ÇØµµ ÁöÇâÇÏ´Â ¸ñÀûÀº °°°í À¥ ¾ÛÀ» ±¸ÇöÇÏ´Â Ãֽбâ¼úÀº ´Ù ºñ½ÁÇØ¼­ Çϳª¸¦ Àß ÀÍÈ÷°í °³³äÀ» ¾Ë¾Æ µÎ¸é ³ª¸ÓÁöµµ ½±°Ô Àͼ÷ÇØÁú ¼ö ÀÖ´Ù.

1-2.¸®¾×Æ®

¿ª»ç

¸®¾×Æ®´Â ¸ÞŸ°¡ 2011³âºÎÅÍ ÆäÀ̽ººÏÀÇ È­¸é ¾÷µ¥ÀÌÆ® ¼Óµµ¸¦ °³¼±Çϱâ À§ÇØ °³¹ßÀ» ½ÃÀÛÇß´Ù. ù ¹öÀüÀº ÀÚ¹Ù½ºÅ©¸³Æ®¿¡¼­ HTML ¹®¼­¸¦ µ¿ÀûÀ¸·Î »ý¼ºÇÏ´Â ¹æ¹ýÀ» µµÀÔÇÏ¿© ±¤°í Ç÷§Æû¿¡ Àû¿ëÇß´Ù. 2013³â ¿ÀǼҽº·Î ÀüȯÇÑ ÈÄ °¡»ó µ¼, Router, Redux, Hooks µîÀ» Áö¼ÓÀûÀ¸·Î Ãß°¡ÇÏ¿© ±â´ÉÀ» È®ÀåÇØ ¿Ô´Ù. 2026³â ÇöÀç ÃֽйöÀüÀº 19.2ÀÌ´Ù.

 

¹ßÇ¥³âµµ

¹öÀü

ÁÖ¿ä Æ¯¼º

2013

0.3

ù ¿ÀǼҽº °ø°³ ¹öÀü. JSX ±¸¹® »ç¿ë

2015

0.14

React¿Í React DOM ÆÐŰÁö ºÐ¸®. ÇÔ¼öÇü ÄÄÆ÷³ÍÆ® Ãß°¡

2016

15

·£´õ¸µ ¼º´É Çâ»ó. ÀÚ¹Ù½ºÅ©¸³Æ® ES6 Àû¿ë

2017

16

Fiber µµÀÔÀ¸·Î ºñµ¿±â ·£´õ¸µ °¡´É

2019

16.8

Hooks ±â´É. useState, useEffect. °¡µ¶¼º°ú Àç»ç¿ë¼º Çâ»ó

2020

17

À̺¥Æ® ó¸® ¹æ¹ý °³¼±

2022

18

µ¿½Ã¼º ±¸Çö, ÀÚµ¿ ¹èÄ¡, ºñµ¿±â ·£´õ¸µ ÃÖÀûÈ­

2025

19

useTransition, useActionState Ãß°¡

 

ÃֽйöÀüÀ» »ç¿ëÇÏ´õ¶óµµ ÀÌÀü ¼Ò½º¸¦ ºÁ¾ß ÇÒ ÀÏÀÌ ÇÊ¿¬ÀûÀ¸·Î ¹ß»ýÇϱ⠶§¹®¿¡ ¿ª»ç¸¦ ¾î´À Á¤µµ´Â ¾Ë¾Æ¾ß ÇÑ´Ù. ·¹°Å½Ã ÇÁ·ÎÁ§Æ®¸¦ À̾ °³¹ßÇÒ ¼öµµ ÀÖ°í »ùÇà ¼Ò½º°¡ ÀÌÀü ¹öÀüÀ¸·Î µÇ¾î ÀÖ´Â °æ¿ìµµ ÈçÇÏ´Ù. ȸ»ç¿¡¼­´Â ÃֽйöÀüº¸´Ù´Â ¾ÈÁ¤È­µÈ ¹öÀüÀ» ¼±È£Çϰí Çѹø ¼±ÅÃÇÑ ¹öÀüÀ» Àß ¹Ù²ÙÁö ¾Ê´Â´Ù.

¶Ç ¾î¶² °æ¿ì´Â ¹öÀüÀ» ³·Ãß¾î °³¹ßÇØ¾ß ÇÏ´Â °æ¿ìµµ ÀÖ´Ù. ¾ÆÁ÷µµ À©µµ¿ì³ª ¸ÆÀ» 10³âÀü ¿î¿µÃ¼Á¦·Î ¾²´Â »ç¶÷ÀÌ ÀÖ°í ¼ÂÅé¹Ú½º³ª ½º¸¶Æ®TVó·³ ¾÷±×·¹À̵尡 °ï¶õÇÑ Àåºñµµ ÀÖ´Ù. ¾ðÁ¦ ¾î¶² ±â´ÉÀÌ µé¾î°¬´ÂÁö´Â ´ëÃæ ÆÄ¾ÇÇØ µÎ¾î¾ß È¥¶õÀÌ ¾ø´Ù.

¸®¾×Æ®´Â ÇÁ·¹ÀÓ¿öÅ©°¡ ¾Æ´Ñ ¶óÀ̺귯¸®ÀÌ´Ù. ÀÌ µÑÀº ÁÖ È帧À» ´©°¡ °¡Áö´ÂÁö°¡ ´Ù¸¥µ¥ ÇÁ·¹ÀÓ¿öÅ©´Â ±¸Á¶¸¦ °­Á¦ÇÏÁö¸¸ ¶óÀ̺귯¸®´Â ÇÊ¿äÇÒ ¶§¸¸ È£ÃâÇØ¼­ ¾²´Â °ÍÀÌ´Ù. »ó´ëÀûÀ¸·Î °¡º±´Ù.

¸®¾×Æ®´Â ¿À·ÎÁö Ŭ¶óÀ̾ðÆ®ÂÊÀÇ ºä¸¸ ´Ù·é´Ù. »ç¿ëÀÚÀÇ ÀԷ¿¡ ¾î¶»°Ô ¹ÝÀÀÇÏ¿© ¾î¶»°Ô ±×¸± °ÍÀΰ¡¸¸ ó¸®ÇÑ´Ù. ¹«¾ùÀ» º¸¿©ÁÙ °ÍÀÎÁö´Â ¸ð¸¥´Ù. Ç®½ºÅðú ´Ù¾çÇÑ Àåºñ¸¦ Áö¿øÇÏ´Â Ãß°¡ÀûÀÎ °ú¸ñÀÌ ´õ ÀÖ´Ù.

 

¢ºNext.js : ¸®¾×Æ®ÀÇ ¼­¹öÃø ±â¼úÀÌ´Ù. µ¥ÀÌÅ͸¦ °ü¸®ÇÑ´Ù.

¢º¸®¾×Æ® ³×ÀÌÆ¼ºê : ¸®¾×Æ®¸¦ ¾Èµå·ÎÀ̵å, iOS¿¡ Àû¿ëÇÑ ¸ð¹ÙÀÏ ÇÁ·¹ÀÓ¿öÅ©ÀÌ´Ù.

 

¹è¿ì±â ½±´Ù°í ÁÖÀåÇÏÁö¸¸ óÀ½¿¡´Â »ç½ÇÀ̾úÀ»Áö ¸ô¶óµµ Áö±ÝÀº ±×·¸Áö ¾Ê´Ù. ¸®¾×Æ®¸¸ º¸¸é °£´ÜÇØ º¸ÀÌÁö¸¸ ¸ðµç °ÍÀ» ´Ù °®Ãß°í ÀÖÁö´Â ¾Ê¾Æ ÁÖº¯ ¶óÀ̺귯¸®¸¦ ÇʼöÀûÀ¸·Î »ç¿ëÇØ¾ß ÇÑ´Ù. »ç¿ëÇÒ ¼ö ÀÖ´Â ¶óÀ̺귯¸®¸¦ ÃëÇâ¿¡ ¸Â°Ô °ñ¶ó ¾µ ¼ö ÀÖ´Â °ÍÀº ÀåÁ¡ÀÌÁö¸¸ ±×·¯·Á¸é ¸ðµç ¶óÀ̺귯¸®¸¦ ¼··ÆÇØ ºÁ¾ß ÇÑ´Ù. °øºÎÇÒ ¾çÀÌ ¸¹°í °è¼Ó ¹Ù²ï´Ù´Â Á¡¿¡¼­ ÇǰïÇÏÁö¸¸ À¥ °³¹ßÀÇ ÀϹÝÀûÀΠƯ¼ºÀ̶ó ¾î¿ ¼ö ¾ø´Ù.

µµ¿ò¸»

ȨÆäÀÌÁö´Â https://react.dev/À̳ª ¿µ¹® »çÀÌÆ®ÀÌ´Ù. ¿©·¯ ¾ð¾î·Î ¹ø¿ªµÇ¾î Àִµ¥ ÇÁ¶û½º, Æ¢¸£Å°¿¹, ½ºÆäÀÎ ±×¸®°í ÇÑÁßÀϱîÁö 6°³±¹Àº ¿Ïº®ÇÑ ¹ø¿ªÀ» Á¦°øÇÑ´Ù. µ¶ÀÏ, ·¯½Ã¾Æ, ÀÌÅ»¸®¾Æµµ ÀϺΠ¹ø¿ª¸¸ Á¦°øÇϴµ¥ ºñÇØ ¿ì¸®³ª¶óÀÇ À§»óÀÌ ²Ï ³ô´Ù. µû¶ó¼­ ¿ì¸®´Â ´ÙÀ½ »çÀÌÆ®¸¦ ¹æ¹®ÇÏ¸é µÈ´Ù.

 

https://ko.react.dev

ÀÚ½À¼­¿Í ·¹ÆÛ·±½º¸¦ Á¦°øÇÑ´Ù. ÀÚ½À¼­ÀÇ ¿¹Á¦°¡ ²Ï Àß ¸¸µé¾îÁ® ÀÖ°í ¼³¸íµµ Àß µÇ¾î ÀÖÀ¸¹Ç·Î Çѹø¾¿ ÀÐ¾î º¸´Â °ÍÀÌ ÁÁ´Ù. ÇнÀÇÏ±â ÆäÀÌÁö¿¡´Â ¸®¾×Æ® ±âÃʺÎÅÍ Æ½ÅÃÅä °ÔÀÓÀ» ¸¸µé¸é¼­ ÁÖ¿ä °³³äÀ» ¼³¸íÇϰí Props¿Í State±îÁö ½Ç½ÀÀ» ÅëÇØ »ç¿ë ¹æ¹ýÀ» Å͵æÇÏ°Ô ÇØ ÁØ´Ù.

API Âü°í¼­´Â ÁÖÁ¦º° ·¹ÆÛ·±½º¸¦ Àß Á¤¸®ÇØ ³õ¾Æ ½Ç¹«Áß¿¡ ã¾Æº¸±â Æí¸®ÇÏ°Ô ±¸¼ºµÇ¾î ÀÖ´Ù. ¹ø¿ªÀÇ Áúµµ ³ô°í ¿¹Á¦µµ ÇÙ½ÉÀûÀÎ ³»¿ëÀ» Àß ¼³¸íÇϰí ÀÖ¾î Å« µµ¿òÀÌ µÈ´Ù. Çѹø¿¡ ´Ù º¸´Â °Íº¸´Ù µµ¿ò¸»ÀÇ ±¸Á¶¸¦ Àß ÆÄ¾ÇÇØ µÎ°í ÇÊ¿äÇÒ ¶§¸¶´Ù ã¾Æº¸´Â °ÍÀÌ ÁÁ´Ù.

¿äÁòÀº chatgpt³ª gemini¿¡ ¹°¾î º¸¸é Ä£ÀýÇÏ°Ô Àß °¡¸£ÃÄ ÁØ´Ù. ½Ç¹«¸¦ ÇÒ ¶§µµ ¸¶Âù°¡ÁöÁö¸¸ ÇнÀÇÒ ¶§ Àß È°¿ëÇØ¾ß ÇÑ´Ù. ´Ù¸¸ ¹» ¹°¾î ºÁ¾ß ÇÒÁö¸¦ ¾Ë¾Æ¾ß ÇϹǷΠ¸®¾×Æ®ÀÇ ±¸Á¶¿¡ ´ëÇØ¼­´Â ¾î´À Á¤µµ ¾Ë°í ÀÖ¾î¾ß Á¤È®ÇÑ ´äÀ» ±¸ÇÒ ¼ö ÀÖ´Ù.

°¡»óµ¼

¸®¾×Æ®ÀÇ Æ¯Â¡ ¹× ÀåÁ¡À» Á¤¸®ÇØ º¸ÀÚ. ´çÀå ¿Í ´êÁö ¾Ê´õ¶óµµ ÀÌÇØµÇ´Â ºÎºÐ±îÁö¸¸ Á¢¼öÇØ µÎ¸é µÈ´Ù. ½ÇÁ¦ ¿¹Á¦¸¦ ¸¸µé¾î¼­ »ìÆì º¸´Â°Ô Á¦ÀÏ ÁÁÁö¸¸ óÀ½ºÎÅÍ ³Ê¹« ¸¹Àº °ÍÀ» ¾Ë¾Æ¾ß ÇØ¼­ ½±Áö ¾Ê´Ù. ¿©±â¼­´Â Á¤È®ÇÏÁö´Â ¾Ê´õ¶óµµ ´ëÃæÀÇ ¿¹Á¦·Î °³³ä ÆÄ¾Ç À§ÁÖ·Î ¼³¸íÇÑ´Ù.

ºê¶ó¿ìÀú´Â HTML ¹®¼­¸¦ ºÐÇØÇÏ¿© °ü¸®ÇÑ´Ù. ÀüüÀûÀ¸·Î ±ä ¹®ÀÚ¿­ÀÌÁö¸¸ ºÎºÐ ºÎºÐÀ» ´Ù·ç±â ½±Áö ¾Ê¾Æ ³»ºÎÀûÀ¸·Î´Â ³ëµå·Î Àü°³ÇÑ´Ù. ű×, ¼Ó¼º, ¹®ÀÚ¿­ µî ÆäÀÌÁö¸¦ ±¸¼ºÇÏ´Â ¿ä¼Ò¸¦ ³ëµå¶ó°í ÇÏ¸ç ³ëµå³¢¸® °èÃþÀ» ÀÌ·é´Ù. ³ëµå°¡ °èÃþÀ» ÀÌ·é °ÍÀ» DOMÀ̶ó°í ÇÑ´Ù. ´ÙÀ½ ¹®¼­¸¦ º¸ÀÚ.

 

h2para.html

<!DOCTYPE html>

<html>

<head>

    <meta charset="utf-8">

    <title>sample</title>

</head>

<body>

    <h2 id="head">Á¦¸ñÀÌ´Ù.</h2>

    <p id="para">À̰ÍÀº <b>¹®´Ü</b>ÀÌ´Ù.</p>

</body>

</html>

 

Å©·Ò ºê¶ó¿ìÀú¿¡ ÀÌ ¹®¼­¸¦ ¿­¾î º¸ÀÚ. F12¸¦ ´­·¯ °³¹ßÅøÀ» ¿­°í Elements ÅÇÀ» º¸¸é ¹®¼­ÀÇ ±¸Á¶¸¦ º¸¿©ÁØ´Ù.

 

body ³ëµå ¾È¿¡ h2 ³ëµå¿Í ¹®ÀÚ¿­ÀÌ ÀÖ´Ù. p ³ëµå¾È¿¡ ¹®ÀÚ¿­°ú b ³ëµå°¡ ÀÖ°í b ³ëµå¾È¿¡´Â ¶Ç ¹®ÀÚ¿­ÀÌ ÀÖ´Ù. °³¹ßÅøÀº ÀÌ ±¸Á¶¸¦ °£´ÜÇÏ°Ô º¸¿© ÁÖÁö¸¸ ½ÇÁ¦·Î´Â ¹®ÀÚ¿­À̳ª ¼Ó¼º, ½ÉÁö¾î ÁÖ¼®±îÁöµµ ÇϳªÀÇ ³ëµå·Î Ãë±ÞÇÑ´Ù. À§ ¹®¼­ÀÇ DOM Æ®¸®¸¦ ±×·Á º¸¸é ÀÌ·± ¸ð¾çÀÌ´Ù.

ºê¶ó¿ìÀú°¡ HTML ¹®¼­¸¦ ÀÌ·¸°Ô Àß°Ô ³ª´©¾î °ü¸®ÇÏ´Â ÀÌÀ¯´Â °³º°ÀûÀ¸·Î ¼öÁ¤ÇÒ ¶§ ³ëµå ´ÜÀ§·Î ¹Ù²Ù¾î µÎ¸é È¿À²ÀûÀ̱⠶§¹®ÀÌ´Ù. ÀÌ ¹®¼­´Â ¹Ý¸»·Î µÇ¾î Àִµ¥ Á¸´ë¸»·Î ¹Ù²Ù°í ¸¶Ä§Ç¥µµ ³Ö¾î º¸ÀÚ. ½ºÅ©¸³Æ®·Î ´ÙÀ½ µÎ µ¿ÀÛÀ» ¼öÇàÇØ¾ß ÇÑ´Ù.

 

¨ç h2 ³»ºÎÀÇ ÅØ½ºÆ®¸¦ ã¾Æ ³»¿ëÀ» "Á¦¸ñÀÔ´Ï´Ù."·Î ¹Ù²Û´Ù.

¨è pÀÇ ¸¶Áö¸· ÀÚ½Ä ³ëµå¸¦ ã¾Æ ³»¿ëÀ» "ÀÔ´Ï´Ù.'·Î ¹Ù²Û´Ù.

 

µÎ µ¿ÀÛ ¸ðµÎ ÀÚ¹Ù½ºÅ©¸³Æ®·Î °£´ÜÈ÷ ±¸ÇöÇÒ ¼ö ÀÖ´Ù. ´ÙÀ½ ½ºÅ©¸³Æ®¸¦ <p> ÅÂ±× ¾Æ·¡ÂÊ¿¡ ÀÛ¼ºÇÏ¸é ¹®¼­¸¦ ¿­ÀÚ ¸¶ÀÚ ³ëµåÀÇ ³»¿ëÀ» ¹Ù²Û´Ù. ¹öưÀ» ¹èÄ¡ÇØ µÎ°í Ŭ¸¯ÇÒ ¶§ µ¿ÀÛÇÏ´Â °Íµµ °¡´ÉÇÏ´Ù.

 

    <script>

        let head = document.getElementById("head")

        head.firstChild.nodeValue = "Á¦¸ñÀÔ´Ï´Ù."

        let para = document.getElementById("para")

        para.lastChild.nodeValue = "ÀÔ´Ï´Ù."

    </script>

 

SPA´Â ÇÑ ÆäÀÌÁö¿¡¼­ ¸ðµç °ÍÀ» ´Ù ó¸®ÇØ¾ß ÇϹǷΠDOMÀ» Á¶ÀÛÇÒ ÀÏÀÌ ºó¹øÇϸç Á¶ÀÛÀÇ ¾çµµ ¸¹´Ù. ±×·¯³ª DOMÀ» Á¶ÀÛÇÏ´Â °ÍÀº ±²ÀåÈ÷ ºñ½Î°í ´À¸° µ¿ÀÛÀÌ´Ù. DOM ÀÚü´Â ºü¸£Áö¸¸ ºÎ°¡ÀûÀ¸·Î °°ÀÌ Ã³¸®ÇØ¾ß ÇÒ ÀÛ¾÷ÀÌ ¸¹´Ù. nodeValue = "Á¦¸ñÀÔ´Ï´Ù." ´ëÀÔÀ» ÇÏ´Â Áï½Ã ºê¶ó¿ìÀú´Â Àüü È­¸éÀ» ´Ù½Ã ±×¸°´Ù. ¹®ÀÚ¿­À» ¹Ù²Ù´Â °£´ÜÇÑ ÀÛ¾÷ÀÌÁö¸¸ ¾Æ¹«¸® ÀÛÀº º¯È­¶óµµ ·¹À̾ƿôÀÌ Åë°·Î ¹Ù²ð ¼ö ÀÖ¾î DOM Æ®¸®¸¦ ÀçÁ¤·ÄÇÏ°í ½ºÅ¸ÀÏ½ÃÆ®¸¦ Àû¿ëÇÏ¿© È­¸éÀ» ´Ù½Ã ±×¸°´Ù.

¹º°¡¸¦ º¯°æÇϴµ¥ ºñ¿ëÀÌ µå´Â °ÍÀº ¾î¿ ¼ö ¾ø´Ù. ±×·¯³ª nodeValue = "ÀÔ´Ï´Ù."¸¦ ´ëÀÔÇÒ ¶§µµ ¶È°°Àº ÀÏÀ» Çѹø ´õ ¹Ýº¹ÇÏ´Â ºñÈ¿À²ÀÌ ÀÖ´Ù. ù ¹øÂ° ´ëÀÔÇÒ ¶§ °ðÀÌ¾î ´ÙÀ½ ´ëÀÔÀÌ ¶Ç ÀÖ´Ù´Â °ÍÀ» ¹Ì¸® ¾Ë¾Ò´Ù¸é À̶§´Â DOM Æ®¸®¸¦ ¹Ì¸® ºÐ¼®ÇÒ ÇÊ¿ä ¾ø´Ù. ¸¶Áö¸· º¯°æ½Ã ¸ô¾Æ¼­ ÇѲ¨¹ø¿¡ Á¤·ÄÇÏ¸é µÈ´Ù. ±×·¯³ª ÀÚ¹Ù½ºÅ©¸³Æ®´Â ÄÚµåÀÇ ´ÙÀ½ÁÙ¿¡ ¹¹°¡ ÀÖ´ÂÁö ¹Ì·¡¸¦ ¿¹ÃøÇÒ ¼ö´Â ¾ø±â ¶§¹®¿¡ DOM Æ®¸®¸¦ ¹Ù²Ü ¶§¸¶´Ù Áï½Ã À¥ÆäÀÌÁö¸¦ °»½ÅÇÒ ¼ö¹Û¿¡ ¾ø´Â ÇѰ谡 ÀÖ´Ù.

°¡»ó DOMÀº ÀÌ·± ¹®Á¦¸¦ ÇØ°áÇϱâ À§ÇØ ¸Þ¸ð¸®¿¡ ½ÇÁ¦ DOMÀÇ »çº»À» ¸¸µé¾î µÐ´Ù. ¸ðµç º¯°æÀ» º¸ÀÌÁö ¾Ê´Â °¡»ó DOM¿¡¼­ ¼öÇàÇϸé È­¸é ±ô¹ÚÀÓÀÌ ¾ø°í º¯°æ »çÇ×À» ¸ð¾Æ µÎ¾ú´Ù°¡ ÃÖÁ¾ÀûÀ¸·Î ÇѲ¨¹ø¿¡ ¹Ý¿µÇÏ¿© ¼Óµµµµ ºü¸£´Ù.

°¡»ó DOMµµ º°µµÀÇ ¸Þ¸ð¸®¸¦ ¾²°í »çº»°ú ¿øº»À» ºñ±³Çϴ ó¸®°¡ µé¾î°¡ ±× ÀÚü°¡ ºü¸¥ °ÍÀº ¾Æ´Ï´Ù. Áß¿äÇÑ °ÍÀº "¸ð¾Æ¼­ ÇѲ¨¹ø¿¡" ¾÷µ¥ÀÌÆ®ÇÑ´Ù´Â Á¡ÀÌ´Ù. ³»ºÎ¿¡¼­ ¹«½¼ ÁþÀ» ÇÏµç ½ÇÁ¦ DOMÀº µü Çѹø¸¸ ¹Ù²î±â ¶§¹®¿¡ ºê¶ó¿ìÀúµµ Çѹø¸¸ ´Ù½Ã ±×¸®¸é µÈ´Ù.

¼Óµµ´Â ¿ùµîÈ÷ »¡¶óÁö°í È­¸é ±ô¹ÚÀÓÀ» ÃÖ¼ÒÈ­ÇÏ¿© Ãâ·Â ǰÁúµµ ÁÁ¾ÆÁø´Ù. ´ë½Å ³»ºÎ¿¡ º°µµÀÇ »çº»À» À¯ÁöÇØ¾ß ÇϹǷΠ¸Þ¸ð¸®¸¦ ´õ ¸¹ÀÌ ¾´´Ù. °¡»óµ¼Àº ¸®¾×Æ®¸¸ÀÇ Æ¯Â¡Àº ¾Æ´Ï¸ç Áö±ÝÀº ÀϹÝÈ­µÇ¾ú´Ù. ±×¸¸Å­ ½Ç¿ëÀûÀ̰í È¿°ú°¡ ¶Ù¾î³­ ±â¼úÀ̶ó´Â ¾ê±â´Ù.

JSX

¸®¾×Æ®´Â ÀÚ¹Ù½ºÅ©¸³Æ®¾È¿¡ HTML ¹®¼­¸¦ ÅëÇÕÇÏ¿© ±â¼úÇÏ´Â JSX(JavaScript XML) È®Àå ½ºÅ©¸³Æ®¸¦ »ç¿ëÇÑ´Ù. ÀÌ·±°Ô ¿Ö ÇÊ¿äÇÑÁö °£´ÜÇÑ ¿¹¸¦ ÅëÇØ ¾Ë¾Æº¸ÀÚ.

¼ºÀûÇ¥¸¦ À¥ ÆäÀÌÁö¿¡ Ãâ·ÂÇØ º¸ÀÚ. Å­Áö¸·ÇÑ Á¦¸ñ°ú Á¡¼ö¸¦ ¾Ë·Á ÁÖ´Â ¹®ÀÚ¿­·Î µÈ °£´ÜÇÑ ¹®¼­ÀÌ´Ù. HTML ¹®¼­·Î ºñ½ÁÇÑ ¸ð¾çÀ» ¸¸µé·Á¸é <h2> ű׷ΠÁ¦¸ñÀ» ºÙÀ̰í <p> ű׷ΠÁ¡¼ö¸¦ Ãâ·ÂÇÑ´Ù. Â÷ÈÄ ³ëµå¸¦ Á¶ÀÛÇϱâ À§ÇÑ class ¼Ó¼º°ú id ¼Ó¼ºµµ ÁöÁ¤Çß´Ù.

 

<h2 class="head">¼ºÀûÇ¥</h2>

<p id="result">Á¡¼ö´Â 123ÀÔ´Ï´Ù.</p>

 

½ÇÁ¦ Á¡¼ö´Â »ó¼ö°¡ ¾Æ´Ï¶ó score¶ó´Â º¯¼ö°ªÀ» Ãâ·ÂÇ쵂 ¾îµð¼±°¡ °è»êµÈ °ªÀ̶ó°í ÇÏÀÚ. ¹®ÀÚ¿­ »çÀÌ¿¡ Á¡¼ö¸¦ Á¶¸³ÇÏ¿© Ãâ·ÂÇÏ´Â °ÍÀº Á¤ÀûÀÎ ¹®¼­°¡ ¾Æ´Ñ µ¿ÀûÀÎ µ¿ÀÛÀ̹ǷΠÄڵ尡 ÇÊ¿äÇÏ´Ù. ÀÚ¹Ù½ºÅ©¸³Æ®·Î ÀÌ·± ¹®¼­¸¦ ¸¸µé¾î º¸ÀÚ. ´ÙÀ½ ¿¹Á¦´Â Á¤È®ÇÏ°Ô °°Àº ¹®¼­¸¦ ½ÇÇà Á÷ÈÄ¿¡ »ý¼ºÇÑ´Ù.

 

score.html

<!DOCTYPE html>

<html>

<head>

    <meta charset="utf-8">

    <title>sample</title>

</head>

<body>

    <div id = "root"></div>

    <script>

        // Ãâ·ÂÇÒ Á¡¼ö

        let score = 123

       

        // <h2> ÅÂ±× »ý¼º

        let head = document.createElement("h2");

        head.setAttribute("class","head")

        let text = document.createTextNode("¼ºÀûÇ¥");

        head.appendChild(text);

 

        // ·çÆ®¿¡ <h2> ÅÂ±× Ãß°¡

        let root = document.getElementById("root")

        root.appendChild(head);

 

        // <p> ÅÂ±× »ý¼º

        let para = document.createElement("p");

        para.setAttribute("id","result")

        let textpara = document.createTextNode("Á¡¼ö´Â" + score + "ÀÔ´Ï´Ù.");

        para.appendChild(textpara);

       

        // ·çÆ®¿¡ <p> ÅÂ±× Ãß°¡

        root.appendChild(para);

    </script>

</body>

</html>

 

ÀÚ¹Ù½ºÅ©¸³Æ®´Â ½º½º·Î µ¿ÀÛÇÒ ¼ö ÀÖ´Â ÄÚµåÀÌÁö¸¸ ºê¶ó¿ìÀú È­¸é¿¡¼­ È®ÀÎÇÏ·Á¸é HTML ÆÄÀÏÀ» ¸¸µé°í <script> ÅÂ±× ¾È¿¡ Äڵ带 ÀÛ¼ºÇÏ¿© ½Ç½ÀÇØ¾ß ÇÑ´Ù. score.html ÆÄÀÏÀ» »õ·Î ¸¸µé°í ÆíÁý±â·Î Äڵ带 ÀÔ·ÂÇÑ ÈÄ ºê¶ó¿ìÀú¿¡¼­ ¿­¸é ´ÙÀ½°ú °°Àº ½ÇÇà °á°ú¸¦ º¼ ¼ö ÀÖ´Ù.

<body> ¾È¿¡´Â div ÅÂ±× Çϳª¸¸ Á¤ÀǵǾî Àִµ¥ id¸¦ root·Î ÁöÁ¤Çß´Ù. ÀÌ ÅÂ±× ÀÚü´Â º¸ÀÌÁö ¾ÊÁö¸¸ µ¿ÀûÀ¸·Î »ý¼ºÇÒ Å±׸¦ Ãß°¡ÇÒ ÁöÁ¡ÀÌ´Ù. ½ºÅ©¸³Æ®¿¡¼­´Â ű׸¦ »ý¼ºÇϰí ÅØ½ºÆ®¿Í ¼Ó¼ºÀ» ¼³Á¤ÇÑ ÈÄ root¿¡ Çϳª¾¿ ºÙ¿© ½ÇÇàÁß¿¡ ű׸¦ ¸¸µé¾î ³½´Ù. <p> ű×ÀÇ ³»¿ë¿¡´Â score º¯¼ö¸¦ ¹®ÀÚ¿­ Áß°£¿¡ »ðÀÔÇÑ´Ù.

¿øÇÏ´Â ¹®¼­¸¦ ¸¸µé¾î ³»±â´Â Çß´Ù. ±×·¯³ª º¸´Ù½ÃÇÇ ´Ü µÎ ÁÙÀÇ HTML ¹®¼­¸¦ »ý¼ºÇϴµ¥ ³Ê¹« ¸¹Àº Äڵ尡 ÇÊ¿äÇÏ´Ù. ¾î·Æ°Å³ª º¹ÀâÇÑ °ÍÀº ¾Æ´ÏÁö¸¸ ÀÌ°É ÀÏÀÏÀÌ ÀÛ¼ºÇÏ·Á¸é ½Ã°£µµ ¸¹ÀÌ µé°í ±æ´Ù º¸´Ï ¿ÀŸ¸¦ Ä¥ À§Çèµµ ³ô´Ù.

¶Ç ¹®ÀÚ¿­°ú ÀÚ¹Ù½ºÅ©¸³Æ® Äڵ尡 µÚ¼¯¿© ¾îµð°¡ HTMLÀÌ°í ¾îµð°¡ ÄÚµåÀÎÁö ºÐ°£Çϱ⵵ ¾î·Æ´Ù. ÀÌ ¿¹Á¦¿¡¼­´Â "Á¡¼ö´Â" + score + "ÀÔ´Ï´Ù." Á¤µµÀÇ °£´ÜÇÑ ¿¬°á¹®ÀÌÁö¸¸ ½Ç¹« Äڵ忡¼­´Â ", +, <> µîÀÌ ¸¶±¸ µÚ¼¯¿© Á¤½ÅÀÌ ¾ø°í °ýÈ£ ¦À» ¸ÂÃß´À¶ó ´«±òÀÌ ºüÁú Áö°æÀÌ´Ù. °£´ÜÇÑ Á¤¼ö°ª Çϳªµµ ÀÌ·±µ¥ SQL Äõ¸®¹®À» Á¶¸³ÇÏ·Á¸é ¾î¶»°Ú´Â°¡?

ÀÌ·± ºÒÆíÇÔÀ» ÇØ¼ÒÇϱâ À§ÇØ ³ª¿Â °ÍÀÌ JSXÀÌ´Ù. ÀÚ¹Ù½ºÅ©¸³Æ®¿Í HTMLÀ» ÅëÇÕÇØ¼­ °£·«ÇÏ°Ô ±â¼úÇÏ´Â ½ºÅ©¸³Æ®ÀÌ´Ù. À§ Äڵ带 JSX·Î ¾²¸é ±æÀ̵µ ª¾ÆÁö°í Àб⵵ ½±´Ù. Àá½Ã ÈÄ ½Ç½ÀÇØ º¼ °ÍÀÌ´Ù.

 

function App() {

  let score = 123

 

  return (

    <div>

      <h2 className="head">¼ºÀûÇ¥</h2>

      <p id="result">Á¡¼ö´Â {score}ÀÔ´Ï´Ù.</p>

    </div>

  );

}

 

function AppÀº ÀÚ¹Ù½ºÅ©¸³Æ® ÇÔ¼öÀ̸ç ÀÌ ¾È¿¡¼­ ´ç¿¬È÷ º¯¼ö¸¦ ¼±¾ðÇÒ ¼ö ÀÖ°í Àμöµµ ¹ÞÀ» ¼ö ÀÖ´Ù. return () ¾È¿¡ ÀÖ´Â ±¸¹®ÀÌ JSXÀ̸ç ÀÌ ¾È¿¡¼­ <h2>, <p> ű׸¦ Á¤ÀÇÇÑ´Ù. ÀÌ Á¤Àǹ®Àº React °´Ã¼ÀÇ createElement, appendChild ¸Þ¼­µå È£Ãâ¹®À¸·Î ¹Ù²î¾î °¡»ó DOMÀ» »ý¼ºÇϰí ÃÖÁ¾ÀûÀ¸·Î´Â ½ÇÁ¦ DOM¿¡ ¿¬°áÇÑ´Ù. ³»ºÎ °úÁ¤Àº º¹ÀâÇÏÁö¸¸ JSXÀÇ ½ÇÇà °á°ú°¡ ¾Õ¿¡¼­ ÀÛ¼ºÇß´ø ÀÚ¹Ù½ºÅ©¸³Æ® ÄÚµå¿Í °°Àº È¿°ú¸¦ ³½´Ù.

JSX´Â HTMLµµ ¾Æ´Ï°í ÀÚ¹Ù½ºÅ©¸³Æ®µµ ¾Æ´Ï¸ç °íÀ¯ÀÇ ¹®¹ýÀ» °¡Áö´Â XML ¹®¼­ÀÌ´Ù. ÀüüÀûÀ¸·Î´Â HTML ¹®¼­Ã³·³ »ý°å°í ÀÛ¼ºÇÏ´Â ¹æ¹ýµµ ºñ½ÁÇÏÁö¸¸ º°µµÀÇ ±ÔÄ¢ÀÌ ÀÖ´Ù. µû¶ó¼­ ¿ì¸®´Â ÀÌ ¹®¹ýÀÇ ±ÔÄ¢À» µû·Î ¹è¿ö¾ß ÇÑ´Ù. XMLÀº ¹®¹ýÀÌ ¾ö°ÝÇØ Á¤È®ÇÏ°Ô ±â¼úÇØ¾ß ÇÑ´Ù. ´ë¼Ò¹®ÀÚ³ª ±¸µÎÁ¡±îÁöµµ ±ÔÁ¤À» ÁöÄÑ¾ß ÇÑ´Ù. ´ÙÀ½¿¡ µû·Î »ó¼¼È÷ ¿¬±¸ÇØ º¸±â·Î Çϰí ÀÌ ¿¹Á¦¿¡¼­ µå·¯³ª´Â ¸î °¡Áö ¿¹¸¸ È®ÀÎÇØ º¸ÀÚ.

 

¢º ű×ÀÇ class ¼Ó¼ºÀº classNameÀ¸·Î ¾´´Ù.

¢º ´Ü ÇϳªÀÇ ·çÆ®°¡ ÀÖ¾î¾ß ÇÑ´Ù. <h2>°ú <p>À» °¨½Î´Â <div>°¡ ÇÊ¿äÇÏ´Ù.

¢º ÀÚ¹Ù½ºÅ©¸³Æ® Äڵ带 »ç¿ëÇϰųª º¯¼ö¸¦ ÀÐÀ» ¶§´Â { } °ýÈ£·Î °¨½Ñ´Ù.

 

°íÀ¯ ¹®¹ýÀ» °¡Áö´Â JSX´Â ºê¶ó¿ìÀú°¡ Á÷Á¢ ÇØ¼®ÇÒ ¼ö ¾ø´Ù. µû¶ó¼­ ÀÚ¹Ù½ºÅ©¸³Æ®·Î ¹ø¿ªÇØ ÁÖ´Â Æ®·£½ºÆÄÀÏ·¯(transfiler)°¡ ÇÊ¿äÇÏ´Ù. ÄÄÆÄÀÏ·¯´Â ¾ð¾î¸¦ ½ÇÇà °¡´ÉÇÑ ÀÌÁø ÆÄÀÏ·Î ¹ø¿ªÇϴµ¥ ºñÇØ Æ®·£½ºÆÄÀÏ·¯´Â ¼Ò½º¸¦ ´Ù¸¥ ¼Ò½º·Î ¹Ù²Û´Ù. ¾ð¾î »çÀ̸¦ ¹ø¿ªÇÏ´Â ÀÏÁ¾ÀÇ ÄÄÆÄÀÏ·¯¶ó°í »ý°¢ÇÏ¸é µÈ´Ù. ¿©·¯ Á¾·ù°¡ Àִµ¥ ¸®¾×Æ®´Â ¹Ùº§ ¶Ç´Â ESBuild¸¦ »ç¿ëÇÑ´Ù.

ºê¶ó¿ìÀú·Î º¸³»±â Àü¿¡ ÇÑ´Ü°è ´õ °ÅÄ¡´Ù º¸´Ï º¹ÀâÇÑ ±ÔÄ¢ÀÌ ÇÊ¿äÇÏ´Ù. ¿©±â¼­´Â JSXÀÇ Çʿ伺°ú °³³ä¿¡ ´ëÇØ¼­¸¸ ¼Ò°³ÇÑ´Ù. ´õ »ó¼¼ÇÑ ¹®¹ý°ú ±ÔÄ¢Àº ¿¹Á¦¸¦ ¸¸µé¾î º¸¸é¼­ ½Ç½ÀÇØ º¸ÀÚ.

ÄÄÆ÷³ÍÆ® ±â¹Ý

¸®¾×Æ®´Â À¥ÆäÀÌÁö¸¦ Åë°·Î ±¸ÇöÇÏ´Â°Ô ¾Æ´Ï¶ó °¢ ºÎºÐÀ» ÄÄÆ÷³ÍÆ®·Î ºÐ¸®ÇÏ¿© Á¶¸³½ÄÀ¸·Î ±¸ÇöÇÑ´Ù. ÄÄÆ÷³ÍÆ®´Â È­¸éÀ» ±¸¼ºÇÏ´Â UIÀÇ ÇÑ ºÎºÐÀ̸ç À¥ÆäÀÌÁöÀÇ ºÎǰ¿¡ ÇØ´çÇÑ´Ù. ³×À̹ö¸¦ º¸ÀÚ.

°Ë»ö½ÄÀ» ÀԷ¹޴ ºÎºÐ, ±¤°í¸¦ Ãâ·ÂÇÏ´Â ºÎºÐ, ·Î±×ÀÎ Á¤º¸¸¦ º¸¿© ÁÖ´Â ºÎºÐ µîÀ¸·Î ³ª´©¾îÁ® ÀÖ´Ù. ÀÌ °¢°¢ÀÇ ³×¸ð ¿µ¿ªÀÌ ¹Ù·Î ÄÄÆ÷³ÍÆ®ÀÌ´Ù. Àüü¸¦ ÇÑ µ¢¾î¸®·Î °³¹ßÇÏ´Â °Íº¸´Ù´Â ±â´Éº°·Î Àß°Ô Âɰ³ °³¹ßÇÏ´Â ÆíÀÌ ´õ ½±´Ù.

ÄÄÆ÷³ÍÆ®¸¦ Àß ¸¸µé¾î ³õÀ¸¸é ¿©·¯ °³ ³ª¿­ÇÏ¿© ¹Ýº¹ÇÒ ¼ö ÀÖ°í ÄÄÆ÷³ÍÆ®³¢¸® ÁßøÇÏ¿© ´õ º¹ÀâÇÑ °Íµµ ¸¸µé ¼ö ÀÖ´Ù. ÄÄÆ÷³ÍÆ® ÀÚü°¡ µ¶¸³ÀûÀÎ ºÎǰ°ú ºñ½ÁÇØ ´Ù¸¥ ÆäÀÌÁö¿¡¼­ ¼Õ½±°Ô ÀçȰ¿ëÇÒ ¼öµµ ÀÖ´Ù.

ÄÄÆ÷³ÍÆ®¸¦ ³Ê¹« °ÅâÇÏ°Ô »ý°¢ÇÒ ÇÊ¿ä¾øÀÌ HTMLÀÇ <table>, <img> ÅÂ±×¿Í °°Àº °³³äÀ̶ó°í º¸¸é µÈ´Ù. µµÇ¥¸¦ Ç¥½ÃÇÏ·Á¸é <table> ÄÄÆ÷³ÍÆ®¸¦ ¾²°í À̹ÌÁö¸¦ Ãâ·ÂÇÏ·Á¸é <img> ÄÄÆ÷³ÍÆ®¸¦ ¹èÄ¡ÇÏ¿© À¥ ÆäÀÌÁö¸¦ ¸¸µç´Ù. Áï, ÄÄÆ÷³ÍÆ®´Â ÅÂ±×¿Í ºñ½ÁÇÏ¸ç ¼Ó¼ºÀ» °¡Áö°í ½ºÅ¸ÀÏÀ» ÀÔÈú ¼öµµ ÀÖ´Ù. ű״ ±â´ÉÀÌ °íÁ¤ÀûÀε¥ ºñÇØ ÄÄÆ÷³ÍÆ®´Â ´õ À¯¿¬ÇÏ´Ù.

 

¢º ½º½º·Î »óŸ¦ À¯ÁöÇÏ¿© »ç¿ëÀÚÀÇ ¼±ÅÃÀ» ±â¾ïÇÑ´Ù. °Ë»ö½ÄÀ» ÀԷ¹޴ ºÎºÐÀº ÃÖÈÄ·Î ÀÔ·ÂÇÑ °Ë»ö ¹®ÀÚ¿­ÀÌ ¹«¾ùÀÎÁö ±â¾ïÇÏ°í ·Î±×ÀÎ ÄÄÆ÷³ÍÆ®´Â ÇöÀç ·Î±×ÀÎÇÑ »ç¿ëÀÚÀÇ À̸§À» ±â¾ïÇÑ´Ù.

¢º ºÎ¸ð·ÎºÎÅÍ ¼Ó¼ºÀ» Àü´Þ¹Þ°í µ¿Àû ¹®¼­¸¦ »ý¼ºÇÏ¿© ¸®ÅÏÇÏ´Â ½ÄÀ¸·Î Åë½ÅÇÏ¿© °¡º¯ÀûÀÎ Á¤º¸¸¦ ½Ç½Ã°£À¸·Î º¸¿©ÁØ´Ù. ¸ÞÀÏ ÄÄÆ÷³ÍÆ®´Â ·Î±×ÀÎÇÑ »ç¿ëÀÚÀÇ Á¤º¸¸¦ Àü´Þ¹Þ¾Æ »õ ¸ÞÀϰú ÂÊÁöÀÇ °³¼ö¸¦ Ç¥½ÃÇÏ°í °ü¸®ÇÑ´Ù.

¢º ÇÔ¼ö ¶Ç´Â Ŭ·¡½º·Î Á¤ÀÇÇϸç ÀÌ ¾È¿¡ Á¶°Ç, ¹Ýº¹, À̺¥Æ® ó¸® µîÀÇ Äڵ带 ÀÛ¼ºÇÒ ¼ö ÀÖ¾î ¸ð¾ç°ú µ¿ÀÛÀ» ¸¶À½´ë·Î Á¤ÀÇÇÒ ¼ö ÀÖ´Ù. ÃֽŠ´º½º ¸ñ·ÏÀÌ ³ªÅ¸³ª°í Ŭ¸¯Çϸé ÇØ´ç ´º½º¸¦ º¸¿©ÁØ´Ù.

 

HTML ¹®¼­°¡ <div>, <a>, <img> ű׸¦ ±¸¼ºµÇ´Â °Í°ú ¶È°°Àº ¿ø¸®·Î ¸®¾×Æ® ÆäÀÌÁö´Â <Login>, <Mail>, <News> µîÀÇ ÄÄÆ÷³ÍÆ®·Î ±¸¼ºµÈ´Ù. ±âº» ÅÂ±×¿Í ±¸ºÐÇϱâ À§ÇØ Ç×»ó ´ë¹®ÀÚ·Î ½ÃÀÛÇÑ´Ù. ±â´ÉÀÌ °íÁ¤µÈ ÅÂ±×¿Í ´Þ¸® ÇÁ·Î±×·¡¹Ö °¡´ÉÇÏ°í ±×·¯´Ù º¸´Ï °³¹ß ¹æ¹ýÀ» ¹è¿ö¾ß ÇÑ´Ù´Â Â÷À̰¡ ÀÖÀ» »ÓÀÌ´Ù.

¸®¾×Æ®·Î °³¹ßÇÑ´Ù´Â °ÍÀº ÀÌ·± ÄÄÆ÷³ÍÆ® Çϳª Çϳª¸¦ ¸¸µé°í Á¶ÇÕÇÏ´Â °úÁ¤ÀÌ´Ù. Àß ¸¸µé¾î ³õÀº °ÍÀº Àç»ç¿ëÇÒ ¼ö ÀÖ°í ³²ÀÌ ¸¸µé¾î ³õÀº°É °¡Á®´Ù ¾µ ¼öµµ ÀÖ´Ù. ºÎǰÀ» ¸ÕÀú ¸¸µé°í Á¶¸³ÇÏ¿© Å« ¾ÛÀ» ¸¸µå´Â »óÇâ½Ä(bottom up) °³¹ß ¹æ½ÄÀÌ´Ù.