Suche

С
 
0
 
Автор: Илья Иванов


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




Если статический анализатор умеет вычислить, чему равно выражение, это позволяет осуществлять более глубокий анализ кода и выявлять больше ошибок. Речь конечно идёт не только о точных значениях выражений, таких как 1+2, но и о вычислении диапазона значений, которые может принимать переменная в определённом месте программы. В анализаторе PVS-Studio мы называем алгоритмы, отвечающие за вычисление диапазонов - механизмом виртуальных значений. Такой механизм есть как в ядре анализатора C/C++ кода, так и в ядре C#-анализатора. В этой статье мы рассмотрим механизм виртуальных значений на примере C#-анализатора.

В своём анализаторе PVS-Studio для поиска ошибок в C# проектах мы используем Roslyn для получения всей необходимой информации об исходном коде....

Weiterlesen
С
 
0
 
Автор: Святослав Размыслов




Логическое выражение в программировании - конструкция языка программирования, результатом вычисления которой является "истина" или "ложь". Во многих книгах по программированию, предназначенных для изучения языка "с нуля", приводятся возможные операции над логическими выражениями, с которыми сталкивался каждый начинающий разработчик. В этой статье я не буду рассказывать, что оператор 'И' приоритетнее оператора 'ИЛИ'. Я расскажу о распространённых ошибках в простых условных выражениях, состоящих всего из трёх операторов, и покажу, как можно проверить свой код с помощью построения таблиц истинности. Описанные ошибки делают разработчики таких известных проектов как FreeBSD, Microsoft ChakraCore, Mozilla Thunderbird, LibreOffice и многих других.


Введение

Я занимаюсь разработкой статического анализатора кода для языков C/C++/C# - PVS-Studio. В моей работе приходится много сталкиваться с открытым и закрытым кодом разных проектов. Часто результатом такой работы являются статьи о проверке open source проектов, содержащие описание...

Weiterlesen
ava  CoderCPP | 09:46, 29.04.2016 | Aufrufe: 277 programming с++ clang ошибки pvs-studio
С
 
0
 
Автор: Виталий Алферов

Один из вечных вопросов, с которыми мы встречаемся, звучит так - "Вы проверяли PVS-Studio с помощью PVS-Studio? Где статья о результатах проверки?". Да, мы регулярно делаем это, поэтому мы никак не могли написать статью об ошибках, которые нашли сами в себе. Ошибки исправляются разработчиками ещё на этапе написания кода, и мы постоянно забываем в этот момент их выписать. Но читателям в этот раз повезло. Из-за недосмотра C# код плагина для Visual Studio не был добавлен в ежедневные ночные проверки, которые мы проводим. И, соответственно, в отличие от ядра анализатора, ошибки в нем не замечались на протяжении всего развития C# PVS-Studio. Как говорится, нет худа без добра, и благодаря этому вы и читаете данную статью.





Чуть подробнее о тестировании PVS-Studio

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

Разрабатывая PVS-Studio, мы используем семь методик тестирования:

Статический...

Weiterlesen
С
 
+1
 
Автор: Святослав Размыслов

Виртуальные машины - важный инструмент в арсенале разработчика программного обеспечения. Мой интерес к коду VirtualBox вызван личным использованием этого продукта для проверки открытых проектов, а также для других разных задач, связанных с использованием нескольких операционных систем. Первая проверка этого проекта состоялась в 2014 году, тогда описание около 50 ошибок едва уместилось в двух статьях. C выходом Windows 10 и VirtualBox 5.0.XX, на мой взгляд, стабильность работы программы заметно ухудшилась. Поэтому я решил проверить проект ещё раз.





Введение

VirtualBox (Oracle VM VirtualBox) - программное обеспечение для операционной системы, позволяющее представить виртуальный набор ресурсов в определённой среде. Поддерживается следующими операционными системами: Microsoft Windows, FreeBSD, Solaris/OpenSolaris, Linux, Mac OS X, DOS, ReactOS и другими.

С первыми статьями о VirtualBox можно ознакомиться по ссылкам:

Проверяем Oracle VM VirtualBox. Часть 1Проверяем Oracle VM VirtualBox. Часть 2

Они содержат более 50 опасных мест, которые были найдены с помощью PVS-Studio 5.18. В новом отчёте анализатора я не встретил таких...

Weiterlesen
С
 
+2
 
Обычно советы стартаперам касаются того, как добиться успеха. Но иногда нужно помнить некоторые правила о том, как избежать неудачи.

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

Часть из них настолько токсичны, что могут стать на пути к достижению истинного успеха.

1. Фокусировка сразу на большом количестве задач («За двумя зайцами»).

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

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

2. Переизбыток информации

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

Weiterlesen
ava  Андрей Калинин | 22:18, 22.04.2013 | Aufrufe: 337 Стартап ошибки error
Filter nach Art des Contents
(0)
(0)
(0)
(0)
(0)
(0)
advanced
Absenden