|
|
|
ÇÁ·ÐÆ®¿£µåºÎÅÍ ¹é¿£µå±îÁö ÀÚ¹Ù½ºÅ©¸³Æ®·Î ´ÜÀÏ ÆäÀÌÁö À¥ ¾ÖÇø®ÄÉÀ̼Ç
|
|
|
¸¶ÀÌŬ ¹ÌÄÚ½ºÅ°(Michael Mikowski), À¯À±¼±
¤Ó
À§Å°ºÏ½º
¤Ó
Single Page Web Applications
|
|
|
|
- Á¦ÈÞ¸ô ÁÖ¹® ½Ã °í°´º¸»ó, ÀϺΠÀ̺¥Æ® Âü¿© ¹× ÁõÁ¤Ç° ÁõÁ¤, ÇÏ·ç/´çÀÏ ¹è¼Û¿¡¼ Á¦¿ÜµÇ¹Ç·Î Âü°í ¹Ù¶ø´Ï´Ù.
-
-
-
¡º´ÜÀÏ ÆäÀÌÁö À¥ ¾ÖÇø®ÄÉÀ̼ǡ»Àº ÀÚ¹Ù½ºÅ©¸³Æ®¸¸À» »ç¿ëÇØ ¾ÖÇø®ÄÉÀ̼ÇÀÇ Àüü ½ºÅÃÀ» °³¹ßÇÏ°íÀÚ ÇÏ´Â °³¹ßÀÚ¸¦ À§ÇÑ Áöħ¼´Ù. ÀÌ Ã¥¿¡¼´Â Ŭ¶óÀ̾ðÆ®(Á¦ÀÌÄõ¸®)-¼¹ö(Node.js)-µ¥ÀÌÅͺ£À̽º(¸ù°íµðºñ)¿¡ À̸£±â±îÁö ¾ÖÇø®ÄÉÀ̼ÇÀÇ Àüü ½ºÅÃÀ» ÀÚ¹Ù½ºÅ©¸³Æ®·Î °³¹ßÇÏ´Â ¸ð¹ü ¹æ¹ý·ÐÀ» Á¦½ÃÇÑ´Ù.
-
-
ÀÌ Ã¥Àº ÀÚ¹Ù½ºÅ©¸³Æ®¸¸À» »ç¿ëÇØ ¾ÖÇø®ÄÉÀ̼ÇÀÇ Àüü ½ºÅÃÀ» °³¹ßÇÏ°íÀÚ ÇÏ´Â °³¹ßÀÚ¸¦ À§ÇÑ Áöħ¼´Ù. ÀÌ Ã¥¿¡¼´Â Ŭ¶óÀ̾ðÆ®(Á¦ÀÌÄõ¸®)-¼¹ö(Node.js)-µ¥ÀÌÅͺ£À̽º(¸ù°íµðºñ)¿¡ À̸£±â±îÁö ¾ÖÇø®ÄÉÀ̼ÇÀÇ Àüü ½ºÅÃÀ» ÀÚ¹Ù½ºÅ©¸³Æ®·Î °³¹ßÇÏ´Â ¸ð¹ü ¹æ¹ý·ÐÀ» Á¦½ÃÇÑ´Ù.
ÀúÀÚµéÀº ´Ù³â°£ ´ÜÀÏ ÆäÀÌÁö ¾ÖÇø®ÄÉÀ̼ÇÀ» °³¹ßÇÏ¸é¼ °¡´ÙµëÀº ³ëÇϿ츦 ¹ÙÅÁÀ¸·Î ƯÁ¤ ÇÁ·¹ÀÓ¿öÅ©¿¡ ÀÇÁ¸ÇÏÁö ¾Ê°í È®À强, Å×½ºÆ® °¡´É¼º, ¸ðµâȸ¦ ÁöÇâÇÏ´Â ¸ð¹ü ÀÚ¹Ù½ºÅ©¸³Æ® Äڵ带 ÀÛ¼ºÇÏ´Â ¹ýÀ» óÀ½ºÎÅÍ ³¡±îÁö ÀÚ¼¼È÷ ¼Ò°³Çß´Ù. ±× ´öºÐ¿¡ µ¶ÀÚ´Â ÀÚ¿¬½º·´°Ô ÀúÀÚµéÀÇ °ËÁõµÈ ÄÚµå¿Í ±â¹ýÀ» ÀÍÈú ¼ö ÀÖÀ½Àº ¹°·Ð, ÀúÀÚ°¡ Á¦½ÃÇÏ´Â ¹æ¹ý·Ð¿¡ µû¶ó °¡Àå ½±°í °£ÆíÇÏ°Ô ÃֽŠ´ÜÀÏ ÆäÀÌÁö ¾ÖÇø®ÄÉÀ̼ÇÀ» °³¹ßÇÏ´Â ¹ýÀ» Å͵æÇÒ ¼ö ÀÖ´Ù.
ÀÌ Ã¥À» ÅëÇØ ±×µ¿¾È ¸ô¶ú´ø ÀÚ¹Ù½ºÅ©¸³Æ®ÀÇ »õ·Î¿î °¡´É¼º¿¡ ´ëÇÑ Çý¾ÈÀ» ¾òÀ» ¼ö ÀÖÀ»»Ó´õ·¯ ÀÚ¹Ù½ºÅ©¸³Æ® ÀÇÁ¸µµ°¡ ³ô¾ÆÁü¿¡ µû¶ó ¾ð¾îÀû ´À½¼ÇÔ ¶§¹®¿¡ »ý±â´Â ´Ù¾çÇÑ ¹®Á¦¸¦ °¡Àå È¿°úÀûÀ¸·Î ÇØ°áÇÏ´Â ¸ð¹ü ±â¹ýµµ ÀÍÈú ¼ö ÀÖ´Ù. ¿äÄÁ´ë, ÀÌ Ã¥À» µû¶ó ÀÚ¹Ù½ºÅ©¸³Æ®·Î SPA¸¦ °³¹ßÇÑ´Ù¸é Àû¾îµµ ½ÇÆÐÇÏ´Â ÀÏÀº ¾øÀ» °ÍÀÌ´Ù!
À¥»çÀÌÆ®¿¡ ¸µÅ©µÈ ÆäÀÌÁö¸¸ ÀÜ¶à ¸ð¾Æ³õ¾Ò´Ù¸é ÀÌ À¥»çÀÌÆ®´Â ½Ã´ë¿¡ µÚóÁø °ÍÀÌ´Ù. ÀÌÁ¦ ´ÜÀÏ ÆäÀÌÁö À¥ ¾ÖÇø®ÄÉÀ̼Ç(SPA, Single Page Application)À¸·Î ´«À» µ¹¸± ¶§´Ù. UI ·»´õ¸µ°ú ºñÁî´Ï½º ·ÎÁ÷À» ºê¶ó¿ìÀú¿¡°Ô ¸Ã±â°í µ¥ÀÌÅ͸¦ µ¿±âÈÇÒ ¶§¸¸ ¼¹ö¿Í Åë½ÅÇÔÀ¸·Î½á ´ÜÀÏ ÆäÀÌÁö À¥ ¾ÖÇø®ÄÉÀ̼ÇÀº ³×ÀÌƼºê ¾ÖÇø®ÄÉÀ̼ǰú °ÅÀÇ °°Àº ºÎµå·¯¿î »ç¿ëÀÚ °æÇèÀ» Àü´ÞÇÑ´Ù. ÇÏÁö¸¸ SPA´Â °³¹ß, °ü¸®, Å×½ºÆ®ÇÏ´Â °Ô ¾î·Æ´Ù.
´ÜÀÏ ÆäÀÌÁö À¥ ¾ÖÇø®ÄÉÀ̼ǿ¡¼´Â ƯÁ¤ ÇÁ·¹ÀÓ¿öÅ©¿¡ ¾ô¸ÅÀÌÁö ¾Ê°í ÇÁ·ÐÆ®¿£µåºÎÅÍ ¹é¿£µå±îÁö ÀÚ¹Ù½ºÅ©¸³Æ®¸¸À» »ç¿ëÇØ SPA¸¦ ¼Õ½±°Ô ¼³°è, Å×½ºÆ®, À¯Áöº¸¼ö, È®ÀåÇÏ´Â ¹ýÀ» º¸¿©ÁØ´Ù. ÀÌ °úÁ¤¿¡¼ µ¶ÀÚµéÀº °í±Þ HTML5, CSS, ÀÚ¹Ù½ºÅ©¸³Æ® ±â¼úÀ» ÀÍÈú ¼ö ÀÖÀ½Àº ¹°·Ð À¥ ¼¹ö ¹× µ¥ÀÌÅͺ£À̽º ¾ð¾î·Î ÀÚ¹Ù½ºÅ©¸³Æ®¸¦ È°¿ëÇÏ´Â ¹ýµµ ¹è¿ï ¼ö ÀÖ´Ù.
¡Ú ÀÌ Ã¥¿¡¼ ´Ù·ç´Â ³»¿ë ¡Ú
¡Ý Ç®½ºÅà SPAÀÇ ¼³°è, °³¹ß, Å×½ºÆ®
¡Ý Á¦ÀÌÄõ¸®, TaffyDB, Node.js, ¸ù°íµðºñ °°Àº ÃÖ°í ¼öÁØÀÇ Åø È°¿ë¹ý
¡Ý À¥ ¼ÒÄÏ ¹× Socket.IO¸¦ È°¿ëÇÑ ½Ç½Ã°£ À¥
¡Ý ÅÂºí¸´°ú ½º¸¶Æ®ÆùÀ» À§ÇÑ ÅÍÄ¡ ÄÁÆ®·Ñ
¡Ý ÀÚÁÖ Çϱ⠽¬¿î SPA ¼³°è ½Ç¼ö
¡Ú ·Îµå¸Ê ¡Ú
1ÀåÀº ´ÜÀÏ ÆäÀÌÁö ¾ÖÇø®ÄÉÀ̼ÇÀ» ¼Ò°³ÇÏ´Â ÀåÀÌ´Ù. ÀÌ Àå¿¡¼´Â ÀÚ¹Ù½ºÅ©¸³Æ® SPA¸¦ Á¤ÀÇÇÏ°í ´Ù¸¥ À¯ÇüÀÇ SPA¿Í ºñ±³ÇÑ´Ù. ¶Ç, ÀüÅëÀûÀÎ À¥»çÀÌÆ®¿Í SPA¸¦ ºñ±³ÇÏ°í, SPA¸¸ÀÇ ÀåÁ¡°ú SPA¸¦ »ç¿ëÇÒ ¶§ÀÇ ÇØ°á °úÁ¦¸¦ ´Ù·é´Ù. ÀÌ Àå¿¡¼´Â SPA °³¹ß °úÁ¤À» Â÷±ÙÂ÷±Ù ¾Ë·ÁÁÜÀ¸·Î½á ÀåÀ» ¸¶Ä¥ ÁîÀ½¿¡´Â ½ÇÁ¦·Î °³¹ßÇÑ SPA¸¦ »ç¿ëÇÒ ¼ö ÀÖ°Ô ÇØÁØ´Ù.
2Àå¿¡¼´Â SPA¸¦ °³¹ßÇÏ´Â µ¥ ÇÙ½ÉÀÌ µÇ´Â ÀÚ¹Ù½ºÅ©¸³Æ®·Î ÇÒ ¼ö ÀÖ´Â ÀÏ°ú ÀÚ¹Ù½ºÅ©¸³Æ®¿¡¼ Á¦°øÇÏ´Â ±â´ÉÀ» ´Ù·é´Ù. SPA¿¡¼´Â ´Ü¼øÈ÷ ³ªÁß¿¡ »ç¿ëÀÚ »óÈ£ÀÛ¿ëÀ» Ãß°¡Çϱâ À§ÇØ ÀÚ¹Ù½ºÅ©¸³Æ®¸¦ µµÀÔÇÏ´Â ¼öÁØÀÌ ¾Æ´Ï¶ó °ÅÀÇ ¸ðµç Äڵ带 ÀÚ¹Ù½ºÅ©¸³Æ®·Î ÀÛ¼ºÇÏ´Â ¸¸Å ÀÚ¹Ù½ºÅ©¸³Æ® ¾ð¾î°¡ ¾î¶»°Ô µ¿ÀÛÇÏ´ÂÁö Á¦´ë·Î ÀÌÇØÇÏ´Â °Ô ¸Å¿ì Áß¿äÇÏ´Ù. 2Àå¿¡¼´Â ÀÚ¹Ù½ºÅ©¸³Æ® º¯¼ö, Çü½Ä, ÇÔ¼ö´Â ¹°·Ð ½ÇÇà ÄÁÅؽºÆ®, Ŭ·ÎÀú, °´Ã¼ ÇÁ·ÎÅäŸÀÔ °°Àº °í±Þ ÁÖÁ¦µµ ´Ù·é´Ù.
3Àå¿¡¼´Â ÀÌ Ã¥¿¡¼ °è¼ÓÇؼ »ç¿ëÇÏ´Â SPA ¾ÆÅ°ÅØó¸¦ ¼Ò°³ÇÑ´Ù. ¶Ç, Áß½ÉÀÌ µÇ´Â »ç¿ëÀÚ ÀÎÅÍÆäÀ̽º ¸ðµâ ¿ªÇÒÀ» ÇÏ´Â ¼Ðµµ ¼Ò°³ÇÑ´Ù. ¼ÐÀº ±â´É ¸ðµâÀ» Á¶À²ÇÏ°í ºê¶ó¿ìÀú Àü¿ª À̺¥Æ®³ª URL°ú ÄíÅ° °°Àº µ¥ÀÌÅ͸¦ °ü¸®ÇÑ´Ù. ÆäÀÌÁö »óŸ¦ °ü¸®ÇÒ ¶§´Â À̺¥Æ® Çڵ鷯...¸¦ ±¸ÇöÇÏ°í ¾ÞÄ¿ ÀÎÅÍÆäÀ̽º ÆÐÅÏÀ» »ç¿ëÇÑ´Ù.
4Àå¿¡¼´Â SPA¿¡¼ Àß Á¤ÀǵŠÀÖ°í ½ºÄÚÇÁ°¡ ¸íÈ®È÷ ±¸ºÐµÈ ±â´ÉÀ» Á¦°øÇÏ´Â ±â´É ¸ðµâÀ» ÀÚ¼¼È÷ ´Ù·é´Ù. ¶Ç, Àß Á¤ÀÇµÈ ±â´É ¸ðµâÀ» ¼µåÆÄƼ ÀÚ¹Ù½ºÅ©¸³Æ®¿Í ºñ±³ÇØ Â÷ÀÌÁ¡À» ¾Ë¾Æº»´Ù. ÀÌ °úÁ¤¿¡¼ ÄÚµå Ç°Áú°ú ¸ðµâȸ¦ µ½±â À§ÇØ °í¸³È¸¦ Ãß±¸ÇÑ´Ù.
5Àå¿¡¼´Â ´ÜÀÏ ³×ÀÓ½ºÆäÀ̽º¿¡ ¸ðµç ºñÁî´Ï½º ·ÎÁ÷À» ¸ð¾Æ³õ´Â ¸ðµ¨ ¸ðµâÀ» °³¹ßÇÏ´Â ¹ýÀ» ÀÚ¼¼È÷ ¾Ë¾Æº»´Ù. ¸ðµ¨Àº Ŭ¶óÀ̾ðÆ®¿¡°Ô¼ µ¥ÀÌÅÍ °ü¸® ¹× ¼¹ö¿ÍÀÇ »óÈ£ÀÛ¿ëÀ» °í¸³ÈÇÑ´Ù. ÀÌ Àå¿¡¼´Â People API¸¦ ¼³°èÇÏ°í °³¹ßÇÑ´Ù. ¸ðµ¨Àº °¡Â¥ µ¥ÀÌÅÍ ¸ðµâ°ú ÀÚ¹Ù½ºÅ©¸³Æ® ÄܼÖÀ» »ç¿ëÇØ Å×½ºÆ®ÇÑ´Ù.
6Àå¿¡¼´Â ¸ðµ¨¿¡ ´ëÇÑ ÀÛ¾÷À» ¸¶Ä£´Ù. ÀÌ Àå¿¡¼´Â Chat API¸¦ ¼³°è ¹× °³¹ßÇÏ°í, ¿ª½Ã °¡Â¥ µ¥ÀÌÅÍ ¸ðµâ ¹× ÀÚ¹Ù½ºÅ©¸³Æ® ÄܼÖÀ» »ç¿ëÇØ Å×½ºÆ®ÇÑ´Ù. ¶Ç, µ¥ÀÌÅÍ ¸ðµâÀ» µµÀÔÇÏ°í, À¥ ¼¹ö¿¡¼ ¡®½ÇÁ¦¡¯ µ¥ÀÌÅ͸¦ °¡Á®¿Í »ç¿ëÇÏ°Ô²û ¾ÖÇø®ÄÉÀ̼ÇÀ» ¼öÁ¤ÇÑ´Ù.
7Àå¿¡¼´Â À¥ ¼¹ö·Î Node.js¸¦ µµÀÔÇÑ´Ù. SPA¿¡¼´Â ´ëºÎºÐ Äڵ尡 Ŭ¶óÀ̾ðÆ® Ãø¿¡ Á¸ÀçÇÏ´Â ¸¸Å ¹é¿£µå´Â ¾ÖÇø®ÄÉÀ̼ÇÀÇ ¿ä±¸ Á¶°ÇÀ» ÃæÁ·ÇÒ ¼ö ÀÖ´Â ¼º´ÉÀ» º¸ÀåÇϱ⸸ ÇÏ¸é ¾î¶² ¾ð¾î·Î ÀÛ¼ºÇÏ´õ¶óµµ »ó°ü¾ø´Ù. ¹é¿£µå¸¦ ÀÚ¹Ù½ºÅ©¸³Æ®·Î ÀÛ¼ºÇϸé ÇÁ·Î±×·¡¹Ö ȯ°æÀ» ÀÏ¿øÈÇÒ ¼ö ÀÖ°í, Àüü °³¹ß ½ºÅõµ ±×¸¸Å ´Ü¼øÇØÁø´Ù. Node.js¸¦ »ç¿ëÇغ» °æÇèÀÌ ¾ø´Ù¸é ÀÌ ÀåÀÇ ³»¿ëÀÌ ±âÃÊ Áö½ÄÀ» ½×´Â µ¥ Å« µµ¿òÀÌ µÉ °ÍÀÌ´Ù. ¶Ç, ¼÷·ÃµÈ Node.js °³¹ßÀÚ¶ó¸é ÀÌ ÀåÀ» ÅëÇØ SPA¿¡¼ ¼¹ö°¡ ´ã´çÇÒ ¿ªÇÒ¿¡ ´ëÇÑ Çý¾ÈÀ» ¾òÀ» ¼ö ÀÖ´Ù.
8Àå¿¡¼´Â µ¥ÀÌÅͺ£À̽º±îÁö ¾ÖÇø®ÄÉÀÌ¼Ç ½ºÅÃÀ» È®ÀåÇÑ´Ù. ¿©±â¼´Â Ŭ¶óÀ̾ðÆ®¿¡¼ µ¥ÀÌÅ͸¦ ó¸®ÇÏ´Â Çü½Ä°ú °°Àº JSON ¹®¼ Çü½ÄÀ¸·Î µ¥ÀÌÅ͸¦ ÀúÀåÇÏ´Â °ËÁõµÈ µ¥ÀÌÅͺ£À̽º¶ó´Â Á¡¿¡¼ ¸ù°íµðºñ¸¦ »ç¿ëÇÑ´Ù. ÀÌ Àå¿¡¼´Â SPA¿¡¼ µ¥ÀÌÅͺ£À̽ºÀÇ ¿ªÇÒÀ» »ìÆ캸±â Àü¿¡ ¸ù°íµðºñ¸¦ óÀ½ »ç¿ëÇÏ´Â µ¶ÀÚ¸¦ À§ÇØ ¸ù°íµðºñ¿¡ ´ëÇØ °£´ÜÈ÷ ¼Ò°³ÇÑ´Ù.
9Àå¿¡¼´Â ÀüÅëÀûÀÎ MVC À¥ ¾ÖÇø®ÄÉÀ̼ǰú´Â ´Ù¸¥ SPAÀÇ ¼¼ºÎ °³³äÀ» ´Ù·é´Ù. ÀÌ °úÁ¤¿¡¼ °Ë»ö ¿£ÁøÀ» À§ÇÑ SPA ÃÖÀûÈ, SPA ¾Ö³Î¸®Æ½½º Àû¿ë, SPA ³» ¿¡·¯ ·Î±ë °°Àº ÁÖÁ¦¸¦ ´Ù·é´Ù. ¶Ç, ÀüÅëÀûÀÎ À¥ ¾ÖÇø®ÄÉÀ̼ÇÀÇ °ü½É ¿µ¿ª Áß SPA °³¹ß¿¡¼ ƯÈ÷ Áß¿äÇÑ ºÎºÐ(CDNÀ» ÅëÇÑ Á¤Àû ÄÜÅÙÃ÷ÀÇ ºü¸¥ Á¦°ø, ½ºÅÃÀÇ °¢ ·¹º§ ij½Ì)µµ »ìÆ캻´Ù.
ºÎ·Ï A¿¡¼´Â ¿ì¸®°¡ »ç¿ëÇÏ´Â ÀÚ¹Ù½ºÅ©¸³Æ® ÄÚµù Ç¥ÁØÀ» ÀÚ¼¼È÷ »ìÆ캻´Ù. ¹°·Ð µ¶Àڵ鿡°Ô ÀÌ Ç¥ÁØÀÌ ÀûÇÕÇÒ ¼öµµ ÀÖ°í, ÀûÇÕÇÏÁö ¾ÊÀ» ¼öµµ ÀÖ°ÚÁö¸¸ ÀÌ¿Í °°Àº Ç¥ÁØÀ» È°¿ëÇϸé Å×½ºÆ®Çϱ⠽±°í, °ü¸®Çϱ⠽¬¿ì¸ç, Àб⠽¬¿î ÀÚ¹Ù½ºÅ©¸³Æ® Äڵ带 SPA¿¡¼ ±¸Á¶ÈÇÏ´Â µ¥ ¸Å¿ì Å« µµ¿òÀÌ µÈ´Ù. ¿©±â¼´Â ÄÚµù Ç¥ÁØÀÌ Áß¿äÇÑ ÀÌÀ¯¸¦ »ìÆ캸°í, ÄÚµå Á¶Á÷È ¹× ¹®¼È ±â¹ý, º¯¼ö ¹× ¸Þ¼µå ¸í¸í¹ý, ³×ÀÓ½ºÆäÀ̽º º¸È£, ÆÄÀÏ Á¶Á÷È, JSLint¸¦ È°¿ëÇÑ ÀÚ¹Ù½ºÅ©¸³Æ® °ËÁõ ±â¹ýÀ» ´Ù·é´Ù. ¶Ç, ÄÚµùÇÏ´Â µ¿¾È ¾ðÁ¦µç Âü°íÇÒ ¼ö ÀÖ°Ô 2ÆäÀÌÁö ºÐ·®ÀÇ ·¹ÆÛ·±½ºµµ Á¦°øÇÑ´Ù.
ºÎ·Ï B¿¡¼´Â SPA¿¡¼ÀÇ Å×½ºÆ®¸¦ ´Ù·é´Ù. SPA Å×½ºÆ®´Â º°µµ Ã¥¿¡¼ ´Ù·ê ¼ö ÀÖÀ» ¸¸Å ¹æ´ëÇÑ ÁÖÁ¦ÀÌÁö¸¸, ±×¸¸Å Áß¿äÇÏ°í ÇÙ½ÉÀûÀÎ ÁÖÁ¦À̹ǷΠÀÌ Ã¥¿¡¼µµ ´Ù·ç°í ³Ñ¾î°£´Ù. ¿©±â¼´Â Å×½ºÆ® ¸ðµå¸¦ ¼³Á¤ÇÏ´Â ¹ý, Å×½ºÆ® ÇÁ·¹ÀÓ¿öÅ©¸¦ ¼±ÅÃÇÏ´Â ¹ý, Å×½ºÆ® ½ºÀ§Æ®¸¦ ÀÛ¼ºÇÏ´Â ¹ý, Å×½ºÆ® ¼³Á¤À» À§ÇØ SPA ¸ðµâÀ» ¼öÁ¤ÇÏ´Â ¹ýÀ» ´Ù·é´Ù
-
-
[1ºÎ] SPA ¼Ò°³
¢Ã 01Àå: ù ¹ø° ´ÜÀÏ ÆäÀÌÁö ¾ÖÇø®ÄÉÀ̼Ç
1.1 SPAÀÇ Á¤ÀÇ, °£´ÜÇÑ ¹è°æ ¼Ò°³, ÁÖ¾ÈÁ¡
1.1.1 °£´ÜÇÑ ¹è°æ ¼Ò°³
1.1.2 ÀÚ¹Ù½ºÅ©¸³Æ® SPA°¡ µÚ´Ê°Ô ÁÖ¸ñ¹ÞÀº ÀÌÀ¯
1.1.3 ÀÌ Ã¥ÀÇ ¸ñÇ¥
1.2 ù ¹ø° SPA °³¹ß
1.2.1 SPAÀÇ ¸ñÇ¥ Á¤ÀÇ
1.2.2 ÆÄÀÏ ±¸Á¶ °³¹ß
1.2.3 Å©·Ò °³¹ßÀÚ µµ±¸ ¼³Á¤
1.2.4 HTML/CSS °³¹ß
1.2.5 ÀÚ¹Ù½ºÅ©¸³Æ® Ãß°¡
1.2.6 Å©·Ò °³¹ßÀÚ µµ±¸¸¦ È°¿ëÇÑ ¾ÖÇø®ÄÉÀÌ¼Ç °Ë»ç
1.3 Àß ÀÛ¼ºµÈ SPAÀÇ »ç¿ëÀÚ Ãø¸é ÀåÁ¡
1.4 Á¤¸®
¢Ã 02Àå: ÀÚ¹Ù½ºÅ©¸³Æ® ´Ù½Ã ¹è¿ì±â
2.1 º¯¼ö ½ºÄÚÇÁ
2.2 º¯¼ö ²ø¾î¿Ã¸²
2.3 º¯¼ö ²ø¾î¿Ã¸² ¹× ½ÇÇà ÄÁÅؽºÆ® °´Ã¼
2.3.1 ²ø¾î¿Ã¸²
2.3.2 ½ÇÇà ÄÁÅؽºÆ® ¹× ½ÇÇà ÄÁÅؽºÆ® °´Ã¼
2.4 ½ºÄÚÇÁ üÀÎ
2.5 ÀÚ¹Ù½ºÅ©¸³Æ® °´Ã¼ ¹× ÇÁ·ÎÅäŸÀÔ Ã¼ÀÎ
2.5.1 ÇÁ·ÎÅäŸÀÔ Ã¼ÀÎ
2.6 ÇÔ¼ö - ÀÚ¼¼È÷ »ìÆ캸±â
2.6.1 ÇÔ¼ö¿Í À͸í ÇÔ¼ö
2.6.2 Àڱ⠽ÇÇà À͸í ÇÔ¼ö
2.6.3 ¸ðµâ ÆÐÅÏ - ÀÚ¹Ù½ºÅ©¸³Æ®¿¡¼ÀÇ private º¯¼ö È°¿ë
2.6.4 Ŭ·ÎÀú
2.7 Á¤¸®
[2ºÎ] SPA Ŭ¶óÀ̾ðÆ®
¢Ã 03Àå: ¼Ð °³¹ß
3.1 ¼Ð »ìÆ캸±â
3.2 ÆÄÀÏ ¹× ³×ÀÓ½ºÆäÀ̽º ¼³Á¤
3.2.1 ÆÄÀÏ ±¸Á¶ Çü¼º
3.2.2 ¾ÖÇø®ÄÉÀ̼ÇÀÇ HTML ÄÚµå ÀÛ...¼º
3.2.3 ·çÆ® CSS ³×ÀÓ½ºÆäÀ̽º »ý¼º
3.2.4 ·çÆ® ÀÚ¹Ù½ºÅ©¸³Æ® ³×ÀÓ½ºÆäÀ̽º »ý¼º
3.3 ±â´É ÄÁÅ×ÀÌ³Ê °³¹ß
3.3.1 Àü·« ¼±ÅÃ
3.3.2 ¼Ð HTML ÀÛ¼º
3.3.3 ¼Ð CSS ÀÛ¼º
3.4 ±â´É ÄÁÅ×ÀÌ³Ê ·»´õ¸µ
3.4.1 HTMLÀ» ÀÚ¹Ù½ºÅ©¸³Æ®·Î º¯°æ
3.4.2 ÀÚ¹Ù½ºÅ©¸³Æ®¿¡ HTML ÅÛÇø´ Ãß°¡
3.4.3 ¼Ð ½ºÅ¸ÀÏ ½ÃÆ® ÀÛ¼º
3.4.4 ¾ÖÇø®ÄÉÀ̼ǿ¡¼ÀÇ ¼Ð »ç¿ë
3.5 ±â´É ÄÁÅ×ÀÌ³Ê °ü¸®
3.5.1 äÆà ½½¶óÀÌ´õ¸¦ ¿©´Ý´Â ¸Þ¼µå ÀÛ¼º
3.5.2 äÆà ½½¶óÀÌ´õ¿¡ Ŭ¸¯ À̺¥Æ® Çڵ鷯 Ãß°¡
3.6 ¾ÖÇø®ÄÉÀÌ¼Ç »óÅ °ü¸®
3.6.1 »ç¿ëÀÚ°¡ ±â´ëÇÏ´Â ºê¶ó¿ìÀúÀÇ ±âº» µ¿ÀÛ
3.6.2 È÷½ºÅ丮 ÄÁÆ®·Ñ °ü¸® Àü·« ¼±ÅÃ
3.6.3 È÷½ºÅ丮 À̺¥Æ® ¹ß»ý¿¡ µû¸¥ ¾ÞÄ¿ º¯°æ
3.6.4 ¾ÞÄ¿¸¦ È°¿ëÇÑ ¾ÖÇø®ÄÉÀÌ¼Ç »óÅ ÁÖµµ
3.7 Á¤¸®
¢Ã 04Àå: ±â´É ¸ðµâ Ãß°¡
4.1 ±â´É ¸ðµâ ±¸Çö Àü·«
4.1.1 ¼µåÆÄƼ ¸ðµâ°úÀÇ ºñ±³
4.1.2 ±â´É ¸ðµâ°ú ÇÁ·¢Å» MVC ÆÐÅÏ
4.2 ±â´É ¸ðµâ ÆÄÀÏ ¼³Á¤
4.2.1 ÆÄÀÏ ±¸Á¶
4.2.2 ÆÄÀÏ »ý¼º ¹× ÀÛ¼º
4.2.3 ÀÛ¾÷ °á°ú È®ÀÎ
4.3 ¸Þ¼µå API ¼³°è
4.3.1 ¾ÞÄ¿ ÀÎÅÍÆäÀ̽º ÆÐÅÏ
4.3.2 Chat ¼³Á¤ API
4.3.3 Chat ÃʱâÈ API
4.3.4 Chat setSliderPosition API
4.3.5 ¼³Á¤ ¹× ÃʱâÈ ÁøÇà °úÁ¤
4.4 ±â´É APIÀÇ ±¸Çö
4.4.1 ½ºÅ¸ÀÏ ½ÃÆ®
4.4.2 Chat ¸ðµâ ¼öÁ¤
4.4.3 ¼Ð Á¤¸®
4.4.4 ½ÇÇà È帧 ºÐ¼®
4.5 ÀÚÁÖ »ç¿ëÇÏ´Â ¸Þ¼µå Ãß°¡
4.5.1 removeSlider ¸Þ¼µå
4.5.2 handleResize ¸Þ¼µå
4.6 Á¤¸®
¢Ã 05Àå: ¸ðµ¨ °³¹ß
5.1 ¸ðµ¨ ÀÌÇØ
5.1.1 °³¹ß °úÁ¦
5.1.2 ¸ðµ¨ÀÌ ÇØ¾ß ÇÏ´Â ÀÏ
5.1.3 ¸ðµ¨ÀÌ ÇÏÁö ¸»¾Æ¾ß ÇÏ´Â ÀÏ
5.2 ¸ðµ¨ ¹× ´Ù¸¥ ÆÄÀÏ ¼³Á¤
5.2.1 ÆÄÀÏ ±¸Á¶ ±âȹ
5.2.2 ÆÄÀÏ ÀÛ¼º
5.2.3 ÅëÀÏµÈ ÅÍÄ¡-¸¶¿ì½º ¶óÀ̺귯¸® È°¿ë
5.3.1 person °´Ã¼ ¼³°è
5.3.2 people °´Ã¼ API ¼³°è
5.3.3 people °´Ã¼ API ¹®¼È
5.4 people °´Ã¼ °³¹ß
5.4.1 °¡Â¥ »ç¶÷ ¸ñ·Ï °³¹ß
5.4.2 people °´Ã¼ÀÇ »ç¿ë
5.4.3 people °´Ã¼ ¸¶¹«¸®
5.4.4 people °´Ã¼ API Å×½ºÆ®
5.5 ¼Ð¿¡¼ÀÇ ·Î±×ÀÎ/·Î±×¾Æ¿ô È°¼ºÈ
5.5.1 ·Î±×ÀÎ »ç¿ëÀÚ °æÇè ¼³°è
5.5.2 ¼Ð ÀÚ¹Ù½ºÅ©¸³Æ® ¾÷µ¥ÀÌÆ®
5.5.3 ¼Ð ½ºÅ¸ÀÏ ½ÃÆ® ¾÷µ¥ÀÌÆ®
5.5.4 UI¸¦ È°¿ëÇÑ ·Î±×ÀÎ/·Î±×¾Æ¿ô Å×½ºÆ®
5.6 Á¤¸®
¢Ã 06Àå: ¸ðµ¨ ¹× µ¥ÀÌÅÍ ¸ðµâ ¿Ï¼º
6.1 chat °´Ã¼ ¼³°è
6.1.1 ¸Þ¼µå ¹× À̺¥Æ® ¼³°è
6.1.2 chat °´Ã¼ API ¹®¼È
6.2 chat °´Ã¼ °³¹ß
6.2.1 join ¸Þ¼µå¸¦ ½ÃÀÛÀ¸·Î ÇÑ chat °´Ã¼ ±¸Çö
6.2.2 chat.join¿¡ ¹ÝÀÀÇϱâ À§ÇÑ ±â´É ¸ðµâ ¼öÁ¤
6.2.3 chat.join ¸Þ¼µå Å×½ºÆ®
6.2.4 chat °´Ã¼¿¡ ¸Þ½ÃÁö Àü´Þ ±â´É Ãß°¡
6.2.5 ¸Þ½Ã¡ ¿¡¹Ä·¹À̼ÇÀ» À§ÇÑ °¡Â¥ ¸ðµâ ¼öÁ¤
6.2.6 äÆà ¸Þ½ÃÁö Å×½ºÆ®
6.3 ¸ðµ¨¿¡ ¾Æ¹ÙŸ Áö¿ø ±â´É Ãß°¡
6.3.1 chat °´Ã¼¿¡ ¾Æ¹ÙŸ Áö¿ø ±â´É Ãß°¡
6.3.2 ¾Æ¹ÙŸ ¿¡¹Ä·¹À̼ÇÀ» À§ÇÑ °¡Â¥ ¸ðµâ ¼öÁ¤
6.3.3 ¾Æ¹ÙŸ Áö¿ø Å×½ºÆ®
6.3.4 Å×½ºÆ® ÁÖµµ °³¹ß
6.4 Chat ±â´É ¸ðµâ ¿Ï¼º
6.4.1 äÆà ÀÚ¹Ù½ºÅ©¸³Æ® ¼öÁ¤
6.4.2 ½ºÅ¸ÀÏ ½ÃÆ® ¾÷µ¥ÀÌÆ®
6.4.3 äÆà UI Å×½ºÆ®
6.5 ¾Æ¹ÙŸ ±â´É ¸ðµâ »ý¼º
6.5.1 ¾Æ¹ÙŸ ÀÚ¹Ù½ºÅ©¸³Æ® »ý¼º
6.5.2 ¾Æ¹ÙŸ ½ºÅ¸ÀÏ ½ÃÆ® »ý¼º
6.5.3 ¼Ð ¹× ºê¶ó¿ìÀú ¹®¼ ¾÷µ¥ÀÌÆ®
6.5.4 ¾Æ¹ÙŸ ±â´É ¸ðµâ Å×½ºÆ®
6.6 µ¥ÀÌÅÍ ¹ÙÀεù°ú Á¦ÀÌÄõ¸®
6.7 µ¥ÀÌÅÍ ¸ðµâ »ý¼º
6.8 Á¤¸®
[3ºÎ] SPA ¼¹ö
¢Ã 07Àå: À¥ ¼¹ö
7.1 ¼¹öÀÇ ¿ªÇÒ
7.1.1 ÀÎÁõ ¹× ±ÇÇÑ ºÎ¿©
7.1.2 À¯È¿¼º °ËÁõ
7.1.3 µ¥ÀÌÅÍ º¸Á¸°ú µ¿±âÈ
7.2 Node.js
7.2.1 ¿Ö Node.jsÀΰ¡?
7.2.2 Node.js¸¦ È°¿ëÇÑ ¡®Hello World¡¯ °³¹ß
7.2.3 Ä¿³ØÆ® ¼³Ä¡ ¹× »ç¿ë
7.2.4 Ä¿³ØÆ® ¹Ìµé¿þ¾î Ãß°¡
7.2.5 ÀͽºÇÁ·¹½º ¼³Ä¡¿Í È°¿ë
7.2.6 ÀͽºÇÁ·¹½º ¹Ìµé¿þ¾î Ãß°¡
7.2.7 ÀͽºÇÁ·¹½º ȯ°æ ¼³Á¤ È°¿ë
7.2.8 ÀͽºÇÁ·¹½º¸¦ È°¿ëÇÑ Á¤Àû ÆÄÀÏ Á¦°ø
7.3 °í±Þ ¶ó¿ìÆÃ
7.3.1 User CRUD ¶ó¿ìÆ®
7.3.2 ¹ü¿ëÀû CRUD ¶ó¿ìÆÃ
7.3.3 º°µµ Node.js ¸ðµâ·ÎÀÇ ¶ó¿ìÆà ÀÌ°ü
7.4 ÀÎÁõ°ú ±ÇÇÑ ºÎ¿© Ãß°¡
7.4.1 ±âº» ÀÎÁõ
7.5 À¥ ¼ÒÄÏ ¹× Socket.IO
7.5.1 °£´ÜÇÑ Socket.IO
7.5.2 Socket.IO ¹× ¸Þ½Ã¡ ¼¹ö
7.5.3 Socket.IO¸¦ È°¿ëÇÑ ÀÚ¹Ù½ºÅ©¸³Æ® ¾÷µ¥ÀÌÆ®
7.6 Á¤¸®
¢Ã 08Àå: ¼¹ö µ¥ÀÌÅͺ£À̽º
8.1 µ¥ÀÌÅͺ£À̽ºÀÇ ¿ªÇÒ
8.1.1 µ¥ÀÌÅÍ ÀúÀå¼Ò ¼±ÅÃ
8.1.2 µ¥ÀÌÅÍ º¯Çü Çʿ伺ÀÇ Á¦°Å
8.1.3 ÇÊ¿äÇÑ °÷À¸·ÎÀÇ ·ÎÁ÷ À̵¿
8.2 ¸ù°íµðºñ ¼Ò°³
8.2.1 ¹®¼ Á᫐ ÀúÀå¼Ò
8.2.2 µ¿Àû ¹®¼ ±¸Á¶
8.2.3 ¸ù°íµðºñ ½ÃÀÛÇϱâ
8.3 ¸ù°íµðºñ µå¶óÀ̹ö È°¿ë
8.3.1 ÇÁ·ÎÁ§Æ® ÆÄÀÏ Áغñ
8.3.2 ¸ù°íµðºñ ¼³Ä¡ ¹× ¿¬°á
8.3.3 ¸ù°íµðºñ CRUD ¸Þ¼µå È°¿ë
8.3.4 ¼¹ö ¾ÖÇø®ÄÉÀ̼ǿ¡ CRUD Ãß°¡
8.4 Ŭ¶óÀ̾ðÆ® µ¥ÀÌÅÍ À¯È¿¼º °ËÁõ
8.4.1 °´Ã¼ ŸÀÔÀÇ À¯È¿¼º °ËÁõ
8.4.2 °´Ã¼ À¯È¿¼º °Ë»ç
8.5 º°µµ CRUD ¸ðµâ »ý¼º
8.5.1 ÆÄÀÏ ±¸Á¶ Áغñ
8.5.2 CRUD ·ÎÁ÷ÀÇ ¸ðµâ ÀÌ°ü
8.6 Chat ¸ðµâ °³¹ß
8.6.1 chat ¸ðµâ °³¹ß
8.6.2 adduser ¸Þ½ÃÁö Çڵ鷯ÀÇ ÀÛ¼º
8.6.3 updatechat ¸Þ½ÃÁö Çڵ鷯ÀÇ ÀÛ¼º
8.6.4 disconnect ¸Þ½ÃÁö Çڵ鷯 ÀÛ¼º
8.6.5 updateavatar ¸Þ½ÃÁö Çڵ鷯 ÀÛ¼º
8.7 Á¤¸®
¢Ã 09Àå: SPA ¹èÆ÷ Áغñ
9.1 °Ë»ö ¿£ÁøÀ» À§ÇÑ SPA ÃÖÀûÈ
9.1.1 ±¸±ÛÀÌ SPA¸¦ Å©·Ñ¸µÇÏ´Â ¹æ½Ä
9.2 Ŭ¶ó¿ìµå ¹× ¼µåÆÄƼ ¼ºñ½º
9.2.1 »çÀÌÆ® ¾Ö³Î¸®Æ½½º
9.2.2 Ŭ¶óÀ̾ðÆ® Ãø ¿¡·¯ ·Î±ë
9.2.3 ÄÜÅÙÃ÷ Àü´Þ ³×Æ®¿öÅ©
9.3 ij½Ì ¹× ij½Ã ¹ö½ºÆÃ
9.3.1 ij½Ì °¡´É¼º
9.3.2 À¥ ÀúÀå¼Ò
9.3.3 HTTP ij½Ì
9.3.4 ¼¹ö ij½Ì
9.3.5 µ¥ÀÌÅͺ£À̽º Äõ¸® ij½Ì
9.4 Á¤¸®
¢Ã ºÎ·Ï A: ÀÚ¹Ù½ºÅ©¸³Æ® ÄÚµù Ç¥ÁØ
A.1 ÄÚµù Ç¥ÁØÀÌ ÇÊ¿äÇÑ ÀÌÀ¯
A.2 ÄÚµå ·¹À̾ƿô°ú ÁÖ¼®
A.2.1 °¡µ¶¼ºÀ» À§ÇÑ ÄÚµå ·¹À̾ƿô
A.2.2 ¹®¼ ¼³¸íÀ» À§ÇÑ ÁÖ¼®
A.3 º¯¼ö¸í
A.3.1 ¸í¸í °ü·Ê¸¦ È°¿ëÇÑ ÁÖ¼® ÁÙÀ̱â¿Í °³¼±
A.3.2 ¸í¸í °¡À̵å¶óÀÎÀÇ È°¿ë
A.3.3 °¡À̵å¶óÀÎ ½ÇÀü È°¿ë
A. 4 º¯¼ö ¼±¾ð ¹× ´ëÀÔ
A.5 ÇÔ¼ö
A.6 ³×ÀÓ½ºÆäÀ̽º
A.7 ÆÄÀÏ¸í ¹× ·¹À̾ƿô
A.8 ±¸¹®
A.8.1 ¶óº§
A.8.2 ¸í·É
A.8.3 ´Ù¸¥ ±¸¹®
A.9 ÄÚµå À¯È¿¼º °ËÁõ
A.9.1 JSLint ¼³Ä¡
A.9.2 JSLint ¼³Á¤
A.9.3 JSLint È°¿ë
A.10 ¸ðµâ ÅÛÇø´
A.11 Á¤¸®
¢Ã ºÎ·ÏB: SPA Å×½ºÆ®
B.1 Å×½ºÆ® ¸ðµå ¼³Á¤
B.2 Å×½ºÆ® ÇÁ·¹ÀÓ¿öÅ© ¼±ÅÃ
B.3 nodeunit ¼³Á¤
B.4 Å×½ºÆ® ½ºÀ§Æ® ÀÛ¼º
B.4.1 Node.jsÀÇ ¸ðµâ ·Îµå
B.4.2 ´ÜÀÏ nodeunit Å×½ºÆ® ¼³Á¤
B.4.3 ù ¹ø° ½ÇÀü Å×½ºÆ® ÀÛ¼º
B.4.4 À̺¥Æ® ¹× Å×½ºÆ® ¸ÅÇÎ
B.4.5 Å×½ºÆ® ½ºÀ§Æ® ÀÛ¼º
B.5 Å×½ºÆ®¿¡ ¸ÂÃá SPA ¼öÁ¤
B.6 Á¤¸®
-
-
ÀÌ Ã¥À» ¾²°Ú´Ù°í »ý°¢ÇßÀ» ¶§ ¿ì¸®´Â 2/3 Á¤µµ¸¦ SPA Ŭ¶óÀ̾ðÆ® °³¹ß¿¡ ÃÊÁ¡À» ¸ÂÃß·Á°í Çß´Ù. ±×´ÙÀ½ ³ª¸ÓÁö 1/3¿¡¼´Â À¥ ¼¹ö¿Í SPA¸¦ Á¦°øÇÏ´Â µ¥ ÇÊ¿äÇÑ ¼ºñ½º¸¦ ´Ù·ç·Á°í Çß´Ù. ÇÏÁö¸¸ À¥ ¼¹ö·Î ¹» »ç¿ëÇØ¾ß ÇÒÁö °áÁ¤ÇϱⰡ ¾î·Á¿ü´Ù. ¿ì¸®´Â ·çºñ/·¹ÀÏÁî, ÀÚ¹Ù/ÅèĹ, mod_perl, ±âŸ Ç÷§ÆûÀ» »ç¿ëÇØ ÀüÅëÀûÀÎ À¥»çÀÌÆ® ¹× SPA »çÀÌÆ®¿¡ »ç¿ëÇÏ´Â ¼ö¸¹Àº À¥ ¼ºñ½º¸¦ ±¸ÇöÇÑ ¹Ù ÀÖÁö¸¸, ÀÌµé ±â¼úÀº ¸ðµÎ ´ÜÁ¡(ƯÈ÷ SPA¸¦ Áö¿øÇÒ ¶§)ÀÌ ÀÖ¾úÀ¸¹Ç·Î ¿ì¸®´Â ´õ ³ªÀº ±â¼úÀ» ¿øÇß´Ù.
¿ì¸®´Â ÃÖ±Ù Node.js¸¦ À¥ ¼¹ö·Î »ç¿ëÇÏ°í ¸ù°íµðºñ¸¦ µ¥ÀÌÅͺ£À̽º·Î »ç¿ëÇÏ´Â ¡®¼ø¼ö¡¯ ÀÚ¹Ù½ºÅ©¸³Æ® ½ºÅÃÀ¸·Î ¿ÏÀüÈ÷ ÀüȯÇß´Ù. ¹°·Ð ÀÌ °úÁ¤¿¡¼ ¾î·Á¿î Á¡µµ ÀÖ¾úÁö¸¸ ¿ì¸®´Â À̸¦ ÅëÇØ ¹º°¡ ÀÚÀ¯·Î¿öÁö´Â ±âºÐÀ» ´À²¼°í, ÀÚ¹Ù½ºÅ©¸³Æ®ÀÇ °·ÂÇÑ ÈûÀ» °æÇèÇÒ ¼ö ÀÖ¾ú´Ù. ÀÌ¿Í °°ÀÌ ÅëÀÏµÈ ¾ð¾î¿Í µ¥ÀÌÅÍ Çü½ÄÀ¸·Î ¾òÀ» ¼ö ÀÖ´Â ÀåÁ¡Àº ´ë°³ ´ÙÁß ¾ð¾î ½ºÅÃÀ» »ç¿ëÇÒ ¶§ ÀÒ°Ô µÇ´Â ƯÁ¤ ¾ð¾î °ü·Ã ±â´Éº¸´Ù ÈξÀ ÀÌÁ¡ÀÌ Å©´Ù.
¿ì¸®´Â ¡®¼ø¼ö¡¯ ÀÚ¹Ù½ºÅ©¸³Æ® ½ºÅÃÀ̾߸»·Î µ¶Àڵ鿡°Ô ÁÙ ¼ö ÀÖ´Â ÀÌ Ã¥ÀÇ °¡Àå Å« °¡Ä¡¶ó°í »ý°¢ÇÑ´Ù. ÀÌµé ¿ä¼Ò¸¦ ÀÌ¿Í °°ÀÌ ¸ðµÎ °áÇÕÇÑ Ã¥Àº ¿ì¸®°¡ ¾Ë°í ÀÖ´Â ÇÑ ¾ø±â ¶§¹®ÀÌ´Ù. ¶Ç, ¾ÕÀ¸·Î´Â ÀÌ¿Í °°Àº ¾ÖÇø®ÄÉÀÌ¼Ç ½ºÅÃÀÌ °è¼ÓÇؼ Àα⸦ ¾ò°í ´ÜÀÏ ÆäÀÌÁö ¾ÖÇø®ÄÉÀ̼ǿ¡¼ °¡Àå ¸¹ÀÌ »ç¿ëÇÏ´Â ½ºÅà Áß Çϳª°¡ µÉ °ÍÀ̶ó°í ±â´ëÇÑ´Ù.
-
-
|
¸¶ÀÌŬ ¹ÌÄÚ½ºÅ°(Michael Mikowski) [Àú]
|
|
-
¸¶ÀÌŬ S. ¹ÌÄÚ½ºÅ°´Â ¼ö»ó À̷¿¡ ºû³ª´Â »ê¾÷ µðÀÚÀ̳ÊÀÌÀÚ SPA ¾ÆÅ°ÅØÆ®·Î¼, 13³âÀÇ °æ·ÂÀ» °®Ãá Ç® ½ºÅà À¥ °³¹ßÀÚ ¹× ¾ÆÅ°ÅØÆ®´Ù. 2007³â AMDÀÇ 'Where to Buy' »çÀÌÆ®¸¦ °³¹ßÇÒ ´ç½Ã È£½ºÆà Á¦¾à ¶§¹®¿¡ ´Ù¸¥ ¼Ö·ç¼ÇÀ» »ç¿ëÇÒ ¼ö ¾ø°Ô µÇ¸é¼ »ó¿ë ´ÜÀÏ ÆäÀÌÁö À¥ ¾ÖÇø®ÄÉÀ̼Ç(SPA)À» óÀ½À¸·Î °³¹ßÇÏ°Ô µÆ´Ù. ÀÌÈÄ ¸¶ÀÌŬÀº SPAÀÇ ¹«ÇÑÇÑ °¡´É¼º¿¡ ¸Å·áµÇ¾î ¸¹Àº ¼Ö·ç¼ÇÀ» ¼³°èÇÏ°í °³¹ßÇÏ´Â ÀÛ¾÷À» Çß´Ù. ¿©·¯ ¿ÀǼҽº ÇÁ·ÎÁ§Æ®¿¡ °øÇåÇßÀ¸¸ç ´Ù¾çÇÑ Á¦ÀÌÄõ¸® Ç÷¯±×ÀÎÀ» ¹èÆ÷Çϱ⵵ Çß´Ù.
¿©·¯ ÄÁÆÛ·±½º ¹× ´ëÇÐ, ±â¾÷¿¡¼ ¹ßÇ¥ÇÑ ¹Ù ÀÖÀ¸¸ç, ÃÖ±Ù¿¡´Â UI ¾ÆÅ°ÅØÆ®, ÄÁ¼³ÅÏÆ®, UX ¿£Áö´Ï¾î¸µ Ã¥ÀÓÀÚ·Î ±Ù¹«ÇÏ°í ÀÖ´Ù.
-
|
À¯À±¼± [Àú]
|
|
-
Àε𠰳¹ßÀÚÀÌÀÚ ÇÁ¸®·£¼ ¹ø¿ª°¡·Î È°µ¿ ÁßÀÌ´Ù. À̵û±Ý http://joshy21.com/weblog¿¡ ¹ø¿ª°ú »ó°ü¾ø´Â ±ÛÀ» ¿Ã¸®°í ÀÖ´Ù. ¿ª¼·Î´Â [ÇÏµÓ ÀÎ ÇÁ·¢Æ¼½º], [½ÃÀÛÇϼ¼¿ä! iOS 6 ÇÁ·Î±×·¡¹Ö], [ÇÁ·ÎÆä¼Å³Î Node.js ÇÁ·Î±×·¡¹Ö], [NoSQL ÇÁ·Î±×·¡¹Ö], [ÇÁ·Î ½ºÇÁ¸µ 3], [¶óÀÌÇÁÇØÄ¿], [½ÃÀÛÇϼ¼¿ä! ¾ÆÀÌÆù 5 ÇÁ·Î±×·¡¹Ö], [¾Èµå·ÎÀÌµå ·¹½ÃÇÇ], [½ÃÀÛÇϼ¼¿ä! Unity 3D °ÔÀÓ ÇÁ·Î±×·¡¹Ö], [½ÃÀÛÇϼ¼¿ä! ¾Èµå·ÎÀÌµå °ÔÀÓ ÇÁ·Î±×·¡¹Ö], [½ÃÀÛÇϼ¼¿ä! ¾ÆÀÌÆù 4 ÇÁ·Î±×·¡¹Ö], [Ç÷¡½Ã ºô´õ 4 & Ç÷º½º 4 ¹ÙÀ̺í], [½±°í ºü¸£°Ô ÀÍÈ÷´Â CSS3], [½ºÇÁ¸µ ½ÃÅ¥¸®Æ¼ 3], [½ÃÀÛÇϼ¼¿ä! ¾ÆÀÌÆеå ÇÁ·Î±×·¡¹Ö] µîÀÌ ÀÖ´Ù.
-
-
Àüü 0°³ÀÇ ±¸¸ÅÈıⰡ ÀÖ½À´Ï´Ù.
|
ÀÎÅÍÆÄÅ©µµ¼´Â °í°´´ÔÀÇ ´Ü¼ø º¯½É¿¡ ÀÇÇÑ ±³È¯°ú ¹ÝÇ°¿¡ µå´Â ºñ¿ëÀº °í°´´ÔÀÌ ÁöºÒÄÉ µË´Ï´Ù.
´Ü, »óÇ°À̳ª ¼ºñ½º ÀÚüÀÇ ÇÏÀÚ·Î ÀÎÇÑ ±³È¯ ¹× ¹ÝÇ°Àº ¹«·á·Î ¹ÝÇ° µË´Ï´Ù. |
|
±³È¯ ¹× ¹ÝÇ°ÀÌ °¡´ÉÇÑ °æ¿ì |
»óÇ°À» °ø±Þ ¹ÞÀº ³¯·ÎºÎÅÍ 7ÀÏÀ̳» °¡´É
°ø±Þ¹ÞÀ¸½Å »óÇ°ÀÇ ³»¿ëÀÌ Ç¥½Ã, ±¤°í ³»¿ë°ú ´Ù¸£°Å³ª ´Ù¸£°Ô ÀÌÇàµÈ °æ¿ì¿¡´Â °ø±Þ¹ÞÀº ³¯·ÎºÎÅÍ 3°³¿ù À̳», ȤÀº ±×»ç½ÇÀ» ¾Ë°Ô µÈ ³¯ ¶Ç´Â ¾Ë ¼ö ÀÖ¾ú´ø ³¯·ÎºÎÅÍ 30ÀÏ À̳»
»óÇ°¿¡ ¾Æ¹«·± ÇÏÀÚ°¡ ¾ø´Â °æ¿ì ¼ÒºñÀÚÀÇ °í°´º¯½É¿¡ ÀÇÇÑ ±³È¯Àº »óÇ°ÀÇ Æ÷Àå»óÅ µîÀÌ ÀüÇô ¼Õ»óµÇÁö ¾ÊÀº °æ¿ì¿¡ ÇÑÇÏ¿© °¡´É |
|
±³È¯ ¹× ¹ÝÇ°ÀÌ ºÒ°¡´ÉÇÑ °æ¿ì |
±¸¸ÅÈ®Á¤ ÀÌÈÄ(¿ÀǸ¶ÄÏ»óÇ°¿¡ ÇÑÇÔ)
°í°´´ÔÀÇ Ã¥ÀÓ ÀÖ´Â »çÀ¯·Î »óÇ° µîÀÌ ¸ê½Ç ¶Ç´Â ÈÑ¼ÕµÈ °æ¿ì
(´Ü, »óÇ°ÀÇ ³»¿ëÀ» È®ÀÎÇϱâ À§ÇÏ¿© Æ÷Àå µîÀ» ÈѼÕÇÑ °æ¿ì´Â Á¦¿Ü)
½Ã°£ÀÌ Áö³²¿¡ µû¶ó ÀçÆǸŰ¡ °ï¶õÇÒ Á¤µµ·Î ¹°Ç°ÀÇ °¡Ä¡°¡ ¶³¾îÁø °æ¿ì
Æ÷Àå °³ºÀµÇ¾î »óÇ° °¡Ä¡°¡ ÈÑ¼ÕµÈ °æ¿ì |
|
´Ù¹è¼ÛÁöÀÇ °æ¿ì ¹ÝÇ° ȯºÒ |
´Ù¹è¼ÛÁöÀÇ °æ¿ì ´Ù¸¥ Áö¿ªÀÇ ¹ÝÇ°À» µ¿½Ã¿¡ ÁøÇàÇÒ ¼ö ¾ø½À´Ï´Ù.
1°³ Áö¿ªÀÇ ¹ÝÇ°ÀÌ ¿Ï·áµÈ ÈÄ ´Ù¸¥ Áö¿ª ¹ÝÇ°À» ÁøÇàÇÒ ¼ö ÀÖÀ¸¹Ç·Î, ÀÌÁ¡ ¾çÇØÇØ Áֽñ⠹ٶø´Ï´Ù. |
|
Áß°í»óÇ°ÀÇ ±³È¯ |
Áß°í»óÇ°Àº Á¦ÇÑµÈ Àç°í ³»¿¡¼ ÆǸŰ¡ ÀÌ·ç¾îÁö¹Ç·Î, ±³È¯Àº ºÒ°¡´ÉÇÕ´Ï´Ù. |
|
¿ÀǸ¶ÄÏ »óÇ°ÀÇ È¯ºÒ |
¿ÀǸ¶ÄÏ»óÇ°¿¡ ´ëÇÑ Ã¥ÀÓÀº ¿øÄ¢ÀûÀ¸·Î ¾÷ü¿¡°Ô ÀÖÀ¸¹Ç·Î, ±³È¯/¹ÝÇ° Á¢¼ö½Ã ¹Ýµå½Ã ÆǸÅÀÚ¿Í ÇùÀÇ ÈÄ ¹ÝÇ° Á¢¼ö¸¦ ÇϼžßÇϸç, ¹ÝÇ°Á¢¼ö ¾øÀÌ ¹Ý¼ÛÇϰųª, ¿ìÆíÀ¸·Î º¸³¾ °æ¿ì »óÇ° È®ÀÎÀÌ ¾î·Á¿ö ȯºÒÀÌ ºÒ°¡´ÉÇÒ ¼ö ÀÖÀ¸´Ï À¯ÀÇÇϽñ⠹ٶø´Ï´Ù. |
|
|
|
¹è¼Û¿¹Á¤ÀÏ ¾È³» |
ÀÎÅÍÆÄÅ© µµ¼´Â ¸ðµç »óÇ°¿¡ ´ëÇØ ¹è¼Û¿Ï·á¿¹Á¤ÀÏÀ» À¥»çÀÌÆ®¿¡ Ç¥½ÃÇÏ°í ÀÖ½À´Ï´Ù.
|
<ÀÎÅÍÆÄÅ© Á÷¹è¼Û »óÇ°> |
»óÇ°Àº ¿ù~Åä¿äÀÏ ¿ÀÀü 10½Ã ÀÌÀü ÁÖ¹®ºÐ¿¡ ´ëÇÏ¿© ´çÀÏ Ãâ°í/´çÀÏ ¹è¼Û¿Ï·á¸¦ º¸ÀåÇÏ´Â »óÇ°ÀÔ´Ï´Ù. |
»óÇ°Àº ¼¿ïÁö¿ª/ÆòÀÏ ÁÖ¹®ºÐÀº ´çÀÏ Ãâ°í/ÀÍÀÏ ¹è¼Û¿Ï·á¸¦ º¸ÀåÇϸç,
¼¿ï¿ÜÁö¿ª/ÆòÀÏ ÁÖ¹®ºÐÀÇ °æ¿ì´Â ¿ÀÈÄ 6½Ã±îÁö ÁÖ¹®ºÐ¿¡ ´ëÇÏ¿© ÀÍÀÏ ¹è¼Û¿Ï·á¸¦ º¸ÀåÇÏ´Â »óÇ°ÀÔ´Ï´Ù.
(´Ü, ¿ù¿äÀÏÀº 12½Ã±îÁö ÁÖ¹®¿¡ ÇÑÇÔ)
|
»óÇ°Àº, ÀÔ°í¿¹Á¤ÀÏ(Á¦Ç°Ãâ½ÃÀÏ)+Åùè»ç¹è¼ÛÀÏ(1ÀÏ)¿¡ ¹è¼Û¿Ï·á¸¦ º¸ÀåÇÕ´Ï´Ù. |
~
»óÇ°Àº À¯ÅëƯ¼º»ó ÀÎÅÍÆÄÅ©¿¡¼ Àç°í¸¦ º¸À¯ÇÏÁö ¾ÊÀº »óÇ°À¸·Î ÁÖ¹®ÀÏ+±âÁØÃâ°íÀÏ+Åùè»ç¹è¼ÛÀÏ(1ÀÏ)¿¡ ¹è¼Û¿Ï·á¸¦ º¸ÀåÇÕ´Ï´Ù.(Åä/°øÈÞÀÏÀº ¹è¼Û±â°£¿¡ Æ÷ÇÔµÇÁö ¾Ê½À´Ï´Ù.)
¡Ø±âÁØÃâ°íÀÏ:ÀÎÅÍÆÄÅ©°¡ »óÇ°À» ¼ö±ÞÇÏ¿© ¹°·ùâ°í¿¡¼ Æ÷Àå/Ãâ°íÇϱâ±îÁö ¼Ò¿äµÇ´Â ½Ã°£
|
|
<¾÷ü Á÷Á¢¹è¼Û/¿ÀǸ¶ÄÏ »óÇ°> |
~
»óÇ°Àº ¾÷ü°¡ ÁÖ¹®À» È®ÀÎÇÏ°í, Ãâ°íÇϱâ±îÁö °É¸®´Â ½Ã°£ÀÔ´Ï´Ù. ÁÖ¹®ÀÏ+±âÁØÃâ°íÀÏ+Åùè»ç¹è¼ÛÀÏ(2ÀÏ)¿¡ ¹è¼Û¿Ï·á¸¦ º¸ÀåÇÕ´Ï´Ù.(Åä/°øÈÞÀÏÀº ¹è¼Û±â°£¿¡ Æ÷ÇÔµÇÁö ¾Ê½À´Ï´Ù.)
¡Ø5ÀÏÀ̳» Ãâ°í°¡ ½ÃÀÛµÇÁö ¾ÊÀ»½Ã, ¿ÀǸ¶ÄÏ »óÇ°Àº ÀÚµ¿À¸·Î ÁÖ¹®ÀÌ Ãë¼ÒµÇ¸ç, °í°´´Ô²² Ç°Àýº¸»ó±ÝÀ» Áö±ÞÇØ µå¸³´Ï´Ù.
|
|
|
¹è¼Ûºñ ¾È³» |
µµ¼(Áß°íµµ¼ Æ÷ÇÔ)¸¸ ±¸¸ÅÇϽøé : ¹è¼Ûºñ 2,000¿ø (1¸¸¿øÀÌ»ó ±¸¸Å ½Ã ¹«·á¹è¼Û) À½¹Ý/DVD¸¸ ±¸¸ÅÇϽøé : ¹è¼Ûºñ 1,500¿ø (2¸¸¿øÀÌ»ó ±¸¸Å ½Ã ¹«·á¹è¼Û)
ÀâÁö/¸¸È/±âÇÁÆ®¸¸ ±¸¸ÅÇϽøé : ¹è¼Ûºñ 2,000¿ø (2¸¸¿øÀÌ»ó ±¸¸Å ½Ã ¹«·á¹è¼Û)
µµ¼¿Í À½¹Ý/DVD¸¦ ÇÔ²² ±¸¸ÅÇϽøé : ¹è¼Ûºñ 1,500¿ø 1¸¸¿øÀÌ»ó ±¸¸Å ½Ã ¹«·á¹è¼Û)
µµ¼¿Í ÀâÁö/¸¸È/±âÇÁÆ®/Áß°íÁ÷¹è¼Û»óÇ°À» ÇÔ²² ±¸¸ÅÇϽøé : 2,000¿ø (1¸¸¿øÀÌ»ó ±¸¸Å ½Ã ¹«·á¹è¼Û)
¾÷üÁ÷Á¢¹è¼Û»óÇ°À» ±¸¸Å½Ã : ¾÷üº°·Î »óÀÌÇÑ ¹è¼Ûºñ Àû¿ë
* ¼¼Æ®»óÇ°ÀÇ °æ¿ì ºÎºÐÃë¼Ò ½Ã Ãß°¡ ¹è¼Ûºñ°¡ ºÎ°úµÉ ¼ö ÀÖ½À´Ï´Ù.
* ºÏÄ«Æ®¿¡¼ ¹è¼Ûºñ¾ø¾Ö±â ¹öÆ°À» Ŭ¸¯Çϼż, µ¿ÀϾ÷ü»óÇ°À» Á¶±Ý ´õ ±¸¸ÅÇϽøé, ¹è¼Ûºñ¸¦ Àý¾àÇÏ½Ç ¼ö ÀÖ½À´Ï´Ù.
|
|
Çؿܹè¼Û ¾È³» |
ÀÎÅÍÆÄÅ©µµ¼¿¡¼´Â ±¹³»¿¡¼ ÁÖ¹®ÇϽðųª ÇØ¿Ü¿¡¼ ÁÖ¹®ÇÏ¿© ÇØ¿Ü·Î ¹è¼ÛÀ» ¿øÇÏ½Ç °æ¿ì DHL°ú Ư¾àÀ¸·Î Ã¥Á¤µÈ ¿ä±ÝÇ¥¿¡
ÀÇÇØ °³ÀÎÀÌ ÀÌ¿ëÇÏ´Â °æ¿ìº¸´Ù ¹è¼Û¿ä±ÝÀ» Å©°Ô ³·Ã߸ç DHL(www.dhl.co.kr)·Î Çؿܹè¼Û ¼ºñ½º¸¦ Á¦°øÇÕ´Ï´Ù.
Çؿܹè¼ÛÀº µµ¼/CD/DVD »óÇ°¿¡ ÇÑÇØ ¼ºñ½ºÇÏ°í ÀÖÀ¸¸ç, ´Ù¸¥ »óÇ°À» ºÏÄ«Æ®¿¡ ÇÔ²² ´ãÀ¸½Ç °æ¿ì Çؿܹè¼ÛÀÌ ºÒ°¡ÇÕ´Ï´Ù.
ÇØ¿ÜÁÖ¹®¹è¼Û ¼ºñ½º´Â ÀÎÅÍÆÄÅ© µµ¼ ȸ¿ø °¡ÀÔÀ» Çϼž߸¸ ½Åû °¡´ÉÇÕ´Ï´Ù. |
|
¾Ë¾ÆµÎ¼¼¿ä!!! |
µµ¸Å»ó ¹× Á¦ÀÛ»ç »çÁ¤¿¡ µû¶ó Ç°Àý/ÀýÆÇ µîÀÇ »çÀ¯·Î Ãë¼ÒµÉ ¼ö ÀÖ½À´Ï´Ù.
¿ÀǸ¶ÄϾ÷üÀÇ ¹è¼ÛÁö¿¬½Ã ÁÖ¹®ÀÌ ÀÚµ¿À¸·Î Ãë¼ÒµÉ ¼ö ÀÖ½À´Ï´Ù.
Ãâ°í°¡´É ½Ã°£ÀÌ ¼·Î ´Ù¸¥ »óÇ°À» ÇÔ²² ÁÖ¹®ÇÒ °æ¿ì Ãâ°í°¡´É ½Ã°£ÀÌ °¡Àå ±ä ±âÁØÀ¸·Î ¹è¼ÛµË´Ï´Ù.
À¯ÅëÀÇ Æ¯¼º»ó Ãâ°í±â°£Àº ¿¹Á¤º¸´Ù ¾Õ´ç°ÜÁö°Å³ª ´ÊÃçÁú ¼ö ÀÖ½À´Ï´Ù.
Åùè»ç ¹è¼ÛÀÏÀÎ ¼¿ï ¹× ¼öµµ±ÇÀº 1~2ÀÏ, Áö¹æÀº 2~3ÀÏ, µµ¼, »ê°£, ±ººÎ´ë´Â 3ÀÏ ÀÌ»óÀÇ ½Ã°£ÀÌ ¼Ò¿äµË´Ï´Ù. |
|
|
|
|