Как стать автором
Обновить
243.59
PVS-Studio
Статический анализ кода для C, C++, C# и Java
Сначала показывать

Рефакторим легаси при помощи ООП

Уровень сложностиСредний
Время на прочтение15 мин
Количество просмотров4.8K

Спустя годы проекты обрастают тёмными местами, в которые никто не хочет соваться, поскольку их сложно понять и легко сломать. Сегодня мы посмотрим на кейс рефакторинга такого кода с переводом на ООП рельсы при помощи паттернов, причём со стилем (современным).

Читать далее
Всего голосов 6: ↑5 и ↓1+6
Комментарии2

.NET Digest #3

Время на прочтение4 мин
Количество просмотров4.7K

Добро пожаловать на третий выпуск нашего дайджеста, посвящённого новостям и событиям в мире .NET! Команда PVS-Studio рада представить вам подборку самых интересных и полезных материалов. Поехали!

Читать далее
Всего голосов 28: ↑28 и ↓0+32
Комментарии0

Чистый код — дар или проклятие? Акт I. Конфронтация

Уровень сложностиСредний
Время на прочтение24 мин
Количество просмотров7.7K

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

Читать далее
Всего голосов 21: ↑21 и ↓0+30
Комментарии28

Как сделать анализатор кода за два дня

Уровень сложностиСредний
Время на прочтение23 мин
Количество просмотров7.8K

Статический анализ — это очень мощный инструмент, позволяющий следить за качеством кода. Предлагаем вместе попробовать написать простой Lua анализатор на Java, чтобы понять, как устроены статические анализаторы кода внутри.

Читать далее
Всего голосов 24: ↑24 и ↓0+30
Комментарии16

Flax Engine. Знакомство с игровым движком и анализ его исходного кода

Уровень сложностиПростой
Время на прочтение10 мин
Количество просмотров5.1K

"Как будто у Unreal и Unity родился ребёнок" — такое трогательное описание дали этому движку в GameDev-сообществе. Эта фраза не только мило звучит, но и точно передаёт его суть, ведь движок действительно задумывался как нечто среднее между Unity Engine и Unreal Engine.

Читать далее
Всего голосов 16: ↑16 и ↓0+18
Комментарии0

Дайте два! Обновление плагина PVS-Studio для SonarQube

Уровень сложностиПростой
Время на прочтение2 мин
Количество просмотров619

Плагин PVS-Studio для SonarQube работает уже долгое время, однако в последнем обновлении плагин превратился в два плагина. В этой заметке расскажем о том, почему это произошло, что изменилось, и как с этим жить.

Читать далее
Всего голосов 4: ↑4 и ↓0+4
Комментарии0

Даже математики ошибаются

Уровень сложностиСредний
Время на прочтение13 мин
Количество просмотров11K

Мы знаем, что математика — наука точная. Значит ли это, что GeoGebra — программное обеспечение для интерактивного изучения математики — столь же точно? Проанализируем же исходный код проекта с помощью PVS-Studio!

Читать далее
Всего голосов 7: ↑7 и ↓0+8
Комментарии2

Как найти работу для фиксиков: анализируем Godot Engine

Уровень сложностиСредний
Время на прочтение17 мин
Количество просмотров5K

Разработка игр и их прохождение могут быть невероятно увлекательными и затягивающими занятиями, приносящими огромное удовольствие. Но ничто так не портит впечатление от игрового процесса, как коварно спрятавшийся баг. Поэтому сегодня под нашим пристальным вниманием окажется Open Source движок Godot Engine. Давайте проверим, насколько он хорош, и готов ли он подарить нам незабываемые эмоции от создания и прохождения игр.

Читать далее
Всего голосов 16: ↑16 и ↓0+21
Комментарии20

.NET Digest #2

Время на прочтение4 мин
Количество просмотров5.3K

Добро пожаловать на второй выпуск нашего дайджеста, посвящённого новостям и событиям в мире .NET! Первый выпуск вам понравился, так что C# команда PVS-Studio снова собрала для вас самые интересные и полезные материалы. Поехали!

Читать далее
Всего голосов 21: ↑21 и ↓0+27
Комментарии3

Поисковый запрос на баги в Apache Solr

Уровень сложностиСредний
Время на прочтение14 мин
Количество просмотров743

И вновь мы проверяем продукт Apache. На этот раз выбор пал на Solr — платформу поискового сервера с открытым исходным кодом. Благодаря Solr можно эффективно и быстро искать информацию в базах данных и на интернет-ресурсах. При решении такой сложной задачи очень легко допустить разнообразные ошибки, даже несмотря на огромный опыт разработчиков Apache. Именно такие ошибки мы рассмотрим в этой статье.

Читать далее
Всего голосов 10: ↑10 и ↓0+15
Комментарии1

Дебажим баги в дебаггере x64dbg. Без дебаггера

Уровень сложностиСредний
Время на прочтение14 мин
Количество просмотров2.5K

Ни один процесс разработки программы не проходит без отладки. Современные IDE обеспечивают программиста встроенным отладчиком. Однако бывают ситуации, когда использование IDE для отладки избыточно или невозможно, и тогда на помощь приходят автономные отладчики, один из которых — x64dbg.

