#%D1%81%D1%82%D0%B0%D1%82%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B8%D0%B9_%D0%B0%D0%BD%D0%B0%D0%BB%D0%B8%D0%B7

2025-10-14

[Перевод] Подробно о неопределённом поведении в С и C++

При работе с C или C++ необходимо в какой-то степени разбираться в неопределённом поведении (UB) : что это такое, каковы его эффекты, и как о него не споткнуться. Для простоты картины я буду в этой статье рассказывать только о C, но всё изложенное здесь также применимо и к C++, если явно не указано иное.

habr.com/ru/articles/956522/?u

#компиляторы #неопределённое_поведение #C #встраиваемые_системы #статический_анализ #c++

2025-10-14

[Перевод] Подробно о неопределённом поведении в С и C++

При работе с C или C++ необходимо в какой-то степени разбираться в неопределённом поведении (UB) : что это такое, каковы его эффекты, и как о него не споткнуться. Для простоты картины я буду в этой статье рассказывать только о C, но всё изложенное здесь также применимо и к C++, если явно не указано иное.

habr.com/ru/articles/956522/

#компиляторы #неопределённое_поведение #C #встраиваемые_системы #статический_анализ #c++

2025-10-14

Подножка для AI в виде UTF-8

Думаю, вам начинают надоедать тексты про вайб-кодинг. Но не волнуйтесь, мой интерес не в том, чтобы рассказывать о новых невероятных достижениях, меняющих мир, и бла-бла-бла... Интереснее поискать места, в которых начинается сбой при генерации кода. Это позволит адаптировать работу статических анализаторов для новых задач контроля кода, который создаётся с помощью таких систем.

habr.com/ru/companies/pvs-stud

#utf8 #ai #vibecoding #vibecoding #pvsstudio #статический_анализ #статический_анализ_кода #c++ #c++17 #информационная_безопасность

2025-09-26

Как часто вы думаете о Римской империи… (cтатическом анализе кода)

Привет! Нет, вы не ошиблись — это действительно историческая статья. Но не о Риме, а о статическом анализе кода. Хотя... чем он хуже? У него тоже есть свои императоры-родоначальники, войны с багами и даже падения (пожалуйста, не запускайте анализ на некомпилируемом коде). Я долго не понимал, почему «Размышление о Римской империи» стали одним из самых популярных мемов прошлого года, пока сам не начал ловить себя на навязчивых мыслях о статическом анализе. Разобравшись в его истории, я решил поделиться с вами этим исследованием. Меня зовут Владислав Столяров, я руководитель команды анализа безопасности продуктов в

habr.com/ru/companies/ncloudte

#статический_анализ #мойофис #информационная_безопасность #история #история_создания #история_it #научнопопулярное

2025-09-26

Как часто вы думаете о Римской империи… (cтатическом анализе кода)

Привет! Нет, вы не ошиблись — это действительно историческая статья. Но не о Риме, а о статическом анализе кода. Хотя... чем он хуже? У него тоже есть свои императоры-родоначальники, войны с багами и даже падения (пожалуйста, не запускайте анализ на некомпилируемом коде). Я долго не понимал, почему «Размышление о Римской империи» стали одним из самых популярных мемов прошлого года, пока сам не начал ловить себя на навязчивых мыслях о статическом анализе. Разобравшись в его истории, я решил поделиться с вами этим исследованием. Меня зовут Владислав Столяров, я руководитель команды анализа безопасности продуктов в мультипродуктовой экосистеме МойОфис . Кстати, идея статического анализа напрямую связана с компиляторами (разбор кода, как никак). Поэтому уместно вспомнить, что недавно мы открыли исходный код собственного компилятора tsnative , позволяющего использовать в одном приложении сразу два языка — TypeScript и C++. Скачать и поисследовать можно по ссылке (лицензия Apache 2.0). А теперь вернёмся к истории статического анализа. Пойдём по порядку и и попробуем восстановить хронологию его становления...

habr.com/ru/companies/ncloudte

#статический_анализ #мойофис #информационная_безопасность #история #история_создания #история_it #научнопопулярное

2025-09-15

Как получить и использовать бесплатную лицензию PVS-Studio на практике. Часть 1: подготовка и начало работы

