¹Ýµð¾Ø·ç´Ï½º ÀÎÅͳݼ­Á¡

³×ºñ°ÔÀÌ¼Ç ½Ç½Ã°£ Àαâ Ã¥

    Node.js µðÀÚÀÎ ÆÐÅÏ

    • Mario Casciaro, Luciano Mammino Àú
    • ±è¼º¿ø ¿ª
    • ¿µÁø´åÄÄ
    • 2018³â 10¿ù 20ÀÏ
    • Á¤°¡
      27,000¿ø
    • ÆÇ¸Å°¡
      24,300¿ø [10% ÇÒÀÎ]
    • °áÁ¦ ÇýÅÃ
      ¹«ÀÌÀÚ
    • Àû¸³±Ý
      1,350¿ø Àû¸³ [5%P]

      NAVER Pay °áÁ¦ ½Ã ³×À̹öÆäÀÌ Æ÷ÀÎÆ® 5% Àû¸³ ?

    • ¹è¼Û±¸ºÐ
      ¾÷ü¹è¼Û(¹ÝµðºÏ)
    • ¹è¼Û·á
      ¹«·á¹è¼Û
    • Ãâ°í¿¹Á¤ÀÏ

      Ãâ°í¿¹Á¤ÀÏ ¾È³»

      ¡Ø Ãâ°í¿¹Á¤ÀÏÀº µµ¼­ Àç°í»óȲ¿¡ µû¶ó º¯µ¿µÉ ¼ö ÀÖ½À´Ï´Ù.

      close

      2026³â 02¿ù 05ÀÏ(¸ñ)

      ¡Ø Ãâ°í¿¹Á¤ÀÏÀº µµ¼­ Àç°í»óȲ¿¡ µû¶ó º¯µ¿µÉ ¼ö ÀÖ½À´Ï´Ù.

    ¼ö·®
    ȸ¿ø¸®ºä
    - [0]
    ISBN: 9788931459425 504ÂÊ 188 x 257 (§®)

    Áö±Ý ÀÌÃ¥Àº

    ÀÌ Ã¥°ú ÇÔ²² ±¸¸ÅÇÑ Ã¥

    ÀÌ Ã¥ÀÌ ¼ÓÇÑ ºÐ¾ß

    ÃâÆÇ»ç ¸®ºä

    ÇÑ Â÷¿ø ³ôÀº À¥ ¼³°è¸¦ À§ÇÑ Node.js µðÀÚÀÎ ÆÐÅÏ °¡À̵å
    Node.js´Â JavaScript¸¦ »ç¿ëÇÏ¿© ½±°Ô È®Àå °¡´ÉÇÑ ¼­¹ö Ãø ¾îÇø®ÄÉÀ̼ÇÀ» ¸¸µé ¼ö ÀÖ´Â ¸Å¿ì À¯¿ëÇÑ ¼ÒÇÁÆ®¿þ¾î Ç÷§ÆûÀ¸·Î, È¿À²ÀûÀÎ ÄÚµå ÀÛ¼ºÀ» ÅëÇØ ¼³°è ¹× ÄÚµå ºÐÇÒÀ» °¡´ÉÇÏ°Ô ÇÕ´Ï´Ù.
    ÀÌ Ã¥Àº Node.jsÀÇ ºñµ¿±â ´ÜÀÏ ½º·¹µå ¾ÆÅ°ÅØÃ³¿Í ÁÖ¿ä µðÀÚÀÎ ÆÐÅÏÀ» ¼³¸íÇϰí, ºñµ¿±â½Ä Á¦¾î È帧 ÆÐÅϰú ½ºÆ®¸² ±¸¼º ¿ä¼Ò¸¦ ¸¶½ºÅÍÇÏ´Â ¹æ¹ýÀ» º¸¿©ÁÖ¸ç, °¡Àå ÀϹÝÀûÀÎ µðÀÚÀÎ ÆÐÅÏÀÇ Node.js ±¸Çö ¸ñ·Ï°ú Node.js Àü¿ë ƯÁ¤ µðÀÚÀÎ ÆÐÅÏÀ¸·Î ¸¶¹«¸®µË´Ï´Ù. ¶ÇÇÑ ¹ü¿ë JavaScript, È®À强°ú °°Àº º¸´Ù Áøº¸µÈ °³³äµéÀ» ÅëÇØ Node.js¸¦ »ç¿ëÇÏ¿© ¿£ÅÍÇÁ¶óÀÌÁî±Þ ¾îÇø®ÄÉÀ̼ÇÀ» ±¸ÃàÇϱâ À§ÇÑ ¸ðµç ÇÊ¿äÇÑ °³³äµéÀ» Á¦°øÇϰí ÀÖ½À´Ï´Ù. ÀÌ Ã¥ Àü¹Ý¿¡ °ÉÃÄ LevelDb, Redis, RabbitMQ, ZMQ, Express¿Í °°Àº ½ÇÁ¦ ¶óÀ̺귯¸®µé°ú ±â¼úµéÀ» ÅëÇØ ´Ù¾çÇÑ ÆÐÅϰú ±â¹ýÀ» º¸¿©ÁÖ¸ç, À̸¦ ÅëÇØ Node.js »ýŰè¿Í ±× ¼Ö·ç¼Çµé¿¡ ´ëÇÑ ÈǸ¢ÇÑ ¿¹½Ã¸¦ Á¦°øÇÒ °ÍÀÔ´Ï´Ù.

    * ³»¿ë ¼Ò°³

    1Àå. Node.js Ç÷§Æû¿¡ ¿À½Å °ÍÀ» ȯ¿µÇÕ´Ï´Ù.
    Node.js Ç÷§ÆûÀÇ ÇÙ½É ÆÐÅÏÀ» º¸¿©ÁÜÀ¸·Î½á Node.js ¾îÇø®ÄÉÀÌ¼Ç µðÀÚÀÎÀÇ ¼¼»óÀ¸·Î ¾È³»ÇÕ´Ï´Ù. Node.js »ýŰè¿Í öÇÐ, »õ·Î¿î ±â´É°ú ¸®¾×ÅÍ ÆÐÅÏ¿¡ ´ëÇÑ °£´ÜÇÑ ¼Ò°³¸¦ ´Ù·ç°í ÀÖ½À´Ï´Ù.

    2Àå. Node.jsÀÇ Çʼö ÆÐÅÏ
    Node.js¸¦ »ç¿ëÇÑ ºñµ¿±â ÄÚµù°ú ¼³°è ÆÐÅÏÀÇ Ã¹ ´Ü°è·Î Äݹé°ú À̺¥Æ® À̹ÌÅÍ(¿ÉÀú¹ö ÆÐÅÏ)¿¡ ´ëÇØ ³íÀÇÇÏ°í ºñ±³ÇÕ´Ï´Ù. ¶ÇÇÑ Node.js ¸ðµâ ½Ã½ºÅÛ°ú °ü·Ã ÆÐÅϵéÀ» ¼Ò°³ÇÕ´Ï´Ù.

    3Àå. ÄݹéÀ» »ç¿ëÇÑ ºñµ¿±â Á¦¾î È帧 ÆÐÅÏ
    Node.js¿¡¼­ È¿°úÀûÀÎ ºñµ¿±â Á¦¾î È帧 󸮸¦ À§ÇÑ ÀÏ·ÃÀÇ ÆÐÅϰú ±â¼úÀ» ¼Ò°³ÇÕ´Ï´Ù. Æò¹üÇÑ JavaScript¿Í Async ¶óÀ̺귯¸®¸¦ »ç¿ëÇÏ¿© ¡°Äݹé Áö¿Á¡± ¹®Á¦¸¦ ÇØ°áÇÏ´Â ¹æ¹ýÀ» ¹è¿ï ¼ö ÀÖ½À´Ï´Ù.

    4Àå. ES2015 ÀÌÈÄ ºñµ¿±â½Ä ÇÁ·Î±×·¥ÀÇ Á¦¾î È帧 ÆÐÅÏ
    ES2015¿Í Promises, Generators ¹× Async-Await¸¦ ¼Ò°³Çϸ鼭 ºñµ¿±â Á¦¾î È帧¿¡ ´ëÇØ ¾Ë¾Æº¾´Ï´Ù.

    5Àå. ½ºÆ®¸² ÄÚµù
    Node.jsÀÇ °¡Àå Áß¿äÇÑ ÆÐÅÏ Áß ÇϳªÀÎ ½ºÆ®¸²(Stream)¿¡ ´ëÇØ ÀÚ¼¼È÷ »ìÆìº¾´Ï´Ù. ½ºÆ®¸² º¯È¯À» ÅëÇÑ µ¥ÀÌÅÍ Ã³¸®¿Í À̵éÀ» ´Ù¸¥ ÇüÅ·ΠÁ¶ÇÕÇÏ´Â ¹æ¹ýÀ» ¼Ò°³ÇÕ´Ï´Ù.

    6Àå. µðÀÚÀÎ ÆÐÅÏ
    Node.js¿¡¼­ ÀüÅëÀûÀÎ µðÀÚÀÎ ÆÐÅÏÀ̶ó´Â ³í¶õÀÇ ÁÖÁ¦¸¦ ´Ù·ç°Ô µË´Ï´Ù. °¡Àå ¸¹ÀÌ ¾²´Â ±âÁ¸ÀÇ µðÀÚÀÎ ÆÐÅÏÀ» ¼³¸íÇϰí Node.js¿¡¼­ º¼ ¼ö ÀÖ´Â ºñÀüÇüÀûÀÎ ¹æ½ÄÀ» ¼Ò°³ÇÕ´Ï´Ù. ¶ÇÇÑ JavaScript°ú Node.js¿¡¸¸ ÇØ´çÇÏ´Â »õ·Î¿î µðÀÚÀÎ ÆÐÅÏÀ» ¼Ò°³ÇÕ´Ï´Ù.

    7Àå. ¸ðµâ ¿¬°á
    ¾îÇø®ÄÉÀÌ¼Ç ¸ðµâµéÀ» ¿¬°áÇÏ´Â ´Ù¾çÇÑ ¼Ö·ç¼ÇÀ» ºÐ¼®ÇÕ´Ï´Ù. Á¾¼Ó¼º »ðÀÔ(Dependency Injection) ¹× ¼­ºñ½º ·ÎÄÉÀÌÅÍ(Service locator) °°Àº µðÀÚÀÎ ÆÐÅÏ¿¡ ´ëÇØ ¹è¿ó´Ï´Ù.

    8Àå. À¥ ¾îÇø®ÄÉÀ̼ÇÀ» À§ÇÑ ¹ü¿ë JavaScript
    ÃֽŠJavaScript À¥ ¾îÇø®ÄÉÀ̼ÇÀÇ °¡Àå Èï¹Ì·Î¿î ±â´É Áß ÇϳªÀÎ ÇÁ·ÐÆ®¿£µå¿Í ¹é¿£µå °£ ¾îÇø®ÄÉÀÌ¼Ç Äڵ带 °øÀ¯ÇÒ ¼ö ÀÖ´Â ¹æ¹ýÀ» »ìÆìº¾´Ï´Ù. React, Webpack ¹× BabelÀ» »ç¿ëÇÑ °£´ÜÇÑ À¥ ¾îÇø®ÄÉÀÌ¼Ç Á¦ÀÛÀ» ÅëÇØ ¹ü¿ë JavaScriptÀÇ ±âº» ¿øÄ¢À» ¹è¿ó´Ï´Ù.

    9Àå. °í±Þ ºñµ¿±â ·¹½ÃÇÇ
    Áï½Ã »ç¿ë °¡´ÉÇÑ ¼Ö·ç¼ÇÀ¸·Î ÀϹÝÀûÀÎ ÄÚµù ¹× µðÀÚÀÎ ¹®Á¦¸¦ ÇØ°áÇÒ ¼ö ÀÖ´Â ¹æ¹ýÀ» º¸¿©ÁÝ´Ï´Ù.

    10Àå. È®À强°ú ±¸Á¶Àû ÆÐÅÏ
    Node.js ¾îÇø®ÄÉÀ̼ÇÀ» È®ÀåÇϱâ À§ÇÑ ±âº» ±â¼ú°ú ÆÐÅÏ¿¡ ´ëÇØ ¼³¸íÇÕ´Ï´Ù.

    11Àå. ¸Þ½Ã¡°ú ÅëÇÕ ÆÐÅÏ
    ¨ªMQ¿Í AMQP¸¦ »ç¿ëÇÏ¿© ¾î¶»°Ô º¹ÀâÇÑ ºÐ»ê½Ã½ºÅÛÀ» ¸¸µé°í ÅëÇÕÇϴ°¡¸¦ ¼³¸íÇÔÀ¸·Î½á Áß¿äÇÑ ¸Þ½ÃÁö ÆÐÅÏÀ» º¸¿©ÁÝ´Ï´Ù.

    ÀúÀÚ ¼Ò°³

    Mario Casciaro, Luciano Mammino

    ÁöÀºÀÌ : Mario Casciaro
    ±â¼ú, °úÇÐ ±×¸®°í ¿ÀǼҽº¿¡ Á¤ÅëÇÑ ¼ÒÇÁÆ®¿þ¾î ¿£Áö´Ï¾îÀÌÀÚ ±â¾÷°¡ÀÔ´Ï´Ù. Mario´Â ¼ÒÇÁÆ®¿þ¾î ¿£Áö´Ï¾î¸µ ¼®»ç ÇÐÀ§¸¦ ¹Þ°í IBM¿¡¼­ Àü¹® °æ·ÂÀ» ½×±â ½ÃÀÛÇÏ¿© Tivoli Endpoint Manager, Cognos Insight ¹× SalesConnect¿Í °°Àº ´Ù¾çÇÑ ±â¾÷¿ë Á¦Ç°¿¡ °ü·ÃÇÏ¿© ¼ö³â°£ ±Ù¹«Çß½À´Ï´Ù. ±×¸®°í ¼ºÀåÁßÀÎ SaaS ȸ»çÀÎ D4H Technologies·Î À̵¿ÇÏ¿© ºñ»ó ¿î¿µÀ» ½Ç½Ã°£À¸·Î °ü¸®Çϱâ À§ÇÑ »õ·Î¿î ÃÖ÷´Ü Á¦Ç° °³¹ßÀ» À̲ø¾ú½À´Ï´Ù. ÇöÀç´Â ±â¾÷ÀÇ ÈÄ¿øÀ» ÅëÇØ ¿Â¶óÀÎ ÇÁ·ÎÁ§Æ®°¡ ÀÚ±ÝÀ» Á¶´ÞÇÒ ¼ö ÀÖµµ·Ï µ½´Â Ç÷§ÆûÀÎ Sponsorama.comÀÇ °øµ¿ ⸳ÀÚÀÌÀÚ CEOÀÔ´Ï´Ù.  

    ÁöÀºÀÌ : Luciano Mammino
    1987³â¿¡ ž ¼ÒÇÁÆ®¿þ¾î ¿£Áö´Ï¾î·Î, 12¼¼ ¶§ ¾Æ¹öÁöÀÇ ±¸Çü ÀÎÅÚ386À» »ç¿ëÇÏ¿© ÄÚµù ÀÛ¾÷À» ½ÃÀÛÇß½À´Ï´Ù. ÄÄÇ»ÅÍ °øÇÐ ¼®»ç ÇÐÀ§¸¦ ¹ÞÀº ÈÄ ±×´Â À¥ °³¹ßÀÚ·Î ÁÖ·Î ÀÌÅ»¸®¾Æ Àü¿ªÀÇ ±â¾÷ ¹× ½Å»ý ±â¾÷ÀÇ ÇÁ¸®·£¼­·Î ÀÏÇß½À´Ï´Ù. ÀÌÅ»¸®¾Æ¿Í ¾ÆÀÏ·£µå Sbaam.comÀÇ °øµ¿ ¼³¸³ÀÚÀÌÀÚ CTO·Î 3³â°£ Ȱµ¿ÇÑ µÚ, Smartbox¿¡¼­ ¼±ÀÓ PHP ¿£Áö´Ï¾î·Î Ȱµ¿Çϱâ À§ÇØ ´õºí¸°À¸·Î ÀÌÀüÇß½À´Ï´Ù. ±×´Â ¿ÀǼҽº ¶óÀ̺귯¸®¸¦ °³¹ßÇϰí Symfony ¹× Express¿Í °°Àº ÇÁ·¹ÀÓ¿öÅ©¸¦ »ç¿ëÇÏ´Â °ÍÀ» ÁÁ¾ÆÇÕ´Ï´Ù. JavaScript ¸í¼ºÀÌ ¾ÆÁ÷ °ÉÀ½¸¶ ´Ü°è¿¡ ÀÖÀ¸¸ç ÀÌ ±â¼úÀÌ ´ëºÎºÐÀÇ À¥°ú ¸ð¹ÙÀÏ °ü·Ã ±â¼úÀÇ ¹Ì·¡¿¡ Å« ¿µÇâÀ» ¹ÌÄ¥ °ÍÀ̶ó°í È®½ÅÇϰí, ´ëºÎºÐÀÇ ½Ã°£À» JavaScript¿Í Node.js¿¡ ´ëÇÑ Áö½ÄÀ» Çâ»ó½Ã۴µ¥ ÇÒ¾ÖÇϰí ÀÖ½À´Ï´Ù.  

    ¿Å±äÀÌ : ±è¼º¿ø
    1998³âºÎÅÍ °³¹ßÀÚ·Î ½ÃÀÛÇÏ¿©, ¾Èö¼ö¿¬±¸¼Ò µîÀ» °Åó ÇöÀç ·çŰ½º¿¡¼­ ±Ù¹«Çϰí ÀÖÀ¸¸ç, ´Ù¾çÇÑ Ç÷§Æû¿¡¼­ ±â¾÷¿ë À¥, Ŭ¶óÀ̾ðÆ®, ¼­¹ö ¾îÇø®ÄÉÀ̼ÇÀÇ ¼³°èÀÚ ¹× °³¹ßÀÚ·Î ÀÏÇØ ¿Ô½À´Ï´Ù. ÃÖ±Ù ÀÚ¿¬¾î ó¸® µî¿¡ °ü½ÉÀ» °¡Áö°í À̸¦ À§ÇÑ ¾Ë°í¸®Áò, µ¥ÀÌÅÍ ¼öÁý, ó¸® ºÐ¾ß¸¦ ޱ¸Çϰí ÀÖ½À´Ï´Ù. ¿ª¼­·Î´Â [ÄÚµù ÀÎÅͺä Äù½ºÃµ], [¾ÆÀÌÆù °ÔÀÓ °³¹ßÀÚ ·¹ÆÛ·±½º] µîÀÌ ÀÖ½À´Ï´Ù.  

    ¿ªÀÚ ¼Ò°³

    ±è¼º¿ø

    1998³âºÎÅÍ °³¹ßÀÚ·Î ½ÃÀÛÇÏ¿©, ¾Èö¼ö¿¬±¸¼Ò µîÀ» °Åó ÇöÀç ·çŰ½º¿¡¼­ ±Ù¹«Çϰí ÀÖÀ¸¸ç, ´Ù¾çÇÑ Ç÷§Æû¿¡¼­ ±â¾÷¿ë À¥, Ŭ¶óÀ̾ðÆ®, ¼­¹ö ¾îÇø®ÄÉÀ̼ÇÀÇ ¼³°èÀÚ ¹× °³¹ßÀÚ·Î ÀÏÇØ ¿Ô½À´Ï´Ù. ÃÖ±Ù ÀÚ¿¬¾î ó¸® µî¿¡ °ü½ÉÀ» °¡Áö°í À̸¦ À§ÇÑ ¾Ë°í¸®Áò, µ¥ÀÌÅÍ ¼öÁý, ó¸® ºÐ¾ß¸¦ ޱ¸Çϰí ÀÖ½À´Ï´Ù. ¿ª¼­·Î´Â [ÄÚµù ÀÎÅͺä Äù½ºÃµ], [¾ÆÀÌÆù °ÔÀÓ °³¹ßÀÚ ·¹ÆÛ·±½º] µîÀÌ ÀÖ½À´Ï´Ù.

     

    Ã¥ ¼Ó¿¡¼­

    ¸ñÂ÷

    1Àå. Node.js Ç÷§Æû¿¡ ¿À½Å °ÍÀ» ȯ¿µÇÕ´Ï´Ù

    1.1 Node.js öÇÐ
    °æ·® ÄÚ¾î
    °æ·® ¸ðµâ
    ÀÛÀº ¿ÜºÎ ÀÎÅÍÆäÀ̽º
    °£°áÇÔ°ú ½Ç¿ëÁÖÀÇ

    1.2 Node.js 6¿Í ES2015¿¡ ´ëÇÑ ¼Ò°³
    let°ú const Ű¿öµå
    È­»ìÇ¥ ÇÔ¼ö
    Ŭ·¡½º ±¸¹®
    Çâ»óµÈ °´Ã¼ ¸®ÅÍ·²
    Map°ú Set Collection
    WeakMap ¹× WeakSet Collection
    Template Ç¥±â¹ý
    ES2015ÀÇ ±âŸ ±â´Éµé

    1.3 Reactor ÆÐÅÏ
    I/O´Â ¼Óµµ°¡ ´À¸®´Ù.
    ºí·ÎÅ· I/O
    ³í ºí·ÎÅ· I/O
    À̺¥Æ® µð¸ÖƼÇ÷º½Ì
    Reactor ÆÐÅÏ ¼Ò°³
    Node.jsÀÇ ³í ºí·ÎÅ· ¿£Áø libuv
    Node.js¸¦ À§ÇÑ ±¸Á¶

    2Àå. Node.js Çʼö ÆÐÅÏ

    2.1 ÄÝ¹é ÆÐÅÏ
    ¿¬¼Ó Àü´Þ ¹æ½Ä
    µ¿±â³Ä? ºñµ¿±â³Ä?
    Node.js ÄÝ¹é ±ÔÄ¢

    2.2 ¸ðµâ ½Ã½ºÅÛ°ú ±× ÆÐÅÏ
    ³ëÃâ½Ä ¸ðµâ ÆÐÅÏ
    Node.js ¸ðµâ ¼³¸í
    ¸ðµâ Á¤ÀÇ ÆÐÅÏ

    2.3 °üÂûÀÚ ÆÐÅÏ
    EventEmitter Ŭ·¡½º
    EventEmitter »ý¼º ¹× »ç¿ë
    ¿À·ù ÀüÆÄ
    °üÂû °¡´ÉÇÑ °´Ã¼ ¸¸µé±â
    µ¿±â ¹× ºñµ¿±â À̺¥Æ®
    EventEmitter vs Äݹé
    Äݹé°ú EventEmitterÀÇ °áÇÕ

    3Àå. ÄݹéÀ» »ç¿ëÇÑ ºñµ¿±â Á¦¾î È帧 ÆÐÅÏ

    3.1 ºñµ¿±â ÇÁ·Î±×·¡¹ÖÀÇ ¾î·Á¿ò
    °£´ÜÇÑ À¥ ½ºÆÄÀÌ´õ ¸¸µé±â
    Äݹé Çï

    3.2 ÀÏ¹Ý JavaScriptÀÇ »ç¿ë
    ÄÝ¹é ±ÔÄ¢
    ÄÝ¹é ±ÔÄ¢ Àû¿ë
    ¼øÂ÷ ½ÇÇà
    º´·Ä ½ÇÇà
    Á¦ÇÑµÈ º´·Ä ½ÇÇà

    3.3 ºñµ¿±â ¶óÀ̺귯¸®
    ¼øÂ÷ ½ÇÇà
    º´·Ä ½ÇÇà
    Á¦ÇÑµÈ º´·Ä ½ÇÇà

    4Àå. ES2015 ÀÌÈÄ ºñµ¿±â½Ä ÇÁ·Î±×·¥ÀÇ Á¦¾î È帧 ÆÐÅÏ

    4.1 ÇÁ¶ó¹Ì½º(Promise)
    ÇÁ¶ó¹Ì½º¶õ ¹«¾ùÀΰ¡?
    Promises/A+ ±¸Çö
    Node.js ½ºÅ¸ÀÏ ÇÔ¼ö ÇÁ¶ó¹Ì½ºÈ­Çϱâ
    ¼øÂ÷ ½ÇÇà
    º´·Ä ½ÇÇà
    Á¦ÇÑµÈ º´·Ä ½ÇÇà
    °ø°³ API·Î Äݹé°ú ÇÁ¶ó¹Ì½º ³ëÃâÇϱâ

    4.2 Á¦³Ê·¹ÀÌÅÍ(Generator)
    Á¦³Ê·¹ÀÌÅÍÀÇ ±âº»
    Á¦³Ê·¹ÀÌÅ͸¦ »ç¿ëÇÑ ºñµ¿±â Á¦¾î È帧
    ¼øÂ÷ ½ÇÇà
    º´·Ä ½ÇÇà
    Á¦ÇÑµÈ º´·Ä ½ÇÇà

    4.3 BabelÀ» »ç¿ëÇÑ ºñµ¿±â await
    BabelÀÇ ¼³Ä¡ ¹× ½ÇÇà

    4.4 ºñ±³

    5Àå. ½ºÆ®¸² ÄÚµù

    5.1 ½ºÆ®¸²ÀÇ Á߿伺
    ¹öÆÛ¸µ ´ë ½ºÆ®¸®¹Ö
    °ø°£ È¿À²¼º
    ½Ã°£ È¿À²¼º
    °áÇÕ¼º

    5.2 ½ºÆ®¸² ½ÃÀÛÇϱâ
    ½ºÆ®¸²ÀÇ ±¸Á¶
    Readable ½ºÆ®¸²
    Writable ½ºÆ®¸²
    ¾ç¹æÇâ(Duplex) ½ºÆ®¸²
    Transform ½ºÆ®¸²
    Transform ½ºÆ®¸² ±¸Çö

    5.3 ½ºÆ®¸²À» »ç¿ëÇÑ ºñµ¿±â Á¦¾î È帧
    ¼øÂ÷ ½ÇÇà
    ºñ¼øÂ÷ º´·Ä ½ÇÇà
    Á¦ÇÑµÈ ºñ¼øÂ÷ º´·Ä ½ÇÇà

    5.4 ÆÄÀÌÇÁ ÆÐÅÏ
    ½ºÆ®¸² °áÇÕÇϱâ
    ½ºÆ®¸² Æ÷Å©(Fork)Çϱâ
    ½ºÆ®¸² º´ÇÕ(merge)Çϱâ
    ¸ÖƼÇ÷º½Ì°ú µð¸ÖƼÇ÷º½Ì

    6Àå. µðÀÚÀÎ ÆÐÅÏ

    6.1 ÆÑÅ丮(Factory)
    °´Ã¼¸¦ »ý¼ºÇϱâ À§ÇÑ Á¦³Ê¸¯ ÀÎÅÍÆäÀ̽º
    ĸ½¶È­¸¦ °­Á¦Çϱâ À§ÇÑ ¸ÞÄ¿´ÏÁò
    °£´ÜÇÑ ÄÚµå ÇÁ·ÎÆÄÀÏ·¯ ÀÛ¼ºÇϱâ
    ÇÕ¼º °¡´ÉÇÑ ÆÑÅ丮 ÇÔ¼ö
    ½ÇÀü¿¡¼­´Â ¾î¶»°Ô »ç¿ëµÇ´Â°¡

    6.2 °ø°³ »ý¼ºÀÚ(Revealing constructor)
    Àбâ Àü¿ë À̺¥Æ® À̹ÌÅÍ
    ½ÇÀü¿¡¼­´Â ¾î¶»°Ô »ç¿ëµÇ´Â°¡

    6.3 ÇÁ·Ï½Ã(Proxy)
    ÇÁ·Ï½Ã ±¸Çö ±â¼ú
    ´Ù¸¥ ±â¼úÀÇ ºñ±³
    Writable ½ºÆ®¸² ·Î±× ÀÛ¼º
    »ýŰ迡¼­ÀÇ ÇÁ·Ï½Ã - ÇÔ¼ö ÈÄÅ© ¹× AOP
    ES2015 Proxy
    ½ÇÀü¿¡¼­´Â ¾î¶»°Ô »ç¿ëµÇ´Â°¡

    6.4 µ¥ÄÚ·¹ÀÌÅÍ(Decorator)
    µ¥ÄÚ·¹ÀÌÅÍ ±¸Çö ±â¹ý
    LevelUP µ¥ÀÌÅͺ£À̽º Àå½ÄÇϱâ

    6.5 ¾î´ðÅÍ(Adapter)
    ÆÄÀÏ ½Ã½ºÅÛ API¸¦ ÅëÇÑ LevelUP »ç¿ë
    ½ÇÀü¿¡¼­´Â ¾î¶»°Ô »ç¿ëµÇ´Â°¡

    6.6 Àü·«(Strategy)
    ´ÙÁß Çü½ÄÀÇ È¯°æ¼³Á¤ °´Ã¼
    ½ÇÀü¿¡¼­´Â ¾î¶»°Ô »ç¿ëµÇ´Â°¡

    6.7 »óÅÂ(State)
    ±âº»ÀûÀÎ fail-safe-socket ±¸ÇöÇϱâ

    6.8 ÅÛÇø´(Template)
    ȯ°æ¼³Á¤ °ü¸®ÀÚ ÅÛÇø´
    ½ÇÀü¿¡¼­´Â ¾î¶»°Ô »ç¿ëµÇ´Â°¡

    6.9 ¹Ìµé¿þ¾î(Middleware)
    ¹Ìµé¿þ¾î·Î¼­ÀÇ Express
    ÆÐÅÏÀ¸·Î¼­ÀÇ ¹Ìµé¿þ¾î
    ¨ªMQ¿ë ¹Ìµé¿þ¾î ÇÁ·¹ÀÓ¿öÅ© ¸¸µé±â
    Koa¿¡¼­ Á¦³Ê·¹ÀÌÅ͸¦ »ç¿ëÇÑ ¹Ìµé¿þ¾î

    6.10 Ä¿¸Çµå(Command)
    À¯¿¬ÇÑ ÆÐÅÏ
    º¸´Ù º¹ÀâÇÑ ¸í·É

    7Àå. ¸ðµâ ¿¬°á

    7.1 ¸ðµâ°ú ÀÇÁ¸¼º
    Node.jsÀÇ °¡Àå ÀϹÝÀûÀÎ Á¾¼Ó¼º
    ÀÀÁý·Â°ú °áÇÕ·Â
    »óÅ ÀúÀå ¸ðµâ

    7.2 ¸ðµâ ¿¬°á ÆÐÅÏ
    ÇϵåÄÚµåµÈ Á¾¼Ó¼º
    ÀÇÁ¸¼º ÁÖÀÔ
    ¼­ºñ½º ·ÎÄÉÀÌÅÍ
    ÀÇÁ¸¼º ÁÖÀÔ ÄÁÅ×À̳Ê

    7.3 ¿¬°á(Wiring)À» À§ÇÑ Ç÷¯±×ÀÎ
    ÆÐŰÁö·Î¼­ÀÇ Ç÷¯±×ÀÎ
    È®Àå Æ÷ÀÎÆ®
    Ç÷¯±×ÀÎ Á¦¾î¿Í ¾îÇø®ÄÉÀÌ¼Ç Á¦¾î È®Àå
    ·Î±×¾Æ¿ô Ç÷¯±×ÀÎ ±¸ÇöÇϱâ

    8Àå. À¥ ¾îÇø®ÄÉÀ̼ÇÀ» À§ÇÑ ¹ü¿ë JavaScript

    8.1 ºê¶ó¿ìÀú¿Í ÄÚµå °øÀ¯Çϱâ
    ¸ðµâ °øÀ¯
    ES2015 ¸ðµâ

    8.2 Webpack ¼Ò°³
    WebpackÀÇ ¸¶·Â ޱ¸
    Webpack »ç¿ëÀÇ ÀÌÁ¡
    Webpack°ú ÇÔ²² ES2015 »ç¿ëÇϱâ

    8.3 Å©·Î½º Ç÷§Æû °³¹ßÀÇ ±âº»
    ·±Å¸ÀÓ ÄÚµå ºÐ±â
    ºôµå ŸÀÓ ÄÚµå ºÐ±â
    ¸ðµâ ±³È¯
    Å©·Î½º Ç÷§Æû °³¹ßÀ» À§ÇÑ µðÀÚÀÎ ÆÐÅÏ

    8.4 ¸®¾×Æ®(React) ¼Ò°³
    ù ¹øÂ° React ÄÄÆ÷³ÍÆ®
    JSX°¡ ¹¹Áö?!
    JSX º¯È¯À» À§ÇÑ Webpack ¼³Á¤
    ºê¶ó¿ìÀú¿¡¼­ ·»´õ¸µÇϱâ
    React Router ¶óÀ̺귯¸®

    8.5 ¹ü¿ë JavaScript ¾Û ¸¸µé±â
    Àç»ç¿ë °¡´ÉÇÑ ÄÄÆ÷³ÍÆ® ¸¸µé±â
    ¼­¹ö Ãø ·»´õ¸µ
    ¹ü¿ë ·»´õ¸µ ¹× ¶ó¿ìÆÃ
    ¹ü¿ë µ¥ÀÌÅÍ Á¶È¸

    9Àå. °í±Þ ºñµ¿±â ·¹½ÃÇÇ

    9.1 ºñµ¿±âÀûÀ¸·Î ÃʱâÈ­µÇ´Â require ¼öÇà ¸ðµâ
    ÀüÅëÀûÀÎ ¼Ö·ç¼Ç
    ¹Ì¸® ÃʱâÈ­µÈ Å¥
    ½ÇÀü¿¡¼­´Â ¾î¶»°Ô »ç¿ëµÇ´Â°¡

    9.2 ºñµ¿±â ¹èÄ¡(Àϰý ó¸®) ¹× ij½Ì
    ij½Ì ¶Ç´Â Àϰý 󸮰¡ ¾ø´Â ¼­¹ö ±¸Çö
    ºñµ¿±â ¿äû Àϰý ó¸®
    ºñµ¿±â ¿äû ij½Ì
    ÇÁ¶ó¹Ì½º¸¦ »ç¿ëÇÑ Àϰýó¸®¿Í ij½Ì

    9.3 CPU ¹Ù¿îµù ÀÛ¾÷ ½ÇÇà
    ºÎºÐ ÁýÇÕÀÇ ÇÕ ¹®Á¦ ÇØ°á
    setImmediate¸¦ »ç¿ëÇÑ ÀÎÅ͸®ºù
    ¸ÖƼ ÇÁ·Î¼¼½º »ç¿ë

    10Àå. È®À强°ú ±¸Á¶Àû ÆÐÅÏ

    10.1 ¾îÇø®ÄÉÀÌ¼Ç È®Àå¿¡ ´ëÇÑ ¼Ò°³
    Node.js ÀÀ¿ë ÇÁ·Î±×·¥ È®Àå
    È®À强ÀÇ ¼¼ °¡Áö Â÷¿ø

    10.2 º¹Á¦ ¹× ·Îµå ¹ë·±½Ì
    Ŭ·¯½ºÅÍ ¸ðµâ
    »óÅ ÀúÀå Åë½Å ´Ù·ç±â
    ¿ª¹æÇâ ÇÁ·Ï½Ã¸¦ »ç¿ëÇÏ¿© È®Àå
    ¼­ºñ½º ·¹Áö½ºÆ®¸® »ç¿ë
    ÇǾî-Åõ-ÇÇ¾î ·Îµå ¹ë·±½Ì

    10.3 º¹ÀâÇÑ ¾îÇø®ÄÉÀÌ¼Ç ºÐÇØ
    ´ÜÀÏ(Monolitic) ¾ÆÅ°ÅØÃ³
    ¸¶ÀÌÅ©·Î ¼­ºñ½º ¾ÆÅ°ÅØÃ³
    ¸¶ÀÌÅ©·Î ¼­ºñ½º ¾ÆÅ°ÅØÃ³ÀÇ ÅëÇÕ ÆÐÅÏ

    11Àå. ¸Þ½Ã¡°ú ÅëÇÕ ÆÐÅÏ

    11.1 ¸Þ½Ã¡ ½Ã½ºÅÛÀÇ ±âº» »çÇ×
    ´Ü¹æÇâ ¹× ¿äû/ÀÀ´ä ÅÏ
    ¸Þ½ÃÁö À¯Çü
    ºñµ¿±â ¸Þ½Ã¡ ¹× Å¥
    ÇǾî Åõ ÇÇ¾î ¶Ç´Â ºê·ÎÄ¿ ±â¹Ý ¸Þ½Ã¡

    11.2 °Ô½Ã/±¸µ¶ ÆÐÅÏ
    °£´ÜÇÑ ½Ç½Ã°£ äÆÃ ¾îÇø®ÄÉÀÌ¼Ç ¸¸µé±â
    ¸Þ½ÃÁö ºê·ÎÄ¿·Î Redis »ç¿ëÇϱâ
    ¨ªMQ¸¦ »ç¿ëÇÑ ÇǾî Åõ ÇÇ¾î °Ô½Ã/±¸µ¶
    ¿µ±¸ ±¸µ¶ÀÚ

    11.3 ÆÄÀÌÇÁ ¶óÀÎ ¹× ÀÛ¾÷ ¹èÆ÷ ÆÐÅÏ
    ¨ªMQ ÆÒ¾Æ¿ô/ÆÒÀÎ ÆÐÅÏ
    AMQPÀÇ ÆÄÀÌÇÁ¶óÀΰú °æÀï ¼ÒºñÀÚ

    11.4 ¿äû(request)/ÀÀ´ä(reply) ÆÐÅÏ
    »ó°ü °ü°è ½Äº°ÀÚ
    ¹Ý¼Û ÁÖ¼Ò

    ¹è¼Û ½Ã À¯ÀÇ»çÇ×

    - ¹Ýµð¾Ø·ç´Ï½º¿¡¼­ ±¸¸ÅÇϽеµ¼­´Â ¹°·ù ´ëÇà À§Å¹¾÷ü ¿õÁø ºÏ¼¾À» ÅëÇØ ¹è¼ÛµË´Ï´Ù.
     (¹è¼Û Æ÷Àå¿¡ "¿õÁø ºÏ¼¾"À¸·Î Ç¥±âµÉ ¼ö ÀÖ½À´Ï´Ù.)

    - ±¸¸ÅÇÑ »óǰÀÇ Ç°Áú°ú ¹è¼Û °ü·Ã ¹®ÀÇ´Â ¹Ýµð¾Ø·ç´Ï½º·Î ¹®ÀÇ ¹Ù¶ø´Ï´Ù.

    - õÀçÁöº¯ ¹× Åùè»çÀÇ »çÁ¤¿¡ µû¶ó ¹è¼ÛÀÌ Áö¿¬µÉ ¼ö ÀÖ½À´Ï´Ù.

    - °áÁ¦(ÀÔ±Ý) ¿Ï·á ÈÄ ÃâÆÇ»ç ¹× À¯Åë»çÀÇ »çÁ¤À¸·Î ǰÀý ¶Ç´Â ÀýÆÇ µÇ¾î »óǰ ±¸ÀÔÀÌ ¾î·Á¿ï ¼ö ÀÖ½À´Ï´Ù. (º°µµ ¾È³» ¿¹Á¤)

    - µµ¼­»ê°£Áö¿ªÀÇ °æ¿ì Ãß°¡ ¹è¼Ûºñ°¡ ¹ß»ýµÉ ¼ö ÀÖ½À´Ï´Ù.

    ¹Ýǰ/±³È¯

    »óǰ ¼³¸í¿¡ ¹Ýǰ/ ±³È¯ °ü·ÃÇÑ ¾È³»°¡ ÀÖ´Â °æ¿ì ±× ³»¿ëÀ» ¿ì¼±À¸·Î ÇÕ´Ï´Ù. (¾÷ü »çÁ¤¿¡ µû¶ó ´Þ¶óÁú ¼ö ÀÖ½À´Ï´Ù)

    ¹Ýǰ/±³È¯

    ¹Ýǰ/±³È¯
    ¹Ýǰ/±³È¯ ¹æ¹ý Ȩ > °í°´¼¾ÅÍ > ÀÚÁÖã´ÂÁú¹® ¡°¹Ýǰ/±³È¯/ȯºÒ¡± ¾È³» Âü°í ¶Ç´Â 1:1»ó´ã°Ô½ÃÆÇ
    ¹Ýǰ/±³È¯ °¡´É ±â°£ ¹Ýǰ,±³È¯Àº ¹è¼Û¿Ï·á ÈÄ 7ÀÏ À̳», »óǰÀÇ °áÇÔ ¹× °è¾à³»¿ë°ú ´Ù¸¦ °æ¿ì ¹®Á¦¹ß°ß ÈÄ 30ÀÏ À̳»¿¡ ½Åû°¡´É
    ¹Ýǰ/±³È¯ ºñ¿ë º¯½É ȤÀº ±¸¸ÅÂø¿ÀÀÇ °æ¿ì¿¡¸¸ ¹Ý¼Û·á °í°´ ºÎ´ã(º°µµ ÁöÁ¤ Åùè»ç ¾øÀ½)
    ¹Ýǰ/±³È¯ ºÒ°¡ »çÀ¯
    • ¼ÒºñÀÚÀÇ Ã¥ÀÓ »çÀ¯·Î »óǰ µîÀÌ ¼Õ½Ç ¶Ç´Â ÈÑ¼ÕµÈ °æ¿ì
    • ¼ÒºñÀÚÀÇ »ç¿ë, Æ÷Àå °³ºÀ¿¡ ÀÇÇØ »óǰ µîÀÇ °¡Ä¡°¡ ÇöÀúÈ÷ °¨¼ÒÇÑ °æ¿ì
    • º¹Á¦°¡ °¡´ÉÇÑ »óǰ µîÀÇ Æ÷ÀåÀ» ÈѼÕÇÑ °æ¿ì : ¿¹)¸¸È­Ã¥, ÀâÁö, È­º¸Áý µî
    • ½Ã°£ÀÇ °æ°ú¿¡ ÀÇÇØ ÀçÆÇ¸Å°¡ °ï¶õÇÑ Á¤µµ·Î °¡Ä¡°¡ ÇöÀúÈ÷ °¨¼ÒÇÑ °æ¿ì
    • ÀüÀÚ»ó°Å·¡µî¿¡¼­ÀÇ ¼ÒºñÀÚº¸È£¿¡ °üÇÑ ¹ý·üÀÌ Á¤ÇÏ´Â ¼ÒºñÀÚ Ã»¾àöȸ Á¦ÇÑ ³»¿ë¿¡ ÇØ´çµÇ´Â °æ¿ì
    • ÇØ¿ÜÁÖ¹® »óǰ(ÇØ¿Ü ¿ø¼­)ÀÇ °æ¿ì(ÆÄº»/ÈѼÕ/¿À¹ß¼Û »óǰÀ» Á¦¿Ü)
    ¼ÒºñÀÚ ÇÇÇØº¸»ó
    ȯºÒÁö¿¬¿¡ µû¸¥ ¹è»ó
    • »óǰÀÇ ºÒ·®¿¡ ÀÇÇÑ ¹Ýǰ, ±³È¯, A/S, ȯºÒ, ǰÁúº¸Áõ ¹× ÇÇÇØº¸»ó µî¿¡ °üÇÑ »çÇ×Àº
      ¼ÒºñÀÚ ºÐÀïÇØ°á ±âÁØ(°øÁ¤°Å·¡À§¿øÈ¸°í½Ã)¿¡ ÁØÇÏ¿© 󸮵Ê
    • ´ë±Ý ȯºÒ ¹× ȯºÒÁö¿¬¿¡ µû¸¥ ¹è»ó±Ý Áö±Þ Á¶°Ç, ÀýÂ÷ µîÀº ÀüÀÚ»ó°Å·¡ µî¿¡¼­ÀÇ
      ¼ÒºñÀÚ º¸È£¿¡ °üÇÑ ¹ý·ü¿¡ µû¶ó ó¸®ÇÔ
    ¹Ýǰ/±³È¯ ÁÖ¼Ò °æ±âµµ ÆÄÁֽà ¹®¹ß·Î 77, ¿õÁøºÏ¼¾(¹Ýµð¾Ø·ç´Ï½º)
    • ȸ»ç¸í : (ÁÖ)¼­¿ï¹®°í
    • ´ëÇ¥ÀÌ»ç : ±èÈ«±¸
    • °³ÀÎÁ¤º¸ º¸È£Ã¥ÀÓÀÚ : ±èÈ«±¸
    • E-mail : bandi_cs@bnl.co.kr
    • ¼ÒÀçÁö : (06168) ¼­¿ï °­³²±¸ »ï¼º·Î 96±æ 6
    • »ç¾÷ÀÚ µî·Ï¹øÈ£ : 120-81-02543
    • Åë½ÅÆÇ¸Å¾÷ ½Å°í¹øÈ£ : Á¦2023-¼­¿ï°­³²-03728È£
    • ¹°·ù¼¾ÅÍ : (10881) °æ±âµµ ÆÄÁֽà ¹®¹ß·Î 77 ¹Ýµð¾Ø·ç´Ï½º
    copyright (c) 2016 BANDI&LUNI'S All Rights Reserved