Сделать шаг с заходом
Всего голосов 5: ↑5 и ↓0+10
Комментарии3

Фиксим баги в вашем AI или разбор ошибок в OpenVINO

Уровень сложностиСредний
Время на прочтение17 мин
Количество просмотров1.1K

Друзья-разработчики, приглашаем вас продолжить захватывающее путешествие по дебрям кода Intel OpenVINO! Вооружившись статическим анализатором аки детективы, мы разоблачим наиболее коварные, интересные ошибки и опечатки, а также их скрытые тайны, оставшиеся за рамками первой части статьи.

Читать далее
Всего голосов 7: ↑7 и ↓0+14
Комментарии2

Как научить кота программировать. Необычные подходы к изучению нового

Уровень сложностиПростой
Время на прочтение8 мин
Количество просмотров5.7K

Твой хомячок давно забыл свои молодые деньки, когда писал код на C#? Он хочет вернуться к программированию, но время летело так быстро, что уже вышел C# 12? Кошечка не знает, как организовать мероприятие, а на носу новогодний корпоратив на 50 человек? Так ещё эти подопечные насмотрелись тиктоков, и теперь их внимание фокусируется не более чем на минутку?

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

Готовы прочесть? Тогда берём кота за ушки (или за лапки, если он согласится) и вперёд!

Читать далее
Всего голосов 13: ↑12 и ↓1+14
Комментарии5

Неожиданности в авторизации. Что скрывает Keycloak?

Уровень сложностиСредний
Время на прочтение13 мин
Количество просмотров11K

Авторизация и регистрация пользователей — важная часть приложения как для юзеров, так и для безопасности. Но какие неожиданности содержит исходный код популярного Open Source решения для авторизации, и как они могут повлиять на работу приложения?

Читать далее
Всего голосов 15: ↑14 и ↓1+19
Комментарии3

Насекомое 13 лет сидит в вашем компиляторе и не собирается оттуда вылезать

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров9.8K

Представим, что у вас идеальный проект. Таски пилятся, компилятор компилирует, статические анализаторы анализируют, релизы релизятся. В какой‑то момент вы принимаете волевое решение открыть древний файл, в который никто не залезал уже много лет, и видите, что он в кодировке Windows-1251. При том, что весь проект уже давно перешёл на UTF-8. «Непорядок!» — думаете вы, и лёгким движением руки меняете кодировку. На следующий день на вашем тестовом сервере случается локальный апокалипсис. Думаете, такого не может быть? Тогда предлагаю это обсудить.

Читать далее
Всего голосов 33: ↑32 и ↓1+40
Комментарии70

.NET Digest #1

Время на прочтение4 мин
Количество просмотров7.8K

Добро пожаловать на первый выпуск нашего дайджеста, посвященного новостям и событиям в мире .NET! Команда C# разработчиков из PVS-Studio собрала для вас самые интересные и полезные материалы, чтобы держать вас в курсе последних тенденций и разработок. Поехали!

Читать далее
Всего голосов 31: ↑31 и ↓0+35
Комментарии11

Тотемные утки и шаманские бубны: есть ли у разработчиков свои ритуалы и приметы?

Уровень сложностиПростой
Время на прочтение9 мин
Количество просмотров3.3K

Баги, баги, баги... Как же их много... Немудрено и фобию заиметь. И ведь никогда не знаешь, чем обернётся очередная ошибка в коде. Страх перед неизвестным, желание держать всё под контролем — закономерные спутники магического мышления. Но подождите, какие ещё магические ритуалы в 21 веке? Тем более у программистов...

Читать далее
Всего голосов 19: ↑18 и ↓1+20
Комментарии14

Подборка докладов по С# 2023-2024

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров7.5K

Недавно мы публиковали подборку докладов по C++, но не будем же мы обделять и C# разработчиков. Поэтому предлагаем вашему вниманию интересные доклады из мира .NET и C#.

Вперёд к новым знаниям!
Всего голосов 10: ↑10 и ↓0+11
Комментарии2

12 мгновений опечаток и копипаста, или почему сбоит AI: проверяем код OpenVINO

Уровень сложностиСредний
Время на прочтение19 мин
Количество просмотров1.3K

"OpenVINO — набор инструментов, позволяющий проводить глубокое обучение AI для взаимодействия с реальным миром теперь ещё эффективнее!" — эта новость для нас прозвучала как призыв к действию. Код проекта проверен, ошибки найдены, и первая часть статьи готова к прочтению. Будет интересно!

Читать далее
Всего голосов 10: ↑10 и ↓0+12
Комментарии2

Побитовые проверки в Java и почему они так неоднозначны

Уровень сложностиСредний
Время на прочтение8 мин
Количество просмотров4.9K

Операторы "&" и "|" не вызывают вопросов, когда применяются в подходящих ситуациях. Но знаете ли вы о всех последствиях использования побитовых операторов вместо логических в Java? В этой статье мы рассмотрим как плюсы производительности такого подхода, так и минусы его читабельности.

Читать далее
Всего голосов 15: ↑15 и ↓0+18
Комментарии8
1
23 ...

Информация

Сайт
pvs-studio.ru
Дата регистрации
Дата основания
2008
Численность
31–50 человек
Местоположение
Россия