±¹³»µµ¼
Àü°øµµ¼/´ëÇб³Àç
°øÇаè¿
ÄÄÇ»ÅÍ°øÇÐ
Á¤°¡ |
28,000¿ø |
---|
25,200¿ø (10%ÇÒÀÎ)
1,400P (5%Àû¸³)
ÇÒÀÎÇýÅÃ | |
---|---|
Àû¸³ÇýÅà |
|
|
|
Ãß°¡ÇýÅÃ |
|
À̺¥Æ®/±âȹÀü
¿¬°üµµ¼(93)
»óÇ°±Ç
ÀÌ»óÇ°ÀÇ ºÐ·ù
Ã¥¼Ò°³
[Effective Modern C++(ÀÌÆåƼºê ¸ð´ø C++)]Àº C++11°ú C++14¸¦ ÀÌ¿ëÇؼ, Áï Çö´ëÀûÀÎ C++À» ÀÌ¿ëÇؼ ÁøÁ¤À¸·Î ÈǸ¢ÇÑ ¼ÒÇÁÆ®¿þ¾î¸¦ ÀÛ¼ºÇÏ´Â ¹æ¹ýÀ» ¼³¸íÇÑ´Ù. Ã¥¿¡¼´Â Áß°ýÈ£ ÃʱâÄ¡, noexcept ¸í¼¼, ¿Ïº® Àü´Þ, ¶È¶ÈÇÑ Æ÷ÀÎÅÍ »ý¼º ÇÔ¼öÀÇ Àå´ÜÁ¡, std::move¿Í std::forward, ¿À¸¥°ª ÂüÁ¶, º¸Æí ÂüÁ¶ »çÀÌÀÇ °ü°è, ¸íÈ®ÇÏ°í Á¤È®Çϸç È¿°úÀûÀÎ ¶÷´Ù Ç¥Çö½ÄÀ» ÀÛ¼ºÇÏ´Â ±â¹ýµé, std::atomic°ú volatileÀÇ Â÷ÀÌ¿Í °¢°¢ÀÇ »ç¿ë¹ý ¹× C++ µ¿½Ã¼º API¿ÍÀÇ °ü°è, ¡®±¸½Ä¡¯ C++(Áï C++98) ÇÁ·Î±×·¡¹Ö¿¡¼ÀÇ ¸ð¹ü °üÇà Áß Çö´ëÀûÀÎ C++ ¼ÒÇÁÆ®¿þ¾î °³¹ß¿¡ ¸Â°Ô °íÃÄ¾ß ÇÒ °Íµé¿¡ ´ëÇØ ´Ù·ç°í ÀÖ´Ù.
ÃâÆÇ»ç ¼Æò
C++11°ú C++14¿¡ ¼÷´ÞÇÏ·Á¸é »õ·Î Ãß°¡µÈ ±â´Éµé(À̸¦Å׸é auto Çü½Ä ¼±¾ð, À̵¿ Àǹ̷Ð, ¶÷´Ù Ç¥Çö½Ä, µ¿½Ã¼º Áö¿ø µî)¿¡ Àͼ÷ÇØÁö´Â °ÍÀ¸·Î´Â ºÎÁ·ÇÏ´Ù. »ç½Ç ¾î·Á¿î °ÍÀº ±×·± ±â´ÉµéÀ» È¿°úÀûÀ¸·Î »ç¿ëÇÏ´Â ¹æ¹ý, ´Ù½Ã ¸»Çؼ ±×·± ±â´ÉµéÀ» Á¤È®ÇÏ°í, È¿À²ÀûÀÌ°í, À¯Áöº¸¼öÇϱâ ÁÁ°í, À̽ļºÀ» °®Ãá ¼ÒÇÁÆ®¿þ¾î¸¦ ¸¸µå´Â µ¥ È°¿ëÇÏ´Â ¹æ¹ýÀ» ¹è¿ì´Â °ÍÀÌ´Ù. ÀÌ Ã¥Àº C++11°ú C++14¸¦ ÀÌ¿ëÇؼ, Áï Çö´ëÀûÀÎ C++À» ÀÌ¿ëÇؼ ÁøÁ¤À¸·Î ÈǸ¢ÇÑ ¼ÒÇÁÆ®¿þ¾î¸¦ ÀÛ¼ºÇÏ´Â ¹æ¹ýÀ» ¼³¸íÇÑ´Ù.
Effective Modern C++Àº ½ºÄà ¸¶À̾ÀÇ ÀÌÀü Ã¥µé¿¡¼ °ËÁõµÈ Áöħ ±â¹Ý, ¿¹Á¦ ÁÖµµÀû Çü½ÄÀ» µû¸£µÇ, ¿ÏÀüÈ÷ »õ·Î¿î ³»¿ëÀ» ´Ù·é´Ù. ÀÌ Ã¥Àº ¸ðµç Çö´ëÀû C++ ¼ÒÇÁÆ®¿þ¾î °³¹ßÀÚ°¡ ¹Ýµå½Ã Àоî¾ß ÇÒ Ã¥ÀÌ´Ù.
¡¶ ÀÌ Ã¥¿¡¼ ´Ù·ç´Â ³»¿ë ¡·
¤ý Áß°ýÈ£ ÃʱâÄ¡, noexcept ¸í¼¼, ¿Ïº® Àü´Þ, ¶È¶ÈÇÑ Æ÷ÀÎÅÍ »ý¼º ÇÔ¼öÀÇ Àå´ÜÁ¡
¤ý std::move¿Í std::forward, ¿À¸¥°ª ÂüÁ¶, º¸Æí ÂüÁ¶ »çÀÌÀÇ °ü°è
¤ý ¸íÈ®ÇÏ°í Á¤È®Çϸç È¿°úÀûÀÎ ¶÷´Ù Ç¥Çö½ÄÀ» ÀÛ¼ºÇÏ´Â ±â¹ýµé
¤ý std::atomic°ú volatileÀÇ Â÷ÀÌ¿Í °¢°¢ÀÇ »ç¿ë¹ý ¹× C++ µ¿½Ã¼º API¿ÍÀÇ °ü°è
¤ý ¡®±¸½Ä¡¯ C++(Áï C++98) ÇÁ·Î±×·¡¹Ö¿¡¼ÀÇ ¸ð¹ü °üÇà Áß Çö´ëÀûÀÎ C++ ¼ÒÇÁÆ®¿þ¾î °³¹ß¿¡ ¸Â°Ô °íÃÄ¾ß ÇÒ °Íµé
̵̧ȍ
°Ô¸£Çϸ£Æ® Å©·ÎÀÌó(Gerhard Kreuzer)(Siemens AGÀÇ ¿¬±¸ °³¹ß °øÇÐÀÚ)
ÀÌ Ã¥À» ã´Â µ¶ÀÚ¶ó¸é ´ç¿¬È÷ C++¿¡ ¿©ÀüÈ÷ °ü½ÉÀÌ ÀÖÀ» °ÍÀÌ´Ù. Çö´ëÀûÀÎ C++(Áï, C++11°ú C++14)Àº ±×³É ±âÁ¸ C++ÀÇ °Ñ¸ð¾ç¸¸ Á¶±Ý ¹Ù²Û °ÍÀÌ ¾Æ´Ï´Ù. »õ·Î¿î ±â´ÉµéÀ» »ý°¢Çϸé C++ÀÇ Àç¹ß¸í¿¡ ´õ °¡±õ´Ù°í ÇÒ ¼ö ÀÖ´Ù. Çö´ëÀû C++¿¡ °üÇÑ Áöħ°ú Á¶¾ðÀÌ ÇÊ¿äÇÏ´Ù¸é, ¹Ù·Î ÀÌ Ã¥ÀÌ ¿©·¯ºÐÀÌ Ã£´ø Ã¥ÀÌ´Ù. C++¿¡ °üÇØ ½ºÄà ¸¶À̾´Â ¿¹³ª Áö±ÝÀ̳ª Á¤È®¼º, Ç°Áú, Áñ°Å¿ò°ú µ¿ÀǾîÀÌ´Ù.
¾Èµå·¹ÀÌ ¾Ë·º»êµå·¹½ºÄí(Andrei Alexandrescu)(FacebookÀÇ ¿¬±¸ °úÇÐÀÚ)
ÃÖ»óÀÇ Àü¹® Áö½ÄÀ» ±¸Çϱâ¶õ ¾î·Á¿î ÀÏÀÌ´Ù. °¡¸£Ä§¿¡¼ÀÇ ¿Ïº®ÁÖÀÇ(¼³¸íÀ» ÁÖÀÇ ±í°Ô °èȹÇÏ°í ¸Å²ô·´°Ô ¸¸µé·Á´Â ÀúÀÚÀÇ ÁýÂø)¸¦ Ãß±¸ÇÏ´Â °Í ¿ª½Ã ¾î·Æ´Ù. ±× µÑÀ» ¸ðµÎ °®Ãá »ç¶÷À» ¸¸³ª´Â °ÍÀº Ä¿´Ù¶õ Áñ°Å¿òÀÌ´Ù. Effective Modern C++Àº ¿ø¼÷ÇÑ ±â¼ú Àú¼ú°¡°¡ ¸¸µé¾î³½ Å©³ªÅ« ¼ºÃëÀÌ´Ù. ÀÌ Ã¥Àº º¹ÀâÇÏ°í »óÈ£¿¬°áµÈ ÁÖÁ¦µé À§¿¡ ¾Ë±â ½±°í ÀÇ¹Ì ±íÀº, ±×¸®°í ÀûÀýÇÑ ¼ø¼·Î ³ª¿µÈ ¼³¸íµéÀ» °ãÃijõ´Â´Ù. ±× ¸ðµç ¼³¸íÀº ¸í·áÇÑ ±¸¾îü·Î µÇ¾î ÀÖ´Ù. °Ô´Ù°¡, ÀÌ Effective Modern C++¿¡¼ ±â¼úÀûÀÎ ½Ç¼ö³ª Áö·çÇÑ ¼ø°£, ´À½¼ÇÑ ¹®ÀåÀ» ¸¸³¯ °¡´É¼ºÀº ÀÌ Ã¥ÀÇ ¸Å·Â¿¡ ¹Ýºñ·ÊÇÏ´Â ¼öÁØÀ¸·Î ¾ÆÁÖ ³·´Ù.
³×ºó ¸®¹ö(Nevin Liber)(DRW Trading Group ¼±ÀÓ°øÇÐÀÚ)
C++À» 20³â ³Ñ°Ô °æÇèÇÑ »ç¶÷ÀÌÀÚ Çö´ëÀû C++(ÀÇ ¸ð¹ü °üÇàµé°ú ÇÇÇØ¾ß ÇÒ ÇÔÁ¤µé ¸ðµÎ)À» ÃÖ´ëÇÑ ÆľÇÇÏ·Á´Â »ç¶÷À¸·Î¼, ³ª´Â ¿©·¯ºÐÀÌ ÀÌ Ã¥À» »ç¼ ¼÷µ¶ÇÏ°í ÀÚÁÖ Âü°íÇÏ±æ °·ÂÈ÷ ±ÇÇÑ´Ù. ÀÌ Ã¥À» ÀÐÀ¸¸é¼ ³»°¡ »õ·Î¿î °ÍµéÀ» ¹è¿üÀ½Àº È®½ÇÇÏ´Ù!
Ä«½Ã¿À ³×¸®(Cassio Neri)(LloydsBankingGroup¿Üȯ°è·®ºÐ¼®)
C++ÀÇ Ã¢½ÃÀÚÀÎ ºñ¾ß³× ½ºÆ®·Ó½ºÆ®·ìBjarne StroustrupÀº ¡°C++11Àº »õ·Î¿î ¾ð¾îó·³ ´À²¸Áø´Ù¡±°í ¸»Çß´Ù. Effective Modern C++Àº ÇÁ·Î±×·¡¸Ó°¡ ÀÏ»óÀûÀÎ °³¹ß ¾÷¹«¿¡¼ C++11°ú C++14ÀÇ »õ·Î¿î ±â´É°ú °ü¿ë±¸¸¦ È°¿ëÇÏ´Â ¹æ¹ýÀ» ¸íÈ®ÇÏ°Ô ¼³¸íÇÔÀ¸·Î½á ±×¿Í °°Àº ´À³¦À» °øÀ¯ÇÏ°Ô ÇÑ´Ù. ½ºÄà ¸¶À̾ÀÇ ¶Ç ´Ù¸¥ ÈǸ¢ÇÑ Ã¥ÀÌ´Ù.
·ÎÀú ¿À¾î(Roger Orr)(ISO C++ Ç¥ÁØÀ§¿øȸÀÇ ÀÏ¿ø)
½ºÄàÀº ±â¼úÀû º¹À⼺À» ÀÌÇØ °¡´ÉÇÑ ¾Ë¸ÍÀÌ·Î ¿ä¾àÇÏ´Â µ¥ ´É¼÷ÇÏ´Ù. ±×ÀÇ Effective C++ ½Ã¸®Áî´Â ÀÌÀü ¼¼´ë C++ ÇÁ·Î±×·¡¸ÓµéÀÇ ÄÚµù ½ºÅ¸ÀÏÀ» ±â¸£´Â µ¥ µµ¿òÀ» ÁÖ¾ú´Ù. »õ Ã¥ ¿ª½Ã Çö´ëÀûÀÎ C++À» »ç¿ëÇÏ´Â ÇÁ·Î±×·¡¸ÓµéÀÇ ÄÚµù ½ºÅ¸ÀÏÀ» È®¸³ÇÏ´Â ¿ªÇÒÀ» Çϸ®¶ó »ý°¢ÇÑ´Ù.
¹Ù¸£Æ® Æǵ¥ºÎ½ºÆ¼³Ê(Bart Vandewoestyne)(¿¬±¸ °³¹ß °øÇÐÀÚ)
Effective Modern C++Àº ¿©·¯ºÐÀÇ Çö´ëÀû C++ ´É·ÂÀ» Çâ»óÇÏ´Â ÈǸ¢ÇÑ µµ±¸ÀÌ´Ù. ÀÌ Ã¥Àº Çö´ëÀû C++À» ¾ðÁ¦, ¾î¶»°Ô, ¾îµð¿¡ »ç¿ëÇÏ´Â °ÍÀÌ È¿°úÀûÀÎÁö °¡¸£Ä¥ »Ó¸¸ ¾Æ´Ï¶ó, ¿Ö ±×·±Áöµµ ¾Ë·ÁÁØ´Ù. 42°³ÀÇ Àß °èȹµÈ Ç׸ñµé¿¡ ÆîÃÄÁø ½ºÄàÀÇ ¸íÈ®ÇÏ°í ÅëÂû·Â ÀÖ´Â ±ÛÀ» ÅëÇؼ, ÇÁ·Î±×·¡¸ÓµéÀº C++ ¾ð¾î¸¦ ÈξÀ Àß ÀÌÇØÇÏ°Ô µÉ °ÍÀÌ´Ù.
µ¥¹Ì¾ð ¿ÓŲ½º(Damien Watkins)(CSIRO°è»ê¼ÒÇÁÆ®¿þ¾î°øÇÐÆÀÆÀÀå)
³ª´Â C++À» »ç¶ûÇÑ´Ù. C++Àº ¼ö½Ê ³â° ³» ¹ä¹úÀÌ µµ±¸ÀÌ´Ù. ±×¸®°í ÃÖ±Ù Ãß°¡µÈ ±â´ÉµéÀº ÀÌÀü¿¡ »ó»óÇÑ °Íº¸´Ù ÈξÀ °·ÂÇÏ°í Ç¥Çö·ÂÀÌ Å©´Ù. ±×·¯³ª ¼±ÅÃÇÒ °ÍÀÌ ³Ê¹«³ª ¸¹¾Æ¼, ¡°ÀÌ ±â´ÉµéÀ» ¾ðÁ¦, ¾î¶»°Ô Àû¿ëÇÒ °ÍÀΰ¡¡±¶ó´Â Áú¹®À» ´øÁöÁö ¾ÊÀ» ¼ö ¾ø´Ù. ±×¸®°í Ç×»ó ±×·¨µíÀÌ, ½ºÄàÀÇ Effectiv C++ ½Ã¸®Áî´Â ±× Áú¹®¿¡ ´ëÇÑ ±Ã±ØÀÇ ´äÀÌ´Ù.
·¹ÀÌÿ ÃÃ(Rachel Cheng)(F5 Networks ¼Ò¼Ó)
Çö´ëÀû C++·Î ³Ñ¾î°¡´Â µ¥ ¾ÆÁÖ À¯¿ëÇÑ ÀÌ Ã¥Àº C++11/14 ¾ð¾î ±â´ÉµéÀ» C++98°ú ÇÔ²² ¼³¸íÇÑ´Ù. ÁÖÁ¦ Ç׸ñµéÀº ÂüÁ¶Çϱ⠽¬¿ì¸ç, °¢ Àý ³¡¿¡´Â Á¶¾ðÀÌ ¿ä¾àµÇ¾î ÀÖ´Ù. ijÁÖ¾óÇÑ C++ °³¹ßÀÚ¿Í °í±Þ C++ °³¹ßÀÚ ¸ðµÎ¿¡°Ô Àç¹Õ°íµµ À¯¿ëÇÑ Ã¥ÀÌ´Ù.
·Ó ½ºÆ©¾îÆ®(Rob Stewart)(Boost Steering Committee À§¿ø)
C++98/03¿¡¼ C++11/14·Î ³Ñ¾î°¡·Á´Â »ç¶÷¿¡°Ô´Â ½ºÄàÀÌ Effective Modern C++¿¡¼ Á¦°øÇÏ´Â µÎµå·¯Áö°Ô ½Ç¿ëÀûÀÌ°í ¸íÈ®ÇÑ Á¤º¸°¡ ÇÊ¿äÇÏ´Ù. ÀÌ¹Ì C++11 Äڵ带 ÀÛ¼ºÇÏ°í ÀÖ´Â »ç¶÷À̶ó¸é, C++ÀÇ »õ·Î¿î ÁÖ¿ä ±â´Éµé¿¡ ´ëÇÑ ½ºÄàÀÇ »ó¼¼ÇÑ ³íÀǸ¦ ÅëÇؼ »õ ±â´ÉµéÀÇ ¹®Á¦Á¡µéÀ» ¹ß°ßÇÒ ¼öµµ ÀÖ´Ù. ¾î¶² °æ¿ìÀ̵ç, ÀÌ Ã¥Àº ½Ã°£À» µé¿© ÀÐÀ» °¡Ä¡°¡ ÀÖ´Ù.
ÇÏÀç½Â
¡°C++11°ú 14¿¡ Ãß°¡µÈ ±â´ÉµéÀº C++ÀÇ ¼¼°è¸¦ ¿ÏÀüÈ÷ ¹Ù²å´Ù. boost::bind³ª boost::lambda¸¦ ÅëÇØ C++11ÀÇ lambda¿Í ºñ½ÁÇÑ ±â´ÉÀ» ±¸ÇöÇϱâ À§ÇØ ¸öºÎ¸²Ä¡´ø °É ºÃ´ø µ¶ÀÚ¶ó¸é C++11ÀÌ ¾ó¸¶³ª ÃູÀÎÁö ÀÌÇØÇÒ °ÍÀÌ´Ù.
½ºÄà ¸¶À̾ÀÇ EMC++Àº ±×·± º¯ÈÁ¡À» 42°³ÀÇ Ç׸ñÀ¸·Î ³ª´² ÀÚ¼¼È÷ ¼³¸íÇÏ°í ÀÖ´Ù. Effective ½Ã¸®ÁîÀÇ ÀÌÀü Ã¥µéó·³ °¢ Ç׸ñº°·Î ¿¹Á¦¸¦ ÅëÇØ À¯¿ëÇÑ Á¶¾ð°ú ±Ù°Å¸¦ º¸¿©ÁØ´Ù. ¶ÇÇÑ C++14¿¡¼ Ãß°¡·Î °³¼±µÈ ºÎºÐÀ» µû·Î ¼³¸íÇÏ¿© C++11±îÁö¸¸ ¾Ë°í ÀÖ´ø µ¶ÀÚ¿¡°Ô º¯ÈµÈ ºÎºÐÀ» ¹Ù·Î º¸¿©ÁØ´Ù.
C++ÀÇ »õ ±â´ÉµéÀ» ±íÀÌ ÀÌÇØÇÏ°í È°¿ëÇÏ°íÀÚ ÇÑ´Ù¸é Effective Modern C++Àº ¹Ýµå½Ã Àоî¾ß ÇÒ Ã¥ÀÌ´Ù. ÀÌÀü Effective C++ ½Ã¸®Á Àоú´ø ºÐÀ̶ó¸é ÀÌ¹Ì ÀÌ Ã¥À» ¼Õ¿¡ µé°í ÀÖÀ» °Å¶ó »ý°¢ÇÑ´Ù.¡±
¸ñÂ÷
1Àå Çü½Ä ¿¬¿ª
Ç׸ñ 1: ÅÛÇø´ Çü½Ä ¿¬¿ª ±ÔÄ¢À» ¼÷ÁöÇ϶ó
Ç׸ñ 2: autoÀÇ Çü½Ä ¿¬¿ª ±ÔÄ¢À» ¼÷ÁöÇ϶ó
Ç׸ñ 3: decltypeÀÇ ÀÛµ¿ ¹æ½ÄÀ» ¼÷ÁöÇ϶ó
Ç׸ñ 4: ¿¬¿ªµÈ Çü½ÄÀ» ÆľÇÇÏ´Â ¹æ¹ýÀ» ¾Ë¾ÆµÎ¶ó
2Àå auto
Ç׸ñ 5: ¸í½ÃÀû Çü½Ä ¼±¾ðº¸´Ù´Â auto¸¦ ¼±È£Ç϶ó
Ç׸ñ 6: auto°¡ ¿øÄ¡ ¾ÊÀº Çü½ÄÀ¸·Î ¿¬¿ªµÉ ¶§¿¡´Â ¸í½ÃÀû Çü½ÄÀÇ ÃʱâÄ¡¸¦ »ç¿ëÇ϶ó
3Àå Çö´ëÀû C++¿¡ ÀûÀÀÇϱâ
Ç׸ñ 7: °´Ã¼ »ý¼º ½Ã °ýÈ£(())¿Í Áß°ýÈ£({})¸¦ ±¸ºÐÇ϶ó
Ç׸ñ 8: 0°ú NULLº¸´Ù nullptr¸¦ ¼±È£Ç϶ó
Ç׸ñ 9: typedefº¸´Ù º°Äª ¼±¾ðÀ» ¼±È£Ç϶ó
Ç׸ñ 10: ¹üÀ§ ¾ø´Â enumº¸´Ù ¹üÀ§ ÀÖ´Â enumÀ» ¼±È£Ç϶ó
Ç׸ñ 11: Á¤ÀǵÇÁö ¾ÊÀº ºñ°ø°³ ÇÔ¼öº¸´Ù »èÁ¦µÈ ÇÔ¼ö¸¦ ¼±È£Ç϶ó
Ç׸ñ 12: ÀçÁ¤ÀÇ ÇÔ¼öµéÀ» override·Î ¼±¾ðÇ϶ó
Ç׸ñ 13: iteratorº¸´Ù const_iterator¸¦ ¼±È£Ç϶ó
Ç׸ñ 14: ¿¹¿Ü¸¦ ¹æÃâÇÏÁö ¾ÊÀ» ÇÔ¼ö´Â noexcept·Î ¼±¾ðÇ϶ó
Ç׸ñ 15: °¡´ÉÇϸé Ç×»ó constexprÀ» »ç¿ëÇ϶ó
Ç׸ñ 16: const ¸â¹ö ÇÔ¼ö¸¦ ½º·¹µå¿¡ ¾ÈÀüÇÏ°Ô ÀÛ¼ºÇ϶ó
Ç׸ñ 17: Ư¼ö ¸â¹ö ÇÔ¼öµéÀÇ ÀÚµ¿ ÀÛ¼º Á¶°ÇÀ» ¼÷ÁöÇ϶ó
4Àå ¶È¶ÈÇÑ Æ÷ÀÎÅÍ
Ç׸ñ 18: ¼ÒÀ¯±Ç µ¶Á¡ ÀÚ¿øÀÇ °ü¸®¿¡´Â std::unique_ptr¸¦ »ç¿ëÇ϶ó
Ç׸ñ 19: ¼ÒÀ¯±Ç °øÀ¯ ÀÚ¿øÀÇ °ü¸®¿¡´Â std::shared_ptr¸¦ »ç¿ëÇ϶ó
Ç׸ñ 20: std::shared_ptró·³ ÀÛµ¿Ç쵂 ´ë»óÀ» ÀÒÀ» ¼öµµ ÀÖ´Â Æ÷ÀÎÅÍ°¡ ÇÊ¿äÇϸé std::weak_ptr¸¦ »ç¿ëÇ϶ó
Ç׸ñ 21: new¸¦ Á÷Á¢ »ç¿ëÇÏ´Â °Íº¸´Ù std::make_unique¿Í std::make_shared¸¦ ¼±È£Ç϶ó
Ç׸ñ 22: Pimpl °ü¿ë±¸¸¦ »ç¿ëÇÒ ¶§¿¡´Â Ư¼ö ¸â¹ö ÇÔ¼öµéÀ» ±¸Çö ÆÄÀÏ¿¡¼ Á¤ÀÇÇ϶ó
5Àå ¿À¸¥°ª ÂüÁ¶, À̵¿ Àǹ̷Ð, ¿Ïº® Àü´Þ
Ç׸ñ 23: std::move¿Í std::forward¸¦ ¼÷ÁöÇ϶ó
Ç׸ñ 24: º¸Æí ÂüÁ¶¿Í ¿À¸¥°ª ÂüÁ¶¸¦ ±¸º°Ç϶ó
Ç׸ñ 25: ¿À¸¥°ª ÂüÁ¶¿¡´Â std::move¸¦, º¸Æí ÂüÁ¶¿¡´Â std::forward¸¦ »ç¿ëÇ϶ó
Ç׸ñ 26: º¸Æí ÂüÁ¶¿¡ ´ëÇÑ Áߺ¹ÀûÀ縦 ÇÇÇ϶ó
Ç׸ñ 27: º¸Æí ÂüÁ¶¿¡ ´ëÇÑ Áߺ¹ÀûÀç ´ë½Å »ç¿ëÇÒ ¼ö ÀÖ´Â ±â¹ýµéÀ» ¾Ë¾ÆµÎ¶ó
Ç׸ñ 28: ÂüÁ¶ Ãà¾àÀ» ¼÷ÁöÇ϶ó
Ç׸ñ 29: À̵¿ ¿¬»êÀÌ Á¸ÀçÇÏÁö ¾Ê°í, Àú·ÅÇÏÁö ¾Ê°í, Àû¿ëµÇÁö ¾Ê´Â´Ù°í °¡Á¤Ç϶ó
Ç׸ñ 30: ¿Ïº® Àü´ÞÀÌ ½ÇÆÐÇÏ´Â °æ¿ìµéÀ» Àß ¾Ë¾ÆµÎ¶ó
6Àå ¶÷´Ù Ç¥Çö½Ä
Ç׸ñ 31: ±âº» °¥¹«¸® ¸ðµå¸¦ ÇÇÇ϶ó
Ç׸ñ 32: °´Ã¼¸¦ Ŭ·ÎÀú ¾ÈÀ¸·Î À̵¿ÇÏ·Á¸é ÃʱâÈ °¥¹«¸®¸¦ »ç¿ëÇ϶ó
Ç׸ñ 33: std::forward¸¦ ÅëÇؼ Àü´ÞÇÒ auto&& ¸Å°³º¯¼ö¿¡´Â decltypeÀ» »ç¿ëÇ϶ó
Ç׸ñ 34: std::bindº¸´Ù ¶÷´Ù¸¦ ¼±È£Ç϶ó
7Àå µ¿½Ã¼º API
Ç׸ñ 35: ½º·¹µå ±â¹Ý ÇÁ·Î±×·¡¹Öº¸´Ù °úÁ¦ ±â¹Ý ÇÁ·Î±×·¡¹ÖÀ» ¼±È£Ç϶ó
Ç׸ñ 36: ºñµ¿±â¼ºÀÌ ÇʼöÀÏ ¶§¿¡´Â std::launch::async¸¦ ÁöÁ¤Ç϶ó
Ç׸ñ 37: std::threadµéÀ» ¸ðµç °æ·Î¿¡¼ ÇÕ·ù ºÒ°¡´ÉÇÏ°Ô ¸¸µé¾î¶ó
Ç׸ñ 38: ½º·¹µå ÇÚµé ¼Ò¸êÀÚµéÀÇ ´Ù¾çÇÑ Çൿ ¹æ½ÄÀ» ÁÖÀÇÇ϶ó
Ç׸ñ 39: ´Ü¹ß¼º »ç°Ç Åë½Å¿¡´Â void ¹Ì·¡ °´Ã¼¸¦ °í·ÁÇ϶ó
Ç׸ñ 40: µ¿½Ã¼º¿¡´Â std::atomicÀ» »ç¿ëÇÏ°í, volatileÀº Ưº°ÇÑ ¸Þ¸ð¸®¿¡ »ç¿ëÇ϶ó
8Àå ´Ùµë±â
Ç׸ñ 41: À̵¿ÀÌ Àú·ÅÇÏ°í Ç×»ó º¹»çµÇ´Â º¹»ç °¡´É ¸Å°³º¯¼ö¿¡ ´ëÇؼ´Â °ª Àü´ÞÀ» °í·ÁÇ϶ó
Ç׸ñ 42: »ðÀÔ ´ë½Å »ý¼º »ðÀÔÀ» °í·ÁÇ϶ó
ÀúÀÚ¼Ò°³
»ý³â¿ùÀÏ | - |
---|
½ºÄà ¸¶À̾(Scott Meyers)´Â ¼¼°è C++ ¼ÒÇÁÆ®¿þ¾î °³¹ß ºÐ¾ßÀÇ ÃÖ°íÀÇ ±ÇÀ§¸¦ ÀÎÁ¤¹Þ´Â Àü¹®°¡ Áß ÇÑ »ç¶÷À¸·Î °øÀüÀÇ º£½ºÆ®¼¿·¯ÀÎ ÀÌÆåƼºê C++ ½Ã¸®Áî(, , )ÀÇ ÀúÀÚÀÌÀÚ ¾Öµð½¼ ¿þ½½¸®ÀÇ ÀÌÆåƼºê ¼ÒÇÁÆ®¿þ¾î µðº§·Ó¸ÕÆ® ½Ã¸®Áî(Effective Software Development Series)ÀÇ ÀÚ¹® ÆíÁýÀÚÀÌ°í, '¼ÒÇÁÆ®¿þ¾î µðº§·Ó¸ÕÆ®(Software Development)'ÁöÀÇ ÀÚ¹®À§¿øȸ ¼Ò¼Ó À§¿øÀ¸·Î È°µ¿ÇÏ°í ÀÖ´Ù. ¶ÇÇÑ ¸î¸î ½Å»ý ¼Ò±â¾÷ÀÇ ±â¼ú ÀÚ¹® µî È°¹ßÇÑ È°µ¿À» ÆîÄ¡°í ÀÖ´Ù. ¸¶À̾´Â 1993³â¿¡ ¹Ì±¹ ºê¶ó¿î´ëÇб³¿¡¼ Àü»êÇÐ ¹Ú»ç ÇÐÀ§¸¦ ¹Þ¾ÒÀ¸¸ç, °ø½Ä À¥»çÀÌÆ®ÀÎ www.aristeia. comÀ» ¿î¿µÇÏ°í ÀÖ´Ù.
ÆîÃ帱âÀúÀÚÀÇ ´Ù¸¥Ã¥
Àüüº¸±â»ý³â¿ùÀÏ | - |
---|
1996³âºÎÅÍ È°µ¿ÇØ ¿Â ÇÁ·Î±×·¡¹Ö ¼Àû Àü¹® ¹ø¿ª°¡·Î, Game Programming Gems ½Ã¸®Áî¿Í ÄÄÇ»ÅÍ ÇÁ·Î±×·¡¹ÖÀÇ ¿¹¼ú(The Art of Computer Programming) Á¦1~4A±Ç, UNIX °í±Þ ÇÁ·Î±×·¡¹Ö(Advanced Programming in UNIX Environment) Á¦2ÆÇ°ú Á¦3ÆÇÀ» Æ÷ÇÔÇÏ¿© 60¿© ±ÇÀÇ ´Ù¾çÇÑ ÇÁ·Î±×·¡¹Ö ¼ÀûÀ» ¹ø¿ªÇß´Ù. C++ °ü·Ã ¹ø¿ª¼·Î´Â ÀϹÝÀû ÇÁ·Î±×·¡¹Ö°ú STL, C++ Template Metaprogramming, (C++·Î ¹è¿ì´Â) ÇÁ·Î±×·¡¹ÖÀÇ ¿ø¸®¿Í ½ÇÁ¦ µîÀÌ ÀÖ´Ù. ¼öÇÐ °ü·Ã ¹ø¿ª¼·Î´Â ¡¶±¸Ã¼ ¼öÇС·, ¡¶3D °ÔÀÓ ÇÁ·Î±×·¡¹Ö & ÄÄÇ»ÅÍ ±×·¡ÇÈÀ» À§ÇÑ ¼öÇС· Á¦1ÆÇ¡¤Á¦2ÆÇ µîÀÌ ÀÖ°í, ½ÉÃþÇнÀ °ü·Ã ¹ø¿ª¼·Î´Â ¡¶ÀΰøÁö´É: Çö´ëÀû Á¢±Ù¹æ½Ä¡· Á¦4ÆÇ, ¡¶½ÉÃþÇнÀ¡·, ¡¶½Å°æ¸Á°ú ½ÉÃþ ÇнÀ¡· µîÀÌ ÀÖ´Ù. ¹ø¿ª°ú ÇÁ·Î±×·¡¹Ö ¿Ü¿¡ ¼ÒÇÁÆ®¿þ¾î ¹®¼È¿¡µµ ¸¹Àº °ü½ÉÀÌ ÀÖÀ¸¸ç, ¼ö¸¹Àº ¿ÀǼҽº ÇÁ·ÎÁ§Æ®µéÀÇ Ç¥ÁØ ¹®¼ Çü½ÄÀ¸·Î ¾²ÀÌ´Â DocBookÀÇ ±¹³» »ç¿ëÀÚ ¸ðÀÓÀÎ ´ÚºÏ Çѱ¹(http://docbook.kr)ÀÇ ÀÏ¿øÀÌ´Ù. ÇöÀç ¹ø¿ª¼ Á¤º¸ »çÀÌÆ® occam¡¯s Razor(http://occamsrazr.net)¿Í °ÔÀÓ °³¹ß ¹× °³¹ß¼ °ü·Ã »çÀÌÆ® GpgStudy(http://www.gpgstudy.com)¸¦ ¿î¿µÇÏ°í ÀÖ´Ù.
ÆîÃĺ¸±â¿ªÀÚÀÇ ´Ù¸¥Ã¥
Àüüº¸±â½±°Ô ¼³¸íÇÑ C++ ÇÙ½É °¡À̵å¶óÀÎ
ÇÊ¿äÇÑ °Í¸¸ °ñ¶ó ¹è¿ì´Â ¸ð´ø C++
À¯¿¬ÇÑ ¼ÒÇÁÆ®¿þ¾î¸¦ ¸¸µå´Â ¼³°è ¿øÄ¢
C++20: dzºÎÇÑ ¿¹Á¦·Î ÀÍÈ÷´Â ÇÙ½É ±â´É
ÁÖ°£·©Å·
´õº¸±â»óÇ°Á¤º¸Á¦°ø°í½Ã
À̺¥Æ® ±âȹÀü
ÀÌ »óÇ°ÀÇ ½Ã¸®Áî
(ÃÑ 94±Ç / ÇöÀ籸¸Å °¡´Éµµ¼ 94±Ç)
Àü°øµµ¼/´ëÇб³Àç ºÐ¾ß¿¡¼ ¸¹Àº ȸ¿øÀÌ ±¸¸ÅÇÑ Ã¥
ÆǸÅÀÚÁ¤º¸
»óÈ£ |
(ÁÖ)±³º¸¹®°í |
---|---|
´ëÇ¥ÀÚ¸í |
¾Èº´Çö |
»ç¾÷ÀÚµî·Ï¹øÈ£ |
102-81-11670 |
¿¬¶ôó |
1544-1900 |
ÀüÀÚ¿ìÆíÁÖ¼Ò |
callcenter@kyobobook.co.kr |
Åë½ÅÆǸž÷½Å°í¹øÈ£ |
01-0653 |
¿µ¾÷¼ÒÀçÁö |
¼¿ïƯº°½Ã Á¾·Î±¸ Á¾·Î 1(Á¾·Î1°¡,±³º¸ºôµù) |
±³È¯/ȯºÒ
¹ÝÇ°/±³È¯ ¹æ¹ý |
¡®¸¶ÀÌÆäÀÌÁö > Ãë¼Ò/¹ÝÇ°/±³È¯/ȯºÒ¡¯ ¿¡¼ ½Åû ¶Ç´Â 1:1 ¹®ÀÇ °Ô½ÃÆÇ ¹× °í°´¼¾ÅÍ(1577-2555)¿¡¼ ½Åû °¡´É |
---|---|
¹ÝÇ°/±³È¯°¡´É ±â°£ |
º¯½É ¹ÝÇ°ÀÇ °æ¿ì Ãâ°í¿Ï·á ÈÄ 6ÀÏ(¿µ¾÷ÀÏ ±âÁØ) À̳»±îÁö¸¸ °¡´É |
¹ÝÇ°/±³È¯ ºñ¿ë |
º¯½É ȤÀº ±¸¸ÅÂø¿À·Î ÀÎÇÑ ¹ÝÇ°/±³È¯Àº ¹Ý¼Û·á °í°´ ºÎ´ã |
¹ÝÇ°/±³È¯ ºÒ°¡ »çÀ¯ |
·¼ÒºñÀÚÀÇ Ã¥ÀÓ ÀÖ´Â »çÀ¯·Î »óÇ° µîÀÌ ¼Õ½Ç ¶Ç´Â ÈÑ¼ÕµÈ °æ¿ì ·¼ÒºñÀÚÀÇ »ç¿ë, Æ÷Àå °³ºÀ¿¡ ÀÇÇØ »óÇ° µîÀÇ °¡Ä¡°¡ ÇöÀúÈ÷ °¨¼ÒÇÑ °æ¿ì ·º¹Á¦°¡ °¡´ÉÇÑ »óÇ° µîÀÇ Æ÷ÀåÀ» ÈѼÕÇÑ °æ¿ì ·½Ã°£ÀÇ °æ°ú¿¡ ÀÇÇØ ÀçÆǸŰ¡ °ï¶õÇÑ Á¤µµ·Î °¡Ä¡°¡ ÇöÀúÈ÷ °¨¼ÒÇÑ °æ¿ì ·ÀüÀÚ»ó°Å·¡ µî¿¡¼ÀÇ ¼ÒºñÀÚº¸È£¿¡ °üÇÑ ¹ý·üÀÌ Á¤ÇÏ´Â ¼ÒºñÀÚ Ã»¾àöȸ Á¦ÇÑ ³»¿ë¿¡ ÇØ´çµÇ´Â °æ¿ì |
»óÇ° Ç°Àý |
°ø±Þ»ç(ÃâÆÇ»ç) Àç°í »çÁ¤¿¡ ÀÇÇØ Ç°Àý/Áö¿¬µÉ ¼ö ÀÖÀ½ |
¼ÒºñÀÚ ÇÇÇغ¸»ó |
·»óÇ°ÀÇ ºÒ·®¿¡ ÀÇÇÑ ±³È¯, A/S, ȯºÒ, Ç°Áúº¸Áõ ¹× ÇÇÇغ¸»ó µî¿¡ °üÇÑ »çÇ×Àº¼ÒºñÀÚºÐÀïÇØ°á ±âÁØ (°øÁ¤°Å·¡À§¿øȸ °í½Ã)¿¡ ÁØÇÏ¿© ó¸®µÊ ·´ë±Ý ȯºÒ ¹× ȯºÒÁö¿¬¿¡ µû¸¥ ¹è»ó±Ý Áö±Þ Á¶°Ç, ÀýÂ÷ µîÀº ÀüÀÚ»ó°Å·¡ µî¿¡¼ÀǼҺñÀÚ º¸È£¿¡ °üÇÑ ¹ý·ü¿¡ µû¶ó ó¸®ÇÔ |
(ÁÖ)ÀÎÅÍÆÄÅ©Ä¿¸Ó½º´Â ȸ¿ø´ÔµéÀÇ ¾ÈÀü°Å·¡¸¦ À§ÇØ ±¸¸Å±Ý¾×, °áÁ¦¼ö´Ü¿¡ »ó°ü¾øÀÌ (ÁÖ)ÀÎÅÍÆÄÅ©Ä¿¸Ó½º¸¦ ÅëÇÑ
¸ðµç °Å·¡¿¡ ´ëÇÏ¿© (ÁÖ)KGÀ̴Ͻýº°¡ Á¦°øÇÏ´Â ±¸¸Å¾ÈÀü¼ºñ½º¸¦ Àû¿ëÇÏ°í ÀÖ½À´Ï´Ù.
µî·Ï ¿©ºÎ´Â e-±ÝÀ¶¹Î¿ø¼¾ÅÍ È¨ÆäÀÌÁö(www.fcsc.kr)ÀÇ µî·Ï¡¤½Å°í>ÀüÀÚ±ÝÀ¶¾÷µî·ÏÇöȲ ¸Þ´º¿¡¼ È®ÀÎÇÏ½Ç ¼ö ÀÖ½À´Ï´Ù.
¹è¼Û¾È³»
±³º¸¹®°í »óÇ°Àº Åùè·Î ¹è¼ÛµÇ¸ç, Ãâ°í¿Ï·á 1~2Àϳ» »óÇ°À» ¹Þ¾Æ º¸½Ç ¼ö ÀÖ½À´Ï´Ù.
Ãâ°í°¡´É ½Ã°£ÀÌ ¼·Î ´Ù¸¥ »óÇ°À» ÇÔ²² ÁÖ¹®ÇÒ °æ¿ì Ãâ°í°¡´É ½Ã°£ÀÌ °¡Àå ±ä »óÇ°À» ±âÁØÀ¸·Î ¹è¼ÛµË´Ï´Ù.
±ººÎ´ë, ±³µµ¼Ò µî ƯÁ¤±â°üÀº ¿ìü±¹ Åù踸 ¹è¼Û°¡´ÉÇÕ´Ï´Ù.
¹è¼Ûºñ´Â ¾÷ü ¹è¼Ûºñ Á¤Ã¥¿¡ µû¸¨´Ï´Ù.