Комментарии 16
Я бы добавил в копилку книги:
Искусство программирования Unix
Идеальный код. Как научиться видеть красоту в программировании.
Жемчужины программирования.
Чем Юдковский ближе к «плюсам» чем, например, к Бейсику или Фортрану?
Но я бы посмотрел на перечень шире. Обратите внимание, что в первую очередь объединяет все эти книги — они прямоугольные. И лишь последняя несколько выбивается пропорциями (не случайно, она — по дизайну).
Думаю сюда можно добавить ещё ряд прямоугольных книг, но сильно отличающихся внутренней структурой:
— «Игра в классики» Кортасара определённо нашла бы приверженцем среди С++ программистов, долгое время погружённых в многолетнее легаси и открывающих в случайных местах много интригующих загадок. В этой книге порядок чтения выбирается читающий;
— Здесь также уместна была книга Павича «Хазарский словарь» (обеих версий), закрепляющая мысль, что UB встроено в наше мышление и, вообще, это — хороший паттерн проектирования, ибо он позволяет избежать унылого прямоугольного кода;
— «Книга о самых невообразимых животных» К. Хендерсона также найдёт отклик у любого адепта boost и stl, поддержав их во взглядах на жизнь.
Не очень понятно зачем мне книга Страуструпа, и уж тем более зачем её читать? Чем не угодил cppreference и core guidelines в качестве справочника?
Я бы вместо неё рекомендовал всем С++ разработчикам прочесть Rust book. Совсем хорошо - попробовать пописать на языке, но необязательно углубляться.
В Rust хорошо то, что он поднимает на поверхность все болячки С++, на которые бывалые разработчики уже давно положили болт, и предлагает классные решения этих проблем. Напрямую в С++ конечно это использовать нельзя, но зато слегка выправляет мозги и учит делать более чистые API для своих программ.
Вы путаете книги. Дизайн и эволюция - не справочник, а история создания. Она про причины принятых решений, в то время как cppreference - справочник с результатами принятых решений.
А смысл её читать? Ну, разве что только в археологических целях или любопытства для? Что полезного даёт знание истории возникновения фич разработчику, который уже умеет программировать на С++?
Опять же, cppreference - пускай и справочник, но core guidelines - нет. И там намного всё лучше расписано, на мой взгляд.
И действительно, чего полезного может дать изучение причин и следствий принятых решений в архитектуре одного из самых влиятельных инструментов программирования.
А можно поконкретнее? :) Мне правда интересно, чего ж такого умного оттуда можно извлечь. Потому что сейчас я вижу эту книгу, как огромный список оправданий к вопросу "А почему С++ такой кривой язык?". Не, я люблю (и ненавижу) плюсы, много лет на них пишу, мне все причины и так понятны, но я не вижу особо смысла читать об этом книгу.
Из современного рекомендую книгу "The Art of Writing Efficient Programs" нашего соотечественника Федора Пикуса. В книге рассмотрены вопросы профилирования и оптимизации программ на C++ через призму супескалярных вычислений. Мимоходом разобрана атака Spectre.
Книга Юдковского определённо понравится математикам. Жаль только, что конец жестокий.
Что читать разработчику C++