C++ и неопределённое поведение

С++ разработчики, у нас для вас новость! Совсем скоро состоится наш вебинар со специальным гостем! Будем обсуждать C++ код, поговорим о языке и его будущем. Но это ещё не всё...

Типизированный язык программирования

С++ разработчики, у нас для вас новость! Совсем скоро состоится наш вебинар со специальным гостем! Будем обсуждать C++ код, поговорим о языке и его будущем. Но это ещё не всё...
Представлен новый рейтинг TIOBE. Его авторы отмечают продвижение «быстрых» языков, которые позволяют обрабатывать растущие объёмы данных в условиях, когда «железо» не может удовлетворять рост потребностей.
«Прошло более 45 лет с тех пор, как C++ был впервые задуман», — написал 74-летний создатель C++ Бьёрн Страуструп в статье для Communications of the ACM. Он пожаловался, что многие разработчики «используют C++ так, как будто это все ещё предыдущее тысячелетие», в своей новой статье под названием 21st Century C++, в которой он предоставил «ключевые концепции, на которых может быть построено производительное, безопасное для типов и гибкое программное обеспечение C++: управление ресурсами, управление временем жизни, обработка ошибок, модульность и обобщённое программирование, а также способы обеспечения того, чтобы код был современным, а не полагался на устаревшие, небезопасные и сложные в поддержке методы: руководства и профили».

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

Всем привет! Команда PVS-Studio рада представить вам книгу Андрея Карпова "Вредные советы для С++ программистов" в электронном виде. Многие С++ программисты уже о ней слышали, некоторые стали обладателями печатной версии книги. Настало время сделать её ещё доступнее.

Привет! Мы запустили курс «Мидл разработчик С++» для специалистов, у которых уже есть опыт.
За 4,5 месяца вы научитесь: применять лучшие практики и идиомы языка, а также яснее выражать намерения в коде; использовать диапазоны; разбираться в библиотечных и языковых возможностях; пользоваться инструментами асинхронности; работать с продвинутыми API многопоточности в С++.

Вышел новый релиз PVS-Studio — 7.34. Поддержка процессоров Apple Silicon с архитектурой ARM64, поддержка проектов для .NET 9, внедрение механизма taint-анализа в Java анализатор и это ещё не всё! Больше подробностей в этом пресс-релизе.

Представлен релиз открытой среды разработки Qt Creator 15, предназначенной для создания кроссплатформенных приложений с использованием библиотеки Qt. Проект поддерживает как разработку классических программ на языке C++, так и использование языка QML, в котором для определения сценариев используется JavaScript, а структура и параметры элементов интерфейса задаются CSS-подобными блоками. Готовые сборки Qt Creator 15 опубликованы для Linux, Windows и maсOS. Релиз Qt Creator 14 состоялся в июле 2024 года.
Опубликован набор спецификаций OpenMP 6.0 (Open Multi-Processing). Он определяет API и способы применения методов параллельного программирования для языков С, С++ и Fortran на многоядерных и гибридных (CPU+GPU/DSP) системах с общей памятью и блоками векторизации (SIMD).

Доступна для тестирования новая редакция порта Firefox для операционной системы Haiku, которая работает относительно стабильно и позволяет даже серфить по некоторым сайтам. При этом сборка не лишена отдельных проблем, например, пока не работает копирование и вставка текста через буфер обмена, некоторые скрипты на JavaScript выполняются очень медленно, всплывающие окна при первом открытии не отображаются правильно (это связано с очередной проблемой на стороне wayland-server) и т.д. Для того чтобы всё заработало потребуется особая сборка пакетов wayland, wayland-server, gtk4, webkitgtk и отдельный пакет mesa-wayland с EGL для последней версии Mesa.

После полутора лет разработки опубликован пятый бета-выпуск операционной системы Haiku R1. Изначально проект был создан как реакция на закрытие ОС BeOS и развивался под именем OpenBeOS, но был переименован в 2004 году из-за претензий, связанных с использованием в названии торговой марки BeOS. Для оценки работы нового выпуска подготовлено несколько загрузочных Live-образов (x86, x86-64 1.4 ГБ). Исходные тексты большей части ОС Haiku распространяются под свободной лицензией MIT, исключение составляют некоторые библиотеки, медиа-кодеки и компоненты, заимствованные из других проектов.
ОС Haiku ориентирована на персональные компьютеры, использует собственное ядро, построенное на основе модульной архитектуры, оптимизированное для высокой отзывчивости на действия пользователя и эффективного выполнения многопоточных приложений. Для разработчиков представлен объектно-ориентированный API. Система напрямую базируется на технологиях BeOS 5 и нацелена на бинарную совместимость с приложениями для данной ОС. Минимальное требование к оборудованию: CPU Pentium II или AMD Athlon и 384 МБ ОЗУ (рекомендовано Intel Core i3 или AMD Phenom II и 2 ГБ ОЗУ).
В качестве файловой системы используется OpenBFS, поддерживающая расширенные атрибуты файлов, журналирование, 64-разрядные указатели, поддержку хранения мета-тэгов (для каждого файла можно сохранить атрибуты в форме ключ=значение, что делает ФС похожей на БД) и специальных индексов для ускорения выборки по ним. Для организации структуры директорий используются "B+ tree" деревья. Из кода BeOS в состав Haiku включён файловый менеджер Tracker и панель Deskbar, исходные тексты которых были открыты после ухода BeOS со сцены.

Разработчик Люк Мортимер представил проект Quandoom. Это порт первого уровня Doom для квантового компьютера, представленный в виде одного файла QASM, использующего всего 70 тыс. кубитов и 80 млн вентилей. Исходный код Quandoom написан на C++ и опубликован на GitHub под лицензией MIT.

11 сентября 2024 года разработчик Шон Бакстер (Sean Baxter) представил драфт основного документа проекта Safe C++ для продвижения внедрения безопасного кода на C++, включая запрет на использование небезопасных методов работы с памятью, вместо перевода проектов на Rust.

Привет! На связи команда Яндекс Практикума. Этим летом мы обновили курсы «Разработчик С++» и «Разработчик С++ расширенный». В этой заметке кратко расскажем, как именно.

Вышел новый релиз PVS-Studio — 7.32. Оптимизация анализа на C++, новые плагины и функциональность, и ещё много других обновлений! Больше подробностей в этой заметке.

Разработчик Гай Дюпон представил открытый проект мыши (на базе простой мышки HP и контроллера Seeed Studio XIAO RP2040) с игрой в стиле Pong, запущенной внутри прошивки микроконтроллера. Игра отображается на экране ПК при движении колёсиком мыши. Код проекта написан на С и С++ и опубликован на GitHub под лицензией MIT.
Компания Qt Company представила стабильную версию IDE с открытым исходным кодом Qt Creator 14. Она предназначена для проектирования графических пользовательских интерфейсов на фреймворке Qt.

Представлена открытая лёгковесная библиотека gpu.cpp для проведения упрощённых низкоуровневых вычислений на GPU с помощью C++. Исходный код проекта опубликован на GitHub под лицензией Apache License 2.0.

Вышел новый релиз PVS-Studio — 7.31. Доработка пользовательских аннотаций, расширение режима анализа отдельных файлов, новые вебинары и ещё много других новостей! Больше подробностей в этой заметке.

Состоялся релиз третьей мажорной версии легковесной интегрированной среды разработки Red Panda C++ для языков C, C++ и GNU Assembly. Предыдущая стабильная мажорная версия проекта Red Panda C++ 2.1 вышла в октябре 2022 года.