Эффективный и современный С++. 42 рекомендации по использованию С++11 и С++14

Эффективный и современный С++. 42 рекомендации по использованию С++11 и С++14

Эффективный и современный С++

Освоение С++11 и С++14 — это больше, чем просто ознакомление с вводимыми этими стандартами возможностями (например, объявлениями типов auto, семантикой перемещения, лямбда-выражениями или поддержкой многопоточности). Вопрос в том, как использовать их эффективно, чтобы создаваемые программы были корректны, эффективны и переносимы, а также чтобы их легко можно было сопровождать. Именно этим вопросам и посвящена данная книга, описывающая создание по-настоящему хорошего программного обеспечения с использованием C++11 и С++14 — т.е. с использованием современного С++.

В книге рассматриваются следующие темы.

■ Преимущества и недостатки инициализации с помощью фигурных скобок, спецификации noexcept, прямой передачи и функций make интеллектуальных указателей

■ Связь между std::move, std::forward, rvalue-ссылками и универсальными ссылками

■ Методы написания понятных, корректных, эффективных лямбда-выражений

■ Чем std::atomic отличается от volatile, как они используются и как соотносятся с API параллельных вычислений С++

■ Какие из лучших методов “старого” программирования на С++ (т.е. С++98) должны быть пересмотрены при работе с современным С++

Эффективный и современный С++, следуя принципам более ранних книг Скотта Мейерса, охватывает совершенно новый материал. Эта книга достойна занять свое место на полке каждого программиста на современном С++.

После изучения основ С++ я перешел к изучению того, как применять С++ в промышленном программировании, с помощью серии книг Скотта Мейерса Эффективный С++. Эффективный и современный С++ — наиболее важная из книг серии, предлагающая ключевые рекомендации, стили и идиомы, позволяющие эффективно использовать современный С++. Вы еще не купили эту книгу? Сделайте это прямо сейчас.

Герб Саттер,
глава Комитета ISO по стандартизации С++, специалист в области архитектуры программного обеспечения на С++ в Microsoft

Более чем 20 лет книги Скотта Мейерса серии Эффективный С++ являются критерием уровня книг по программированию на С++. Понятное пояснение сложного технического материала принесло ему всемирную известность. Он всегда самый желанный гость на международных конференциях, а его услуги консультанта широко востребованы во всем мире.

Скотт Мейерс имеет степень доктора философии (Ph.D.) в области компьютерных наук в Университете Брауна (Brown University).

Жанр: Программирование
Серии: -
Всего страниц: 130
ISBN: 978-5-8459-2000-3
Год издания: 2016
Формат: Полный

Эффективный и современный С++. 42 рекомендации по использованию С++11 и С++14 читать онлайн бесплатно

Шрифт
Интервал

Отзывы о книге “Эффективный и современный С++

Вас интересует С++? Современный С++ (т.е. C++11/C++14) — это гораздо больше чем простое внесение косметических изменений в старый стандарт. Учитывая новые возможности языка, это скорее его переосмысление. Вам нужна помощь в его освоении? Тогда перед вами именно та книга которая вам нужна. Что касается С++, то Скотт Мейерс был и остается синонимом точности, качества и удовольствия от чтения.

— Герхард Крейцер (Gerhard Kreuzer)
Инженер-исследователь в Siemens AG

Трудно получить достаточный опыт и стать экспертом. Не менее трудно стать настоящим учителем, способным просто и ясно донести сложный материал до ученика. Если вы читаете эту книгу, то вы знаете человека, который объединяет оба эти качества. Книга Эффективный и современный С++ написана непревзойденным техническим писателем, который умеет излагать сложные взаимосвязанные темы ясно и понятно, блестящим литературным стилем. При этом вряд ли вам удастся найти в книге хотя бы одну техническую ошибку.

— Андрей Александреску (Andrei Alexandrescu)
Доктор философии, исследователь, автор книги Современное проектирование на С++

Когда человек с более чем двадцатилетним опытом работы с С++ берется рассказать, как получить максимальную отдачу от современного С++ (рассказывая как о лучших подходах, так и о возможных ловушках, которых следует избегать), я настоятельно рекомендую внимательно прочесть его книгу! Я, определенно, узнал из нее много нового!

— Невин Либер (Nevin Liber)
Старший программист в DRW Trading Group

Бьярне Страуструп — создатель С++ — сказал: “С++11 выглядит как новый язык программирования”: Книга Эффективный и современный С++ заставляет нас разделить это впечатление, поясняя, как использовать новые возможности и идиомы С++11 и С++14 в повседневной практике. Это еще одна талантливая книга Скотта Мейерса.

— Кассио Нери (Cassio Neri)
Аналитик в Lloyds Banking Group

