°Á Àü Å¿ÀÀÇ Àâ´ã>
À̹ø °Á´ Àüü ³»¿ë ¸ðµÎ¸¦ ÀÛ¼ºÇÑ µÚ¿¡ Çѹø¿¡ ¿Ã¸®±âº¸´Ù´Â ÁغñµÇ´Â´ë·Î ¿Ã¸®°í ÀÖ½À´Ï´Ù.
¿À·£ ½Ã°£ µÚ¿¡ ±ä ÇϳªÀÇ °Á¸¦ ¿Ã¸®±âº¸´Ù´Â ºÎºÐ ºÎºÐÀ» ÀÚÁÖ ¾÷µ¥ÀÌÆ® ÇÏ´Â °ÍÀÌ
Â÷¶ó¸® ³´´õ¶ó´Â µ¶ÀÚµéÀÇ Çǵå¹é¿¡ ¸ÂÃç ±×·¸°Ô Çϰí ÀÖ´Â °ÍÀÔ´Ï´Ù. ^^
°Á°¡ ³¡³ª¸é, Àüü °Á¸¦ Çѹø¿¡ Ãâ·ÂÇÏ±â ÆíÇϵµ·Ï ÇÑ ÆäÀÌÁö·Î ÇÕÄ£ ÆäÀÌÁöµµ º°µµ·Î Á¦°øÇØ µå¸±²²¿ä
¿ª½Ã³ª ¼¼½ÉÇÑ ¹è·Á°¡ ¿³º¸ÀÌ´Â Å¿ÀÁÒ? ÀÕÈþ~
°¨»çÇÕ´Ï´Ù.
M/V/C ·ÎÀÇ ºÐ¸®
¿ì¼± À¥ ¾ÖÇø®ÄÉÀ̼ÇÀÇ ±¸Á¶¸¦ Model(¸ðµ¨), View(ºä), Controller(ÄÁÆ®·Ñ·¯)·Î ºÐ¸®ÇÏ´Â MVC ÆÐÅÏ¿¡¼ °¢°¢ÀÇ ±×·¯ÇÑ ÄÄÆ÷³ÍÆ®µéÀÇ ¿ªÇÒ¿¡ ´ëÇØ¼ ¸ÕÀú »ìÆìº¸µµ·Ï ÇϰڽÀ´Ï´Ù. °¢°¢ÀÇ ºÐ¸®´Â ¹°¸®ÀûÀÎ ºÐ¸®¶ó±â º¸´Ù´Â ³í¸®ÀûÀÎ ºÐ¸®ÀÓÀ» ±â¾ïÇÏ½Ã°í ´ÙÀ½ ³»¿ëÀ» »ìÆìº¸½Ã±â ¹Ù¶ø´Ï´Ù.
Model(¸ðµ¨)
¸ðµ¨Àº ½ÇÁ¦ ·ÎÁ÷À» ±¸ÇöÇÏ´Â ¾ÖÇø®ÄÉÀ̼ÇÀÇ Áß¿äÇÑ ºÎºÐÀÔ´Ï´Ù. ÀÌ´Â ÀϹÝÀûÀ¸·Î µ¥ÀÌÅͺ£À̽º·ÎºÎÅÍ µ¥ÀÌÅ͸¦ °¡Á®¿Í¼ ´ã¾ÆµÎ°Å³ª, µ¥ÀÌÅͺ£À̽º·Î ÀúÀåÇÏ´Â ¿ªÇÒÀ» ¼öÇàÇÕ´Ï´Ù. ÁÖ·Î ¸ðµ¨¸µÀ» ÅëÇØ¼ »êÃâµÈ ¿£ÅÍÆ¼µéÀÌ ÀÌ·¯ÇÑ ¸ðµ¨¿¡ ¼ÓÇÏ°Ô µÇÁö¸¸, ÀÛÀº ±Ô¸ð¿¡¼´Â DataSetµµ ¸ðµ¨·Î¼ »ç¿ëµÉ ¼ö ÀÖ½À´Ï´Ù.
View(ºä)
ºä´Â »ç¿ëÀÚ ÀÎÅÍÆäÀ̽º Áï, UIÀ» Ãâ·ÂÇÏ´Â ÄÄÆ÷³ÍÆ®ÀÔ´Ï´Ù. ÀϹÝÀûÀ¸·Î UI´Â ¸ðµ¨ÀÇ µ¥ÀÌÅ͸¦ ±â¹ÝÀ¸·Î ¸¸µé¾îÁý´Ï´Ù. ȸé Ãâ·Â°ú °ü°èµÈ ·ÎÁ÷À» Æ÷ÇÔÇÒ ¼ö´Â ÀÖÁö¸¸, »ç¿ëÀÚ ÀÔ·ÂÀ̳ª ÀÎÅÍ·º¼Ç, ¾÷¹«¿Í °ü°èµÈ ·ÎÁ÷Àº °áÄÚ View°¡ °¡Á®¼´Â ¾ÈµË´Ï´Ù. ÀÌ´Â ¿À·ÎÁö ȸéÀ» Ãâ·ÂÇϱâ À§ÇÑ ¿ªÇÒ¸¸À» ´ã´çÇϱ⠶§¹®ÀÔ´Ï´Ù.
Controller(ÄÁÆ®·Ñ·¯)
¾îÂî º¸¸é MVC¿¡¼ °¡Àå ÇÙ½ÉÀÌ µÇ´Â ÄÄÆ÷³ÍÆ®ÀÔ´Ï´Ù. »ç¿ëÀÚÀÇ ÀÎÅÍ·º¼ÇÀ» ó¸®Çϰí, ¸ðµ¨À» Á¶ÀÛÇϸç, ÃÖÁ¾ UI·Î Ãâ·ÂµÉ ºä¸¦ °áÁ¤ÇÏ´Â ¿ªÇÒÀ» ´ã´çÇÕ´Ï´Ù. ÀüüÀûÀÎ ÄÚµð³×ÀÌÅÍ ¿ªÇÒÀ» ÇÑ´Ù°í º¼ ¼ö Àִµ¥¿ä. ÀÌ´Â »ç¿ëÀÚÀÇ ÀÔ·Â °ªÀ» ¼ö½ÅÇÏ°í µ¥ÀÌÅÍ ¸ðµ¨À» ÅëÇØ¼ ÇÊ¿äÇÑ µ¥ÀÌÅ͸¦ °¡Á®¿Í ÀÀ´ä(Response)À» ±¸¼ºÇÏ´Â Àü¹ÝÀûÀΠåÀÓÀ» ´ã´çÇÕ´Ï´Ù.
ÀÌ·¯ÇÑ MVC ÆÐÅÏ¿¡ µû¶ó ¾ÖÇø®ÄÉÀ̼ÇÀ» 3°³ÀÇ ÄÄÆ÷³ÍÆ®·Î ³ª´©¾î ±¸¼ºÇÏ°Ô µÇ¸é, °¢ ¿ä¼Ò °£¿¡ ¿¬°áÀ» º¸´Ù ´À½¼ÇÏ°Ô ±¸¼ºÇÒ ¼ö°¡ ÀÖ°Ô µÇ±â¿¡ º¹ÀâÇÑ ¾ÖÇø®ÄÉÀ̼ÇÀ» °ü¸®Çϱ⿡ ¿ëÀÌÇϸç, º´Çà °³¹ß(µ¿½Ã¿¡ °¢°¢ÀÇ ÄÄÆ÷³ÍÆ®¸¦ °³¹ßÇÏ´Â ¹æ½Ä)ÀÌ °¡´ÉÇÏ´Ù´Â ÀåÁ¡ÀÌ ÀÖ½À´Ï´Ù. ±×¸®°í, ÀÌ·¯ÇÑ ºÐ¸®·Î ÀÎÇØ ±âÁ¸ÀÇ ASP.NET ¾ÖÇø®ÄÉÀ̼Ǻ¸´Ù ÈξÀ Å×½ºÆ®ÇϱⰡ ¿ëÀÌÇÏ´Ù´Â ÀÌÁ¡À» ¾òÀ» ¼öµµ ÀÖ½À´Ï´Ù.
±âÁ¸ ASP.NET ¾ÖÇø®ÄÉÀ̼ÇÀº Å×½ºÆ®¸¦ Çϱâ À§Çؼ »ç¿ëÀÚ ÀԷ¿¡ µû¶ó Àü¹ÝÀûÀÎ ASP.NETÀÇ ÇÁ·Î¼¼½º(ÆäÀÌÁö Ŭ·¡½º¸¦ »ý¼º, ÃʱâÈÇϰí, °³Ã¼ Æ®¸®¿¡ ¼ÓÇØÀÖ´Â ¸ðµç ÄÁÆ®·ÑµéÀ» »ý¼ºÇÏ´Â µî) ¸¦ ¸ðµÎ °ÅÃİ¡¸ç Å×½ºÆ®ÇØ¾ß Ç߱⿡ ±× ÀýÂ÷°¡ ¾à°£ º¹ÀâÇß°í ¶ÇÇÑ, Å×½ºÆ®¸¦ À§Çؼ´Â ¹Ýµå½Ã À¥ ¼¹ö°¡ ¿ä±¸µÈ´Ù´Â Á¦¾àÀÌ ÀÖ¾úÁö¸¸, MVC ÆÐÅÏÀ» Àû¿ëÇØ¼ ±¸¼ºÇÏ°Ô µÇ¸é °³º°ÀûÀÎ ÄÄÆ÷³ÍÆ®¸¦ µ¶¸³ÀûÀ¸·Î Å×½ºÆ®ÇÒ ¼ö ÀÖ°Ô µÇ±â¿¡ ¾ÖÇø®ÄÉÀ̼ÇÀÇ °³¹ß°ú Å×½ºÆ®°¡ »ó´ëÀûÀ¸·Î ¿ëÀÌÇÏ´Ù´Â ÀÌÁ¡À» ¾òÀ» ¼ö ÀÖÀ¸¸ç, ÀÌ´Â TDD(Test-Driven Development)¿¡µµ ºÎÇÕÇÑ´Ù°í º¼ ¼ö ÀÖ½À´Ï´Ù.
¾î¶»°Ô ¸ðµâÀ» ³ª´²¾ß Çϰí, ¾î¶² Äڵ带 ¾îµð¿¡ ÀÛ¼ºÇØ¾ß ÇÏ´Â Áö´Â Áö±Ý °í¹ÎÇÏÁö ¾Ê¾Æµµ µË´Ï´Ù. ±×¿¡ ´ëÇÑ ÅÛÇø´°ú ±ÔÄ¢À» ASP.NET MVC ÇÁ·¹ÀÓ¿öÅ©°¡ Á¦°øÇϰí Àֱ⿡ ±×°¡ Á¦¾ÈÇÏ´Â ±ÔÄ¢¿¡ µû¶ó °³¹ßÀ» ÇÏ¸é µÇ±â ¶§¹®ÀÌÁö¿ä. ÀÌ¿¡ ´ëÇÑ º»°ÝÀûÀÎ À̾߱â´Â ´ÙÀ½ °ÁºÎÅÍ ½ÃÀÛÇÕ´Ï´Ù.
À¥ Æû ±â¹ÝÀÇ °³¹ß°ú MVC ±â¹ÝÀÇ °³¹ß
Á¶±ÝÂëÀº »õ·Î »ç±Ï Ä£±¸ÀÇ ÆíÀ» µé¾î ¼³¸íÇÏ´Ù º¸´Ï, ÀÚÄ©Çϸé ÀÌ·¯ÇÑ ¼³¸íÀÌ ¸¶Ä¡ ±âÁ¸ÀÇ ASP.NET ¾ÖÇø®ÄÉÀ̼ÇÀº ±×´ÙÁö ¸Å·ÂÀÌ ¾ø°í MVC¸¸ÀÌ ÈǸ¢ÇÑ °Íó·³ ´À²¸Áö°Ô ¼³¸íÇÑ °Íµµ °°Àºµ¥¿ä. ¾Õ¿¡¼µµ ¸»¾¸ µå·ÈÁö¸¸, ±×°Ô ²À ±×·± °Í¸¸Àº ¾Æ´Õ´Ï´Ù. ±âÁ¸ À¥ Æû ¹æ½ÄÀÇ ASP.NETµµ ¸¹Àº ÀåÁ¡µéÀ» °¡Áö°í ÀÖÀ¸´Ï±î¿ä. ¸»ÀÌ ³ª¿Â ±è¿¡ °£´ÜÇÏ°Ô µÎ ±â¼úÀÌ °¡Áø °¢°¢ÀÇ ÀåÁ¡À» °£·«ÇÏ°Ô Á¤¸®ÇØ º¸µµ·Ï ÇϰڽÀ´Ï´Ù.
À¥ Æû ±â¹ÝÀÇ À¥ ¾ÖÇø®ÄÉÀ̼ÇÀÇ ÀåÁ¡
°¢°¢ÀÇ ÆäÀÌÁö ´ÜÀ§·Î ±â´ÉÀ» ÀÛ¼ºÇÏ´Â Page Controller ÆÐÅÏÀ» »ç¿ëÇÑ´Ù.
: °³º° È¸é ´ÜÀ§ Áß½ÉÀûÀÎ ¾÷¹«¸¦ °³¹ßÇϱ⿡ ¸Å¿ì ÀûÇÕÇÏ´Ù.
À̺¥Æ® Áß½ÉÀÇ ÇÁ·Î±×·¡¹Ö ¸ðµ¨À» Á¦°øÇÑ´Ù.
: ´Ù¾çÇÑ À̺¥Æ®¸¦ Á¦°øÇÏ´Â ¼ö ¸¹Àº ¼¹ö ÄÁÆ®·ÑÀÌ Á¦°øµÇ±â¿¡, À̺¥Æ® Áß½ÉÀûÀÎ °³¹ßÀ» ÅëÇØ ¾÷¹« ȸéÀ» Á÷°üÀûÀ¸·Î ÀÛ¼ºÇÒ ¼ö ÀÖ´Ù.
ºä»óÅÂ(ViewState)¿Í ¼¹ö ±â¹ÝÀÇ ÆûÀ» »ç¿ëÇϱ⿡, »óÅ Á¤º¸¸¦ °ü¸®Çϱ⿡ ¿ëÀÌÇÏ´Ù.
MVC ±â¹ÝÀÇ À¥ ¾ÖÇø®ÄÉÀ̼ÇÀÇ ÀåÁ¡
¸ðµç ¿äûÀ» ´ÜÀÏ ÄÁÆ®·Ñ·¯¸¦ ÅëÇØ¼ ó¸®ÇÏ´Â Front Controller ÆÐÅÏÀ» »ç¿ëÇÑ´Ù
: ¸ðµç ¿äûÀ» ´ÜÀÏ ÄÁÆ®·Ñ·¯¸¦ ÅëÇØ ó¸®ÇϹǷÎ, ¶ó¿ìÆÃ(routing) ÇϺα¸Á¶¸¦ Áö¿øÇÏ´Â ¾ÖÇø®ÄÉÀ̼ÇÀ» °³¹ßÇÒ ¼ö ÀÖ´Ù.
¾ÖÇø®ÄÉÀ̼ÇÀ» 3°³ÀÇ ³í¸® ¸ðµâ·Î ºÐ¸®Çϱ⿡ ¾ÖÇø®ÄÉÀ̼ÇÀÇ º¹À⼺À» °ü¸®Çϱ⠽±°Ô ÇÑ´Ù.
ºä»óųª ¼¹ö ±â¹ÝÀÇ ÆûÀ» »ç¿ëÇÏÁö ¾Ê´Â´Ù
: °³¹ßÀÚ°¡ ¾ÖÇø®ÄÉÀ̼ÇÀÇ µ¿ÀÛ¹æ½ÄÀ» ÀüüÀûÀ¸·Î Á¦¾îÇÒ ¼ö ÀÖÀ¸¹Ç·Î ¼¼¹ÐÇÏ°Ô ¾ÖÇø®ÄÉÀ̼ÇÀ» Á¶ÀÛÇÏ°í ½ÍÀº À̵鿡°Ô ÀûÇÕÇÏ´Ù. ´Ü, ÀÌ·¯ÇÑ ±â´É(»óÅÂÁ¤º¸ °ü¸®)ÀÌ ÇÊ¿äÇÒ °æ¿ì Ãß°¡ÀûÀÎ ÀÛ¾÷ÀÌ ¿ä±¸µÈ´Ù.
ÀÌÁ¦ MVC ¸ðµ¨ÀÌ ¾î¶»°Ô ¿ì¸®¸¦ Áñ°Ì°Ô ÇØÁÙ ¼ö ÀÖÀ» °ÍÀÎÁö °³³äÀûÀ¸·Î´Â ¾à°£ÀÇ ±â´ë°¡ ÃæÀüµÇ¾úÀ» °ÍÀ̶ó »ý°¢ÇÕ´Ï´Ù. ¸·»ó »ç¿ëÇÏ´Ù º¸¸é À¥ Æû ±â¹ÝÀÇ °³¹ßÀÌ ±×¸®¿öÁö´Â °æ¿ìµµ ÀûÁö ¾ÊÁö¸¸(À̺¥Æ® ÇÁ·Î±×·¡¹Ö ¸ðµ¨µµ ²Ï³ª °³¹ß¿¡ Æí¸®ÇÑ ¸ðµ¨À̱⿡), MVC´Â MVC´ë·Î À¯¿ëÇÑ ¸¹Àº ±â´ÉµéÀ» Á¦°øÇϱ⿡ À̸¦ ÅëÇÑ °³¹ßÀÌ Çѵ¿¾ÈÀº ²Ï ¼±ÀüÇÏÁö ¾ÊÀ»±î ¿¹»óÀÌ µË´Ï´Ù. ¹°·Ð, ±×·¸´Ù ÇÏ´õ¶óµµ ¸¹Àº ¾ÖÇø®ÄÉÀ̼ÇÀº ¿©ÀüÈ÷ À¥ Æû ±â¹ÝÀ¸·Î °³¹ßµÉ °ÍÀ̸ç, ½ÉÁö¾î´Â À¥ Æû ±â¹Ý°ú MVC ±â¹ÝÀÌ È¥ÇյǴ ¾ÖÇø®ÄÉÀ̼ǵµ »ý°Ü³¯ ¼ö ÀÖ°ÚÁö¸¸ ¸»ÀÔ´Ï´Ù.
±×·¸´Ù¸é, ÀÌ·¯ÇÑ Áö½ÄÀ» ¸Ó¸®¿¡ ´ã¾ÆµÎ°í, ´ÙÀ½ °ÁºÎÅÍ´Â º»°ÝÀûÀ¸·Î ASP.NET MVC ÇÁ·¹ÀÓ¿öÅ©°¡ Áö¿øÇÏ´Â ±â´Éµé¿¡ ´ëÇØ¼ ¼³¸íÀ» ÇØº¸µµ·Ï ÇϰڽÀ´Ï´Ù. ÇÁ·¹ÀÓ¿öÅ©¿¡¼ Áö¿øÇÏ´Â ±â´ÉÀ» °£·«ÇÏ°Ô »ìÆìº» µÚ, ±×¿¡ µû¶ó °¡º¿î »ùÇà ¾ÖÇø®ÄÉÀ̼ÇÀ» ¸ðµ¨/ºä/ÄÁÆ®·Ñ·Î·Î ºÐ¸®ÇÏ¿© ÀüüÀûÀÎ ±¸µ¿ ¿¹Á¦¸¦ ¿Ï¼ºÇÏ´Â ½ÄÀ¸·Î °Á¸¦ ÁøÇàÇØ º¼±î ÇÕ´Ï´Ù.
±â´ë°¡ µÇ½Å´Ù¸é~ Talk °Ô½ÃÆÇ¿¡ ÀÀ¿øÀÇ ±ÛÀ» ³²°ÜÁֽʽÿÀ!!!
°¨»çÇÕ´Ï´Ù.
°Á ¸ñ·ÏÀ¸·Î..
|