Написание качественного кода на C++ не должно быть трудной задачей. Если разработчик будет следовать рекомендациям, приведенным в C++ Core Guidelines, то он будет писать исключительно надежные, эффективные и прекрасно работающие программы на C++. Но руководство настолько переполнено советами, что порой трудно понять, с чего начать. Начните с «Красивого C++»!Опытные программисты Гай Дэвидсон и Кейт Грегори выбрали 30 основных рекомендаций, которые посчитали особенно ценными, и дают подробные практические советы, которые помогут улучшить ваш стиль разработки на C++. Для удобства книга структурирована в точном соответствии с официальным веб-сайтом C++ Core Guidelines.
Дэвидсон Дж. Гай
Дж. Гай Дэвидсон (J. Guy Davidson) впервые познакомился с компьютерами благодаря Acorn Atom в 1980 году. Еще будучи подростком, он писал игры для различных домашних компьютеров: Sinclair Research ZX81 и ZX Spectrum, а также Atari ST. В начале 1990-х начал заниматься разработкой приложений для презентаций, а в 1997-м перешел в игровую индустрию, начав работать в Codemasters в их лондонском офисе.
В 1999 году перешел в Creative Assembly, где сейчас возглавляет отдел инженерно-технических методов. Работает над франшизой Total War, курируя серию, а также формулируя и развивая стандарты программирования в команде инженеров. Входит в состав консультативных советов IGGI, группы BSI C++ и комитета ISO C++. Занимает пост ответственного за стандарты в комитете ACCU и входит в программный комитет конференции ACCU. Является модератором на дискорд-сервере #include . Его можно увидеть на конференциях и встречах по C++, особенно на посвященных добавлению методов линейной алгебры в стандартную библиотеку.
В свободное время он оказывает наставническую поддержку по вопросам программирования на C++ через Prospela и BAME in Games; помогает школам, колледжам и университетам через UKIE, STEMNet и в качестве Video Game Ambassador.
Грегори Кейт
Кейт Грегори (Kate Gregory) познакомилась с программированием в университете Ватерлоо в 1977 году и никогда не оглядывалась назад с сомнением или сожалением. С 1986 года вместе с мужем руководит компанией Gregory Consulting, помогая клиентам по всему миру.
Кейт выступала с докладами на пяти континентах, любит искать заковыристые головоломки и затем делиться их решением, а также проводит много времени, добровольно участвуя в различных мероприятиях, посвященных языку C++. Самым уважаемым из них является группа #include <C++>, которая оказывает огромное влияние на эту отрасль, делает программирование на C++ более гостеприимным и дружелюбным.
Вээс30.04.2026
Книжка довольно интересная, с жизненными примерами прояснена эволюция некоторых концепций в разных версиях стандарта C++. Увы, перевод, как всегда, халтурный вплоть до полной потери смысла. Начинающим, ещё не выработавшим привычку переводить надмозговый перевод в уме обратно на английский, точно не рекомендую читать в этом переводе. Лучше поискать оригинал.
Переводчица явно не понимает значения слова evaluate в применении к программированию, из-за чего глава 4.4 это один сплошной фейспалм. (Даю подсказку: здесь evaluate не значит оценивать.)
Ну, и чтоб не быть голословным вот пример из главы 2.2 про улучшение интерфейса realloc().
Вот что было сказано:
This would simply attempt to grow or shrink the block. If it failed, I could then allocate a new block myself and move everything over.
Вот что навыдумывала переводчица:
Она могла бы просто попытаться увеличить или уменьшить размер блока, а в случае неудачи выделить новый блок и переместить в него данные.
Вот что имелось в виду:
Она бы просто пыталась увеличить или уменьшить размер блока. В случае неудачи я бы мог самостоятельно выделить новый блок и переместить в него данные.
В общем, Л. Киселёвой не респект, как и научному редактору А. Котову.
Andrey12.02.2023
Хорошая книга, читается легко.
И это не учебник - это советы как лучше сделать код C++.
Прокачаете свой стиль разработки.
Научитесь писать сразу высококачественный код, статически типизированный, устойчивый к утечкам и более простой в сопровождении.
Узнаете, от каких устаревших приемов стоит отказаться и какие более современные подходы можно использовать вместо них.
Улучшите любую программу, которую вы пишете, проектируете или поддерживаете.
Используйте рекомендации из C++ Core Guidelines в сочетании с любой современной версией C++!
Заказ обратного звонка
Спасибо за обращение!
Скоро с вами свяжется наш менеджер