Pull to refresh
47
-3
Никита Липилин @Firensis

Разработчик, руководитель, прокрастинатор

Send message

PVS-Studio помогает оптимизировать проекты на Unity Engine

Level of difficultyEasy
Reading time7 min
Views1.7K

Недавно анализатор PVS-Studio начал выдавать предупреждения о возможностях оптимизации кода в проектах под Unity Engine. Какие они, эти предупреждения? Как анализатор понимает, какой код стоит оптимизировать? Почему это сделано именно для Unity? Ответы в заметке.

Читать далее
Total votes 9: ↑9 and ↓0+9
Comments4

Пять забавных странностей в коде Entity Framework Core

Level of difficultyEasy
Reading time7 min
Views4.5K

Разработкой Entity Framework Core занимаются профессионалы, не допускающие ошибок благодаря опыту, ревью и мощной системе тестирования. Впрочем, даже в таком проекте не без приколов. Перед вами статья о странностях, укрывшихся от взгляда разработчиков высшего класса.

Читать далее
Total votes 22: ↑22 and ↓0+22
Comments5

Всегда ли в C# есть упаковка при конкатенации со строкой и интерполяции?

Level of difficultyMedium
Reading time6 min
Views3.9K

Разработчики на C# хорошо знакомы с термином "упаковка". Она может быть явной, а может быть незаметна. Например, к упаковке приводит сложение значимого типа со строкой. Или не приводит. Такая вот "упаковка Шрёдингера". В заметке попробуем разобраться с этой неопределённостью.

Читать далее
Total votes 19: ↑18 and ↓1+17
Comments21

Зачем при изменении сборки менять её версию или как сломать Visual Studio одной командой

Reading time4 min
Views5.5K

При выпуске нового релиза сборки её версию обычно меняют. Это особенно актуально, если разрабатывается библиотека, от которой зависят другие проекты. Но что, если этого не делать? Предлагаю вашему вниманию небольшую историю о проблемах с библиотеками от Microsoft.

Читать далее
Total votes 30: ↑30 and ↓0+30
Comments13

PVS-Studio 7.23: плагин Qt Creator 9 и не только

Level of difficultyEasy
Reading time3 min
Views1.4K

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

Читать далее
Total votes 15: ↑14 and ↓1+13
Comments6

Топ-10 ошибок, найденных в C#-проектах за 2022 год

Reading time10 min
Views12K

За 2022 год разработчики PVS-Studio написали много статей, в которых рассказали об ошибках, найденных в различных Open Source проектах. Пришло время подвести итоги и представить десяток самых интересных срабатываний.

Читать далее
Total votes 26: ↑25 and ↓1+24
Comments5

Планируете взяться за .NET MAUI? Будьте готовы к приключениям с NullReferenceException

Reading time3 min
Views8.3K

.NET Multi-platform App UI – фреймворк, который пишут профессионалы. Тем не менее, код некоторых его функций выглядит так, будто разработчики забыли о последствиях разыменования нулевых ссылок.

Читать далее
Total votes 26: ↑24 and ↓2+22
Comments29

Чем опасны уязвимые зависимости в проекте и как с этим помогает SCA?

Reading time3 min
Views1.7K

Современные приложения почти всегда используют сторонние библиотеки. Если библиотека содержит уязвимость, то уязвимым может оказаться и использующее её приложение. Но как определить наличие таких проблемных зависимостей?

Читать далее
Total votes 4: ↑3 and ↓1+2
Comments2

Эволюция PVS-Studio: анализ потока данных для связанных переменных

Reading time20 min
Views1.7K

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

Читать далее
Total votes 17: ↑16 and ↓1+15
Comments0

Топ-10 ошибок, найденных в C#-проектах за 2021 год

Reading time15 min
Views11K

За 2021 год разработчики PVS-Studio написали ряд статей, в которых разбирали странности, найденные анализатором в Open Source проектах. Год подходит к концу, а значит, пришло время представить традиционный разбор 10 самых интересных ошибок. Приятного просмотра!

Читать далее
Total votes 19: ↑18 and ↓1+17
Comments9

OWASP Top Ten и Software Composition Analysis (SCA)

Reading time10 min
Views2.9K

Категория A9 из OWASP Top Ten 2017 (ставшая A6 в OWASP Top Ten 2021) посвящена использованию компонентов с известными уязвимостями. Для её покрытия в PVS-Studio разработчикам придётся превратить анализатор в полноценное SCA-решение. Как же анализатор кода будет искать уязвимости в используемых компонентах? И что ещё за SCA? Ответы на эти и многие другие вопросы ждут вас в этой заметке.

Читать далее
Total votes 5: ↑5 and ↓0+5
Comments0

OWASP Top Ten and Software Composition Analysis (SCA)

Reading time9 min
Views1.3K