Скотт умеет добраться до самой сути любой технической проблемы. Книги серии Эффективный С++ способствовали улучшению стиля кодирования предыдущего поколения программистов С++; новая книга делает то же самое с программистами на современном С++.

— Роджер Орр (Roger Orr)
OR/2 Limited, член Комитета ISO по стандартизации С++

Эффективный и современный С++ — отличный инструмент для повышения вашего уровня как программиста на современном С++. Книга не только учит тому, как, когда и где эффективно использовать современный С++, но и почему делать это именно так. Вне всякого сомнения, эта книга Скотта Мейерса даст программистам гораздо лучшее понимание языка.

— Барт Вандвустин (Bart Vandewoestyne)
Инженер, исследователь и просто энтузиаст С++

Я люблю С++, он десятилетиями был моей рабочей лошадкой. А с новыми копытами эта лошадка стала еще сильнее и привлекательнее, чем я мог ранее себе представить. Но при больших изменениях всегда встает вопрос “Когда и как пользоваться всем этим богатством?” Как всегда, книга Скотта Мейерса компетентно и исчерпывающе отвечает на поставленный вопрос.

— Дамьен Уоткинс (Dаmiеn Watkins)
Руководитель группы программной инженерии в CSIRO

Отличное чтение для перехода к современному С++ — новинки языка C++11/14 описаны наряду с C++98, разделение содержимого книги на разделы позволяет легко найти интересующую тему, а в конце каждого раздела приведены итоговые рекомендации. Книга интересна и полезна для программистов на С++ всех уровней.

— Рейчел Ченг (Rachel Cheng)
F5 Networks

Если вы переходите с С++98/03 на C++11/14, вам нужна точная практичная информация, которую вам предоставляет Скотт Мейерс в книге Эффективный и современный С++. Если вы уже пишете код на С++11, то, вероятно, сталкивались с проблемами при использовании новых возможностей, которые легко решаются с помощью книги Скотта. В любом случае можно уверенно утверждать, что время, затраченное на чтение этой книги, не пропадет впустую.

— Роб Стюарт (Rob Stewart)
Член Boost Steering Committee (boost.org)

Об авторе

Скотт Мейерс — один из ведущих мировых экспертов по С++, широко востребованный как инструктор, консультант и докладчик на разных конференциях. Более чем 20 лет книги Скотта Мейерса серии Эффективный С++ являются критерием уровня книг по программированию на С++. Скотт Мейерс имеет степень доктора философии (Ph.D.) в области компьютерных наук в Университете Брауна (Brown University). Его сайт находится по адресу >aristeia.com.

Об изображении на обложке

