Создатель С++ ответил на критику американских властей
В конце февраля Белый дом призвал разработчиков отказаться от уязвимых языков программирования наподобие С и С++ в пользу тех, которые обеспечивают безопасную работу с памятью. Создатель С++ Бьёрн Страуструп высказался в защиту популярного языка в комментарии Infoworld.
Страуструп подчеркнул, что в заявлении игнорируются преимущества С++, появившегося в далеком 1979 году. «Удивительно, что авторы тех правительственных документов, кажется, упускают из вида достоинства современной версии С++ и усилия по обеспечению надёжных гарантий памяти. С другой стороны, они, кажется, осознали, что язык программирования является лишь одним из компонентов в цепочке инструментов, а потому улучшение инструментов и процессов разработки имеет важнейшее значение», — отметил Страуструп.
Он заявил, что разработчики С++ всегда стремились повысить безопасность работы с памятью и далеко продвинулись в этом направлении. «Улучшение безопасности памяти было одной из целей С++ с самого первого дня и на протяжении всей его эволюции. Сравните язык С из книги K&R с ранним С++, а потом ранний С++ с современным С++. Я описывал эту эволюцию в своём выступлении на CppCon 2023», — отметил программист. Он добавил, что качественный код на С++ пишется с использованием концепции RAII (Resource Acquisition Is Initialization, «получение ресурса есть инициализация»), контейнеров и умных указателей, а не «традиционного месива указателей C».
Также Страуструп назвал ряд усилий по повышению безопасности памяти в С++. «Существует две проблемы, связанные с безопасностью. Из миллиардов строк кода на С++ очень немногие полностью соответствуют современным стандартам, а у людей различные понятия о том, какие аспекты безопасности важны. Я и комитет по стандартизации пытаемся решить их», — сказал Страуструп.
Одна из таких инициатив — фреймворк Profiles, который позволяет улучшить гарантии, например относительно быстро устранить большинство ошибок диапазона, и постепенно ввести гарантии для крупных кодовых баз путём локального статического анализа и минимальных проверок во время выполнения программы. Страуструп утверждает, что его долгосрочной целью было и остаётся обеспечить в C++ безопасность типов и ресурсов там и тогда, где и когда это необходимо. Он также посоветовал ознакомиться с документами на странице WG21 на сайте комитета.
С++, несмотря на свой солидный возраст, остается одним из основных языков программирования, который применется очень широко: от разработки ПО до создания игр. В сети много ресурсов, которые помогут освоить этот язык. Советуем обратить внимаение на подборку команды Digitaldefynd, котрую мы дополнили. В ней как платные, так и бесплатные ресурсы для людей с разным уровнем подготовки и знаний С++.
10 курсов по SQL для лучшего понимания работы с большими данными (май, 2023)
Собрали 10 платных и бесплатных онлайн-курсов для изучения SQL. Программы рассчитаны на слушателей, которые только начинают или продолжают знакомство с языком.
10 способов научиться программировать самостоятельно
Хотите научиться кодить и освоить алгоритмы? Собрали десять советов с чего начать изучение программирования для тех, кто только начинает своё путешествие в мир программирования и снабдили все это полезными ссылками на курсы для начинающих программистов.
Этому бояну уже сто лет в обед. Кто-то только сейчас проснулся? Там уже и не вспомнить сколько лет назад эта вся песня была. Ответ был почти сразу. Этих властей там все поносили за эту кривую критику. Опозоролись на весь мир.
"в C++ если я хочу писать опасно, я просто пишу * и &.
Если же я хочу писать безопасно, мне надо std::shared_ptr constexpr const const std::lock_guard." (c)
Релоцировались? Теперь вы можете комментировать без верификации аккаунта.
Делают из СРР джаву, зачем нам ещё одна джава. Есть же компиляторы джавы.
Это не компиляторы :) Profiles напоминает Microsoft GSL (Guidelines Support Library)
Этому бояну уже сто лет в обед. Кто-то только сейчас проснулся? Там уже и не вспомнить сколько лет назад эта вся песня была. Ответ был почти сразу. Этих властей там все поносили за эту кривую критику. Опозоролись на весь мир.
"в C++ если я хочу писать опасно, я просто пишу * и &.
Если же я хочу писать безопасно, мне надо std::shared_ptr constexpr const const std::lock_guard." (c)