Друзья, продолжаем разбирать интересные термины из мира программирования. На очереди термин – SSO (Small String Optimization).
Подробнее об этом термине вы можете почитать здесь - https://pvs-studio.ru/ru/blog/terms/6658/
Подробнее об этом термине вы можете почитать здесь - https://pvs-studio.ru/ru/blog/terms/6658/
Вышел новый релиз PVS-Studio — 7.30!
В карточках кратко об обновлениях. Если хотите узнать больше, то переходите по ссылке - https://pvs-studio.ru/ru/blog/posts/1116/
В карточках кратко об обновлениях. Если хотите узнать больше, то переходите по ссылке - https://pvs-studio.ru/ru/blog/posts/1116/
Проверка игрового движка qdEngine, часть вторая: упрощение C++ кода
В этой статье мы рассмотрим, как статический анализатор PVS-Studio воодушевляет заняться рефакторингом кода. Ведь чем короче, проще и понятнее код, тем меньше в нём ошибок.
Переходите по ссылке - https://pvs-studio.ru/ru/blog/posts/cpp/1121/
В этой статье мы рассмотрим, как статический анализатор PVS-Studio воодушевляет заняться рефакторингом кода. Ведь чем короче, проще и понятнее код, тем меньше в нём ошибок.
Переходите по ссылке - https://pvs-studio.ru/ru/blog/posts/cpp/1121/
Лучше один раз увидеть, чем сто раз услышать 😉
Это можно сказать и про статический анализатор. О нём вы можете услышать из уст своих знакомых или коллег, но гораздо эффективнее увидеть и послушать лекцию SQM 23/24: Static Analysis.
В этой лекции подробно разбирается понятие статического анализатора, принципы его работы. Также освещаются ошибки, которые статические анализаторы помогают увидеть и многое другое.
Посмотреть лекцию можно по ссылке - https://www.youtube.com/watch?v=QK2XQvYoEpQ
Это можно сказать и про статический анализатор. О нём вы можете услышать из уст своих знакомых или коллег, но гораздо эффективнее увидеть и послушать лекцию SQM 23/24: Static Analysis.
В этой лекции подробно разбирается понятие статического анализатора, принципы его работы. Также освещаются ошибки, которые статические анализаторы помогают увидеть и многое другое.
Посмотреть лекцию можно по ссылке - https://www.youtube.com/watch?v=QK2XQvYoEpQ
YouTube
SQM 23/24: Static Analysis [software quality crash course] [eng sub]
A lecture for BSc students in HSE University.The slides are here: https://github.com/yegor256/sqm (in LaTeX and PDF)Blog: https://www.yegor256.comBooks: http...
PVS-Studio rus
#Задача_PVS #programming #cpp
Ошибка здесь:
.... keysa[2] < keysb[2] ? ....
.... keysb[2] > keysa[2] ? ....
Эти условия идентичны. Поменяли местами массивы и заменили < на >. В итоге получилось то же самое.
.... keysa[2] < keysb[2] ? ....
.... keysb[2] > keysa[2] ? ....
Эти условия идентичны. Поменяли местами массивы и заменили < на >. В итоге получилось то же самое.
Друзья, на нашем YouTube канале вышло новое видео!
В нем мы обсуждаем антипаттерны для С++ программиста и разбираем, действительно ли:
1. const – лишняя сущность
2. Везде нужен некий константный экземпляр класса?
3. Чем короче имя переменной, тем лучше
Приглашаем посмотреть это короткое, но очень информативное видео. Будем рады вашим комментариям и реакциям!
https://www.youtube.com/watch?v=Uc1dhqCuR6k
В нем мы обсуждаем антипаттерны для С++ программиста и разбираем, действительно ли:
1. const – лишняя сущность
2. Везде нужен некий константный экземпляр класса?
3. Чем короче имя переменной, тем лучше
Приглашаем посмотреть это короткое, но очень информативное видео. Будем рады вашим комментариям и реакциям!
https://www.youtube.com/watch?v=Uc1dhqCuR6k
YouTube
Антипаттерны для С++ программиста
Если вы хотите создавать эффективные, надежные и хорошо структурированные программы на языке C++, то знание ошибок и неэффективных подходов поможет вам в это...
PVS-Studio rus
#Задача_PVS #programming #java
Ответ на задачу: В переменную nameString сохраняется результат выражения ((QName) name).localName(), однако далее в обоих ветвлениях if...else значение nameString перезаписывается прежде, чем используется.
Спустя 11 лет мы снова проверяем этот проект. Были недоработки в предыдущей проверке, но настало время исправить это…
Мы проверяем ReactOS.
Переходите по ссылке и узнайте, что же мы там нашли 😏
Мы проверяем ReactOS.
Переходите по ссылке и узнайте, что же мы там нашли 😏
PVS-Studio
11 мгновений ReactOS: user mode становится лучше?
ReactOS — это проект, где победу над регрессией, появление новой фичи или её рабочего прототипа празднуют так громко, что FOSS-сообществу приходится отвлекаться от переписывания всего на Rust и...
PVS-Studio rus
#Задача_PVS #programming #csharp
Ответ на задачу: random.Next возвращает случайное целое число в заданном диапазоне. Диапазон задаётся с помощью аргументов: первый аргумент — это левая граница диапазона, а второй аргумент — правая. Однако у этого метода есть нюанс, который упустил разработчик: если левая граница входит в заданный диапазон, то правая граница — нет. Вызов random.Next(0, 1) может вернуть только одно значение — 0.
Чтобы этот код работал, как ожидалось, нужно просто увеличить правую границу до 2:
cloudSystem!.AddCloud(random.Next(0, 2) == 1 ? ....);
Чтобы этот код работал, как ожидалось, нужно просто увеличить правую границу до 2:
cloudSystem!.AddCloud(random.Next(0, 2) == 1 ? ....);
Вы же помните, что анализатор PVS-Studio проверяет проекты на движках Unity и Unreal Engine? Если не помните, то заглядывайте к нам в блог, там есть статьи про проверку проектов.
А если вы хотите чуть больше узнать о том, как PVS-Studio проводит анализ, то переходите по этим ссылкам в документацию - https://pvs-studio.ru/ru/docs/manual/6607/ и https://pvs-studio.ru/ru/docs/manual/0043/
По специальному промокоду вы можете бесплатно в течение 30 дней попробовать PVS-Studio и убедиться в эффективности анализатора – https://pvs-studio.ru/engine_tg
А если вы хотите чуть больше узнать о том, как PVS-Studio проводит анализ, то переходите по этим ссылкам в документацию - https://pvs-studio.ru/ru/docs/manual/6607/ и https://pvs-studio.ru/ru/docs/manual/0043/
По специальному промокоду вы можете бесплатно в течение 30 дней попробовать PVS-Studio и убедиться в эффективности анализатора – https://pvs-studio.ru/engine_tg
Проверка игрового движка qdEngine, часть третья: дополнительная десятка багов
В первой статье про qdEngine было рассмотрено 10 ошибок, выбранных плагином PVS-Studio. Однако есть ещё 10 багов, заслуживающих внимания. Как говорится, лучше учиться на чужих ошибках. Заодно они хорошо демонстрируют возможности PVS-Studio в выявлении разнообразнейших ошибочных паттернов.
Переходите по ссылке - https://pvs-studio.ru/ru/blog/posts/cpp/1123/
В первой статье про qdEngine было рассмотрено 10 ошибок, выбранных плагином PVS-Studio. Однако есть ещё 10 багов, заслуживающих внимания. Как говорится, лучше учиться на чужих ошибках. Заодно они хорошо демонстрируют возможности PVS-Studio в выявлении разнообразнейших ошибочных паттернов.
Переходите по ссылке - https://pvs-studio.ru/ru/blog/posts/cpp/1123/