Эффективный и современный С++: 42 рекомендации по использованию C++11 и C++14
معرفی کتاب «Эффективный и современный С++: 42 рекомендации по использованию C++11 и C++14» نوشتهٔ Скотт Мейерс; [перевод с английского и редакция И. В. Красикова]، منتشرشده توسط نشر Вильямс; Вильямс در سال 2016. این کتاب در فرمت pdf، زبان ru ارائه شده است.
М.: Вильямс, 2016. — 304 c. с ил. — ISBN: 978-5-8459-2000-3, 978-1-49-190399-5. Новые возможности этого языка программирования, появившиеся в стандартах C++11 и C++14 — это не просто новые ключевые слова или функции, это появление совершенно новых концепций, так что для их эффективного использования недостаточно просто узнать об их существовании, и программировать на C++11, как на несколько улучшенном и расширенном функционально C++98. Когда происходят такие глобальные изменения в языке программирования, их изучению следует посвятить определенное время, написать сотни, а еще лучше — тысячи строк кода, и столкнуться с массой проблем, кажущихся тем более странными и непонятными, чем большим опытом работы с C++98 вы обладаете. В этой книге отражен бесценный опыт ее автора как программиста на C++. При этом книга не просто научит вас использовать новые возможности языка — она научит использовать их эффективно. Но и это не все — книга не просто учит эффективному применению C++, но еще и рассказывает, почему ту или иную задачу следует решать именно так. И хотя эта книга в первую очередь предназначена для энтузиастов и профессионалов, она достойна места на полке любого программиста — как профессионала, так и зеленого новичка. Освоение C++11 и C++14 — это больше, чем просто ознакомление с вводимыми этими стандартами возможностями (например, объявлениями типов auto, семантикой перемещения, лямбда-выражениями или поддержкой многопоточности). Вопрос в том, как использовать их эффективно — так, чтобы создаваемые программы были корректны, эффективны и переносимы, а также чтобы их легко можно было сопровождать. Именно этим вопросам и посвящена данная книга, описывающая создание по-настоящему хорошего программного обеспечения с использованием C++11 и C++14 — т.е. с использованием современного C++. В книге рассматриваются следующие темы: Преимущества и недостатки инициализации с помощью фигурных скобок, спецификации noexcept, прямой передачи и функций make интеллектуальных указателей. Связь между std::move, std::forward, rvalue-ссылками и универсальными ссылками. Методы написания понятных, корректных, эффективных лямбда-выражений. Чем std::atomic отличается от volatile, как они используются и как соотносятся с API параллельных вычислений C++. Какие из лучших методов "старого" программирования на C++ (т.е. C++98) должны быть пересмотрены при работе с современным C++. Эффективный и современный C++ , следуя принципам более ранних книг Скотта Мейерса, охватывает совершенно новый материал. Эта книга достойна занять свое место на полке каждого программиста на современном C++. М.: Вильямс, 2016. — 304 c. с ил. — ISBN: 978-5-8459-2000-3, 978-1-49-190399-5.Новые возможности этого языка программирования, появившиеся в стандартах C++11 и C++14 — это не просто новые ключевые слова или функции, это появление совершенно новых концепций, так что для их эффективного использования недостаточно просто узнать об их существовании, и программировать на C++11, как на несколько улучшенном и расширенном функционально C++98. Когда происходят такие глобальные изменения в языке программирования, их изучению следует посвятить определенное время, написать сотни, а еще лучше — тысячи строк кода, и столкнуться с массой проблем, кажущихся тем более странными и непонятными, чем большим опытом работы с C++98 вы обладаете. В этой книге отражен бесценный опыт ее автора как программиста на C++. При этом книга не просто научит вас использовать новые возможности языка — она научит использовать их эффективно. Но и это не все — книга не просто учит эффективному применению C++, но еще и рассказывает, почему ту или иную задачу следует решать именно так. И хотя эта книга в первую очередь предназначена для энтузиастов и профессионалов, она достойна места на полке любого программиста — как профессионала, так и зеленого новичка. Освоение C++11 и C++14 — это больше, чем просто ознакомление с вводимыми этими стандартами возможностями (например, объявлениями типов auto, семантикой перемещения, лямбда-выражениями или поддержкой многопоточности). Вопрос в том, как использовать их эффективно — так, чтобы создаваемые программы были корректны, эффективны и переносимы, а также чтобы их легко можно было сопровождать. Именно этим вопросам и посвящена данная книга, описывающая создание по-настоящему хорошего программного обеспечения с использованием C++11 и C++14 — т.е. с использованием современного C++. **В книге рассматриваются следующие темы:**Преимущества и недостатки инициализации с помощью фигурных скобок, спецификации noexcept, прямой передачи и функций make интеллектуальных указателей.Связь между std::move, std::forward, rvalue-ссылками и универсальными ссылками.Методы написания понятных, корректных, эффективных лямбда-выражений.Чем std::atomic отличается от volatile, как они используются и как соотносятся с API параллельных вычислений C++.Какие из лучших методов "старого" программирования на C++ (т.е. C++98) должны быть пересмотрены при работе с современным C++. __Эффективный и современный C++__, следуя принципам более ранних книг Скотта Мейерса, охватывает совершенно новый материал. Эта книга достойна занять свое место на полке каждого программиста на современном C++. Coming to grips with C++11 and C++14 is more than a matter of familiarizing yourself with the features they introduce (e.g., auto type declarations, move semantics, lambda expressions, and concurrency support). The challenge is learning to use those features effectively—so that your software is correct, efficient, maintainable, and portable. That’s where this practical book comes in. It describes how to write truly great software using C++11 and C++14—i.e. using modern C++.Topics include:The pros and cons of braced initialization, noexcept specifications, perfect forwarding, and smart pointer make functionsThe relationships among std::move, std::forward, rvalue references, and universal referencesTechniques for writing clear, correct, effective lambda expressionsHow std::atomic differs from volatile, how each should be used, and how they relate to C++'s concurrency APIHow best practices in 'old' C++ programming (i.e., C++98) require revision for software development in modern C++Effective Modern C++ follows the proven guideline-based, example-driven format of Scott Meyers' earlier books, but covers entirely new material.'After I learned the C++ basics, I then learned how to use C++ in production code from Meyer's series of Effective C++ books. Effective Modern C++ is the most important how-to book for advice on key guidelines, styles, and idioms to use modern C++ effectively and well. Don't own it yet? Buy this one. Now'.-- Herb Sutter, Chair of ISO C++ Standards Committee and C++ Software Architect at Microsoft Coming to grips with C++11 and C++14 is more than a matter of familiarizing yourself with the features they introduce (e.g., auto type declarations, move semantics, lambda expressions, and concurrency support). The challenge is learning to use those features effectivelyso that your software is correct, efficient, maintainable, and portable. Thats where this practical book comes in. It describes how to write truly great software using C++11 and C++14i.e. using modern C++. Topics The pros and cons of braced initialization, noexcept specifications, perfect forwarding, and smart pointer make functions The relationships among rvalue references, and universal references Techniques for writing clear, correct, effective lambda expressions How differs from volatile, how each should be used, and how they relate to C++'s concurrency API How best practices in "old" C++ programming (i.e., C++98) require revision for software development in modern C++ Effective Modern C++ follows the proven guideline-based, example-driven format of Scott Meyers' earlier books, but covers entirely new material. "After I learned the C++ basics, I then learned how to use C++ in production code from Meyer's series of Effective C++ books. Effective Modern C++ is the most important how-to book for advice on key guidelines, styles, and idioms to use modern C++ effectively and well. Don't own it yet? Buy this one. Now". -- Herb Sutter, Chair of ISO C++ Standards Committee and C++ Software Architect at Microsoft "Coming to grips with C++11 and C++14 is more than a matter of familiarizing yourself with the features they introduce (e.g., auto type declarations, move semantics, lambda expressions, and concurrency support). The challenge is learning to use those features effectively -- so that your software is correct, efficient, maintainable, and portable. That's where this practical book comes in. It describes how to write truly great software using C++11 and C++14 -- i.e. using modern C++ ... Effective Modern C++ follows the proven guideline-based, example-driven format of Scott Meyers' earlier books, but covers entirely new material"-- Publisher's website
دانلود کتاب Эффективный и современный С++: 42 рекомендации по использованию C++11 и C++14