The OWASP Top Ten 2017 category A9 (which became A6 in OWASP Top Ten 2021) is dedicated to using components with known vulnerabilities. To cover this category in PVS-Studio, developers have to turn the analyzer into a full SCA solution. How will the analyzer look for vulnerabilities in the components used? What is SCA? Let's try to find the answers in this article!

Read more
Rating0
Comments0

PHP – компилируемый язык?! PVS-Studio ищет ошибки в PeachPie

Reading time23 min
Views3.9K

PHP широко известен как интерпретируемый язык программирования, использующийся в основном для разработки сайтов. Однако немногие знают, что для PHP есть ещё и компилятор под .NET — PeachPie. Но вот насколько он качественно сделан? Сможет ли статический анализатор найти в этом компиляторе реальные ошибки? Давайте же узнаем!

Читать дальше →
Total votes 12: ↑11 and ↓1+10
Comments7

Is PHP compilable?! PVS-Studio searches for errors in PeachPie

Reading time22 min
Views667

PHP is widely known as an interpreted programming language used mainly for website development. However, few people know that PHP also has a compiler to .NET – PeachPie. But how well is it made? Will the static analyzer be able to find actual bugs in this compiler? Let's find out!

Read more
Total votes 2: ↑2 and ↓0+2
Comments0

Оптимизация .NET приложения: как простые правки позволили ускорить PVS-Studio и уменьшить потребление памяти на 70%

Reading time19 min
Views13K

Проблемы с производительностью, такие как аномально низкая скорость работы и высокое потребление памяти, могут быть обнаружены самыми разными способами. Такие недостатки приложения выявляются тестами, самими разработчиками или тестировщиками, а при менее удачном раскладе – пользователями. Увы, но обнаружение аномалий – лишь первый шаг. Далее проблему необходимо локализовать, ведь в противном случае решить её не получится. Тут возникает вопрос – как найти в большом проекте причины, приводящие к излишнему потреблению памяти и замедлению работы? Есть ли они вообще? Быть может, дело и не в приложении вовсе? Эта статья посвящена истории о том, как разработчики C#-анализатора PVS-Studio столкнулись с подобной проблемой и смогли решить её.

Читать далее
Total votes 39: ↑38 and ↓1+37
Comments56

.NET Application Optimization: Simple Edits Speeded Up PVS-Studio and Reduced Memory Consumption by 70%

Reading time17 min
Views1.1K

We know many ways to detect performance problems, such as extremely low speed and high memory consumption. Usually tests, developers, or testers detect such applications' drawbacks. In the worst case, users find weaknesses and report back. Alas, detecting defects is only the first step. Next, we should localize the problem. Otherwise, we won't solve it. Here comes a question - how to find weak points that lead to excessive memory consumption and slow down in a large project? Are there such at all? Maybe it's not about the application? So now you're reading a story how PVS-Studio C# developers encountered a similar problem and managed to solve it.

Read more
Rating0
Comments0

Свершилось! PVS-Studio поддерживает анализ проектов под .NET 5

Reading time5 min
Views2.3K

10 ноября 2020 года была выпущена новая версия .NET Core, официально названная .NET 5. Обновлённая платформа предоставляет множество различных возможностей. К примеру, она позволяет C#-разработчикам использовать нововведения C# 9: records, relational pattern matching и т. д. К сожалению, есть и минусы – корректно проанализировать такой проект с помощью PVS-Studio нельзя. Ну... Раньше было нельзя :) Ведь теперь эта проблема в прошлом – следующий релиз PVS-Studio 7.13 будет поддерживать анализ проектов, ориентированных на .NET 5!

Читать далее
Total votes 11: ↑9 and ↓2+7
Comments6

Finally! PVS-Studio Supports .NET 5 Projects

Reading time4 min
Views617

On November 10th, 2020, Microsoft released a new version of .NET Core - .NET 5. The updated platform presents many new enhancements. For example, it allows C# developers to use features the new C# 9 offers: records, relational pattern matching, etc. Unfortunately, there was a disadvantage: PVS-Studio could not analyze these projects. However (and here's the good news)... That used to be the case :) Our next release, PVS-Studio 7.13, will support projects that target .NET 5.

Read more
Total votes 4: ↑3 and ↓1+2
Comments0

Что такое yield и как он работает в C#?

Reading time22 min
Views47K

Возможности C# из года в год становятся всё шире. Разные фичи делают жизнь программиста приятнее, но предназначение и особенности некоторых из них могут быть очевидны не всем. Например, старый-добрый yield. Для некоторых разработчиков, особенно начинающих, это самая настоящая магия – непонятная, но интересная. В данной статье будет показано, как же всё-таки работает yield, и что на самом деле скрыто за этим волшебным словом. Приятного чтения!

Читать далее
Total votes 17: ↑14 and ↓3+11
Comments15
1

Information

Rating
Does not participate
Location
Тула, Тульская обл., Россия
Date of birth
Registered
Activity