Многие разработчики слышали о статическом анализаторе PVS-Studio, но не все знают, что анализатор можно использовать бесплатно на постоянной основе. В этой статье мы разберём, какие существуют варианты бесплатного лицензирования, для кого они подходят и как начать пользоваться инструментом.

habr.com/ru/companies/pvs-stud

#статический_анализ #sast #гост_712072024 #pvsstudio #бесплатная_лицензия

2025-09-12

Баги носят данные. Проверка Apache NiFi

Сбор, обработка и перемещение данных — ключевые процессы в IT. Но что, если они нарушатся из-за коварных багов в коде? Рассказываем об ошибках, найденных статическим анализатором в проекте Apache NiFi.

habr.com/ru/companies/pvs-stud

#apache #apache_nifi #nifi #pvsstudio #статический_анализ #static_analysis #sast #open_source #потенциальная_уязвимость #баги

2025-09-08

Статический анализ в open source проектах с помощью PVS-Studio

Хотите, чтобы ваш open source проект был чище и безопаснее? Рассказываем, как использовать PVS-Studio для регулярного анализа кода, внедрить его в CI и находить баги до их попадания в релиз. И да, лицензия для открытых проектов у нас бесплатная.

habr.com/ru/companies/pvs-stud

#open_soure #pvsstudio #статический_анализ #открытые_проекты #github_actions #github #sast #pull_request #fork

2025-09-02

[Перевод] Как ИИ помогает разгрести легаси и ускорить модернизацию

Модернизация легаси-систем редко упирается в «переписать код». Настоящая боль — это реконструкция архитектурных идей, которые давно утонули в слоях костылей и концептуального дрейфа. Когда бизнес уже ушёл вперёд, а софт застрял в прошлом, любое изменение превращается в риск подорвать критичный функционал. В статье разбираем, как ИИ может взять на себя часть этой работы: от трассировки кода и визуализации связей до восстановления бизнес-требований. Речь не про генерацию рутинных кусков кода, а про то, как большие языковые модели помогают справляться с фундаментальной сложностью и делают проекты модернизации менее хаотичными и более предсказуемыми.

habr.com/ru/companies/otus/art

#бизнестребования #модернизация #управление_проектами #статический_анализ #трассировка_кода #LLM

2025-08-29

Что делать, если ваш слон думает, что он баг?

Мы окунулись в веб-разработку и нашли там необычное животное. Это был слон с повадками бага. Мы изучили код проекта PHP и поняли, в чём дело. Давайте вместе посмотрим на необычные случаи, которые могут привести к неожиданным результатам.

habr.com/ru/companies/pvs-stud

#программирование #php #c #c++ #статический_анализ #static_analysis #ошибки_в_программе #memory_allocation #undefined_behavior #неопределённое_поведение

2025-08-17

MemorySanitizer (MSAN), когда он нужен и как внедрять

По разным оценкам, до 10% уязвимостей в коде на C и C++ являются следствием использования неинициализированной памяти (источники: 1 , 2 ). Задача MemorySanitizer (далее, MSAN) - выявлять использование неинициализированной памяти в коде, то есть мусора, например в блоке кода типа if (uninit_var) {...} . Кроме уязвимостей, неинициализированная память даёт о себе знать при портировании приложения на другую платформу, смене компилятора (или поднятии версии используемого), изменении уровня оптимизации или изменении кода таким образом, что то, что раньше "случайно" инициализировалось нулями, стало инициализироваться мусором. MSAN не является статическим анализатором, то есть для его работы требуется выполнение кода (нужны тесты/fuzzing/реальная нагрузка). Прежде чем переходить к самому MSAN, сначала разберемся почему недостаточно (или достаточно?) статического анализа, ведь даже компиляторы умеют предупреждать об использовании неинициализированных данных.

habr.com/ru/articles/937934/

#msan #работа_с_памятью #sanitizers #статический_анализ #aiagent

2025-08-11

Пользовательские аннотации PVS-Studio теперь и в Java

Начиная с версии PVS-Studio 7.38, Java анализатор вслед за двумя братьями C# и C++ поддерживает пользовательские аннотации в формате JSON. Зачем они нужны и что с ними можно делать, рассмотрим в этой статье.

habr.com/ru/companies/pvs-stud

#static_analysis #java #pvsstudio #sast #статический_анализ #информационная_безопасность #гост_569392024 #гост_569392016 #рбпо #брпо

