Comments 19
А вот зачем в 2024 году быть НАЧИНАЮЩИМ разработчиком C++?
За Константина Владимирова жирнейший + (был бы если бы мог), сам под них частенько засыпаю ?
Большое спасибо за подборку. Сам свичнулся с PHP на Go, но все время присматриваюсь к C/C++, но не знал с чего начать изучать с учётом современного подхода.
Интересно, насколько легко вам дастся асинхронность в C++. По сравнению с Go, кажется, что у Go есть всё из коробки, и оно ещё проще в использовании. Я на данный момент — наоборот — начал с C++ и интересуюсь Go)
Вот у лектория ФПМИ есть курс "Теория и практика многопоточной синхронизации". Задачи кодят на C++, но показывает примеры из Go, Rust и Java. И там асинхронность подана проще))
В C++20 добавили корутины, но писать ты всё должен сам, включая пул потоков, очередь, promise и прочие.
Плюс видно, что курс обновляют.
Извините, но здесь не хватает конкретики, уточните, пожалуйста, те моменты, по которым вы сделали вывод, что "курс обновляют" ?
Это, действительно, косвенное наблюдение. Я опирался на информацию, которую Stepik пишет в правой колонке на странице курса:
Последнее обновление 22.03.2024
Что поменяли – кто его знает) Смотрите отзывы и оценивайте самостоятельно.
Вот на LearnCpp есть отдельная лента, где написано что и когда обновили.
Бьерне Страуструп "Программирование. Принципы и практика использования C++", эту книжку почему, интересно, никто не включает в свои обзоры (роадмапы и т.д.)?
Она, скорее, не для новичка. Я слышал, что в ней не очень последовательное повествование, и она больше про программирование в целом, а не про C++. C++ там как иллюстративный инструмент.
Напишу повторно, что я лично ещё не изучал книги
Она как раз для новичков в программировании. Это выжимка его институтского курса, который он читал для нетехнических специальностей.
Повествование в ней последовательное. Она дает понимание, ЗАЧЕМ это так работает. Просто старые плюсовики считают, что если не давать указатели на первой неделе - то это не нормальное преподавание С++. Это вообще типовая болезнь всех курсов по плюсам: "мы страдали, значит и вы должны быть как мы".
Я тебе на курсе говорил, и сейчас повторю: учить как раньше плюсам - только вредить. Об этом Шишков в свое время написал, и сам Страуструп на конференциях говорит постоянно, и Кейт Грегори отлично объясняла все в своем видео
И вот только что он выпустил третье обновлённое издание!
Поэтому приведу свой списоĸ и ссылку на подборку:
Стивен Прата — Языĸ программирования C++. Леĸции и упражнения
По ссылке на подборку, которую вы привели, по всей видимости, находится кривой перевод этого топика со stackoverflow: линк. Там же обозначено, что обзор этой книги не очень благоприятный (я бы сказал, что обзор вообще-то даже слишком жестковат).
К сожалению, я бы сам эту книгу не рекомендовал (я её читал, если что) тем людям, кому не нужен C (без плюсов) и кому хочется быстрее обучиться C++ (современному что ли). Очень тяжело будет переключиться с C-style на стиль С++.
В своё время учебник Стивена Прата по Си мне очень сильно помог, т.к. после прочтения я могу действительно легко читать и понимать написанное в K&R и сишных стандартах, да и в целом код работающий писать :)
P.S. Разрешите также озвучить своё мнение по теме изучения C++:
Следует как можно раньше определиться с предметной областью (web, desktop, системное ПО, embedded, CG и т.д.), т.к. язык обладает обширными возможностями и действительно практически универсален, а выбор предметной области поможет сфокусироваться и не тратить силы на вкуривание отдельных глубин языка. Так можно и лет 10 его учить и не доучить.
P.P.S. Осмелюсь оставить ссылку на участника stackoverflow AnT - его ответы по C/C++ мне тоже помогали по некоторым темам, до которых я не допирал сам или не уделял внимания отдельным моментам в изучении.
Насчёт книг. Стивена Прату, думаю, можно вычеркнуть. В интернетах её сильно хейтят, т.к. там разбор тем идёт сначала через призму С, ты делаешь задачки на отработку техник из С, и уже только потом переходишь к тому как тот же код сделать на лад современного С++ (я сам читал и там действительно так). Во всех остальных книгах по типу C++ Primer, Effective C++, C++ Programming Language от Страуструпа тебе сразу показывают С++ подход и немного объясняют как это было в С, чисто для понимания концепции. Ну и ещё у Праты стандарт лишь С++11, который разбирается в приложении к книге и вскользь там где сильно нужно в ней самой.
Ещё записи выступлений на CppCon можно смотреть на ютубе. Для новичков даже отдельная рубрика Back to basics есть. Много хорошего там нашёл для себя.
Читал книгу Стивена Прата, тогда ещё вышло издание по стандарту С++11. Как по мне вполне хорошая книга. Когда доходит черёд до ООП, объясняется очень подробно. Я бы не сбрасывал её со счетов.
Странно, что нет книги Стэнли Липпмана "Язык программирования С++. Базовый курс", 5-е издание, которую в том же чате для новичков по плюсам советуют
35+ бесплатных ресурсов для начинающих разработчиков С++