На обложке книги Эффективный и современный С++ изображен розовошапочный пестрый голубь (Ptilinopus regina). Еще одно имя этого вида голубя — Свенсонов пестрый голубь (Swainson's fruit dove). Он отличается ярким оперением: серые голова и грудь, оранжевый живот, беловатое горло, желто-оранжевый цвет радужки и серо-зеленые ноги.

Голубь распространен в равнинных лесах восточной Австралии, муссонных лесах северной части Австралии, а также на малых Зондских островах и Молуккских островах Индонезии. Рацион голубя состоит из различных фруктов наподобие инжира (который он поедает целиком), пальм и лоз. Еще одним источником пищи голубя является камфорный лавр, большое вечнозеленое дерево. Они питаются парами, небольшими стайками или поодиночке в тропических лесах, обычно утром или поздно вечером. Для питья они используют воду из листьев или росу, но не воду с земли.


Еще от автора Скотт Мейерс
Эффективное использование STL

В этой книге известный автор Скотт Мейерс раскрывает секреты настоящих мастеров, позволяющие добиться максимальной эффективности при работе с библиотекой STL.Во многих книгах описываются возможности STL, но только в этой рассказано о том, как работать с этой библиотекой. Каждый из 50 советов книги подкреплен анализом и убедительными примерами, поэтому читатель не только узнает, как решать ту или иную задачу, но и когда следует выбирать то или иное решение — и почему именно такое.


Как функции, не являющиеся методами, улучшают инкапсуляцию

Когда приходится инкапсулировать, то иногда лучше меньше, чем большеЯ начну со следующего утверждения: Если вы пишете функцию, которая может быть выполнена или как метод класса, или быть внешней по отношению к классу, Вы должны предпочесть ее реализацию без использования метода. Такое решение увеличивает инкапсуляцию класса. Когда Вы думаете об использовании инкапсуляции, Вы должны думать том, чтобы не использовать методы.Удивлены? Читайте дальше.


Рекомендуем почитать

Полёты во сне и наяву

Опубликовано в газете «Макс-инфо» (г. Брянск, № 11 (37), 16 апреля 2008 г.)


«Если», 1999 № 05

ФАНТАСТИКАЕжемесячный журналСодержание:Джоанна Расс. ВТОРЖЕНИЕ, рассказФАКТЫСтивен Бернс. ПРОКАТИМСЯ ПО ВИВАЛЬДИ, рассказЕвгений Харитонов. МЕЛОДИИ ИНЫХ МИРОВФАКТЫУильям Бартон. ПАЛИТРА ТИТАНА, повестьЖозефа Шерман. ПАРТИЯ В МЕХЕН, рассказГрей Роллинс. В ОЖИДАНИИ СУДА, рассказВИДЕОДРОМ*Адепты жанра-- Евгений Зуенко. НЕИЗВЕСТНЫЙ ЛУКАС*РецензииБим Г. Пайпер. НЕСЛУХ, повестьМайкл Кэнделл. СОБАКИ, КОШКИ, ПОПУГАИ И ДРУГИЕ, рассказПол Макоули. ЧУДОВИЩА ВОЙНЫ, повестьВл. Гаков. КАРТОГРАФЫ АДА, РАЯ И ОКРЕСТНОСТЕЙКУРСОРКРУПНЫЙ ПЛАН*Александр Ройфе.


«Если», 1999 № 01-02

ФАНТАСТИКАЕжемесячный журналСодержание:Рауль Кабеза Де Вака. ОКОНЧАТЕЛЬНО, рассказВл. Гаков. КАРТОГРАФЫ АДА, РАЯ И ОКРЕСТНОСТЕЙЙен Макдональд. НОЧЬ ВСЕХ МЕРТВЕЦОВ, повестьВИДЕОДРОМ*Сериал-- Константин Дауров. ЭНТОМОЛОГИЯ НА МАРШЕ*Экранизация-- Евгений Харитонов. ОБЫКНОВЕННОЕ ЧУДО*Рецензии*Рейтинг-- Сергей Кудрявцев. ЛИДЕРЫ 1998. Самые кассовые фантастические фильмы*Внимание, мотор!-- Арсений Иванов. Новости со съемочной площадкиДжеймс Шмиц. ЧУДОВИЩЕ РАЗУМА, рассказДжеффри Лэндис. ДВЕРЬ В ЛЮБУЮ СТОРОНУ, рассказЛеонид Лесков.


Pro Git

Разработчику часто требуется много сторонних инструментов, чтобы создавать и поддерживать проект. Система Git — один из таких инструментов и используется для контроля промежуточных версий вашего приложения, позволяя вам исправлять ошибки, откатывать к старой версии, разрабатывать проект в команде и сливать его потом. В книге вы узнаете об основах работы с Git: установка, ключевые команды, gitHub и многое другое.В книге рассматриваются следующие темы:основы Git;ветвление в Git;Git на сервере;распределённый Git;GitHub;инструменты Git;настройка Git;Git и другие системы контроля версий.


Java 7

Рассмотрено все необходимое для разработки, компиляции, отладки и запуска приложений Java. Изложены практические приемы использования как традиционных, так и новейших конструкций объектно-ориентированного языка Java, графической библиотеки классов Swing, расширенной библиотеки Java 2D, работа со звуком, печать, способы русификации программ. Приведено полное описание нововведений Java SE 7: двоичная запись чисел, строковые варианты разветвлений, "ромбовидный оператор", NIO2, новые средства многопоточности и др.


MFC и OpenGL

В книге рассказывается история главного героя, который сталкивается с различными проблемами и препятствиями на протяжении всего своего путешествия. По пути он встречает множество второстепенных персонажей, которые играют важные роли в истории. Благодаря опыту главного героя книга исследует такие темы, как любовь, потеря, надежда и стойкость. По мере того, как главный герой преодолевает свои трудности, он усваивает ценные уроки жизни и растет как личность.


Симуляция частичной специализации

В книге рассказывается история главного героя, который сталкивается с различными проблемами и препятствиями на протяжении всего своего путешествия. По пути он встречает множество второстепенных персонажей, которые играют важные роли в истории. Благодаря опыту главного героя книга исследует такие темы, как любовь, потеря, надежда и стойкость. По мере того, как главный герой преодолевает свои трудности, он усваивает ценные уроки жизни и растет как личность.


Обработка событий в С++

В книге рассказывается история главного героя, который сталкивается с различными проблемами и препятствиями на протяжении всего своего путешествия. По пути он встречает множество второстепенных персонажей, которые играют важные роли в истории. Благодаря опыту главного героя книга исследует такие темы, как любовь, потеря, надежда и стойкость. По мере того, как главный герой преодолевает свои трудности, он усваивает ценные уроки жизни и растет как личность.


Питон — модули, пакеты, классы, экземпляры

Python - объектно-ориентированный язык сверхвысокого уровня. Python, в отличии от Java, не требует исключительно объектной ориентированности, но классы в Python так просто изучить и так удобно использовать, что даже новые и неискушенные пользователи быстро переходят на ОО-подход.