2025-08-08

Меньше багов — больше FPS: как статический анализ помогает проектам на Unreal Engine

Всё больше проектов появляется на Unreal Engine — от великого "Ведьмака" до не менее великой "The Day Before". И чем больше проект, тем выше цена одной незамеченной ошибки. Когда число строк кода переваливает за несколько тысяч, даже самый внимательный разработчик может не заметить неочевидный баг. И тут на помощь приходит он — PVS Studio, который помогает снизить риск попадания багов в ваши UE-проекты.

habr.com/ru/companies/pvs-stud

#игры #gamedev #unreal_engine #c++ #статический_анализ #разработка_игр

2025-08-06

Безболезненное внедрение статического анализа и победа над ложными срабатываниями

Поговорим о том, как механизм baseline может упростить внедрение статического анализатора в проект, а также о том, как бороться с ложноположительными срабатываниями.

habr.com/ru/companies/pvs-stud

#baseline #подавление_срабатываний #pvsstudio #статический_анализ #ложные_срабатывания #интеграция_статического_анализа #static_analysis #devops #false_positive

2025-07-30

На защите GameDev'a: статический анализ и Unity

Геймдев на пике развития, но создаётся ощущение, что игры не становятся лучше. Проблемы с производительностью, баги, вылеты — лишь вершина айсберга. Самый эффективный способ борьбы — выявлять проблемы ещё до их появления, прямо в коде на этапе разработки, не дожидаясь тестирования. В статье поговорим о том, как именно статический анализ может помочь с этим.

habr.com/ru/companies/pvs-stud

#pvsstudio #unity #c# #gamedev #игры #разработка_игр #статический_анализ

2025-07-29

Ошибки Java по ГОСТу: обзор и примеры

Ошибки в Java по ГОСТу? Да, в этой статье мы вам расскажем, что это за ГОСТ, какие категории ошибок в нём существуют, какие из них относятся к Java, и даже покажем примеры из реальных проектов.

habr.com/ru/companies/pvs-stud

#гост_712072024 #java #программирование #pvsstudio #статический_анализ #статический_анализ_кода #гост #open_source #гост_р_56939 #терминология

2025-07-28

Окно в терминальной стадии

Что нужно для взаимодействия с операционной системой исключительно через клавиатуру? Это вопрос, на который каждый разработчик даст свой ответ, и как на него ответили Microsoft, выпустив Windows Terminal?

habr.com/ru/companies/pvs-stud

#windows_terminal #cpp #pvsstudio #c# #windows_11 #статический_анализ #совершенный_код

2025-07-21

Статический анализ Pull Request'ов — ещё один шаг к регулярности

Хотите, чтобы статический анализ работал не только на ваших локальных машинах, но и прямо в Pull Request'ах? Чтобы баги ловились до попадания в главную ветку, а не после? В этой статье покажем, как это сделать на конкретном примере пайплайна в GitHub Actions.

habr.com/ru/companies/pvs-stud

#статический_анализ #DevOps #Pull_Request #регулярный_статический_анализ #cicd #девопс #пулл_реквест #static_analysis #pvsstudio

2025-07-07

Путешествие по Avalonia

В эпоху монолитных UI-фреймворков существовала легенда о земле, где один код правил всеми платформами. Сегодня мы ступаем на берега этого забытого материка зовущегося Avalonia. Материк Avalonia разделен на шесть регионов: королевство Windows, вольные территории Linux, горные цитадели macOS, мобильные княжества Android, побережные владения iOS, туманный архипелаг WebAssembly. Вооружимся компасом статического анализа и будем вести дневник наблюдений.

habr.com/ru/companies/pvs-stud

#статический_анализ #pvsstudio #c# #avalonia

2025-06-05

Как NASA ошиблись в исходном коде планеты

Баги в коде — явление нередкое, но сегодня мы исследуем не просто ошибки, а настоящие космические баги! Что скрывает проект, созданный в недрах NASA? Готовьте свои шапочки из фольги! Поехали!

habr.com/ru/companies/pvs-stud

#статический_анализ #pvsstudio #java #nasa #open_source #static_analysis #чистый_код #совершенный_код

Client Info

Server: https://mastodon.social
Version: 2025.07
Repository: https://github.com/cyevgeniy/lmst