Команда PVS-Studio и наш продукт делают большой вклад в развитие качества программного обеспечения. Причем, помимо явного обнаружения ошибок в закрытых и открытых проектах, происходит косвенный вклад в развитие компиляторов и других инструментов анализа кода. Нам приятно, что мы иногда являемся законодателями мод и мы решили посвятить этому небольшую заметку в нашем блоге.
Читать полностью »
Рубрика «c++» - 53
PVS-Studio — двигатель прогресса
2019-08-20 в 13:26, admin, рубрики: .net core, C#, c++, code analysis, code review, coref, java, microsoft, open source, programming, pvs-studio, static code analysis, Блог компании PVS-Studio, открытый исходный код, статический анализ кодаPVS-Studio: Engine of Progress
2019-08-20 в 13:19, admin, рубрики: .net core, C#, c++, code analysis, code review, coref, java, microsoft, open source, programming, pvs-studio, static code analysis, Блог компании PVS-Studio
A PVS-Studio team and our product make a great contribution to upgrading of software quality. Moreover, in addition to detecting errors in closed and open source projects, there is an indirect contribution to the development of compilers and other tools of code analysis. We are pleased that in some cases we are trendsetters and we decided to dedicate a small note to this in our blog.
Читать полностью »
CMake: тот случай, когда проекту непростительно качество его кода
2019-08-19 в 6:24, admin, рубрики: C, c++, cmake, open source, pvs-studio, static analysis, Блог компании PVS-Studio, системы сборки
CMake — это кроссплатформенная система автоматизации сборки проектов. Эта система намного старше, чем статический анализатор кода PVS-Studio, при этом ещё никто не попробовал применить его к коду и сделать обзор ошибок. Ошибок, оказывается, много. Аудитория CMake огромна. На нём начинаются новые проекты и переносятся старые. Страшно представить, у скольких программистов могла проявиться та или иная ошибка.
Читать полностью »
CMake: the Case when the Project’s Quality is Unforgivable
2019-08-19 в 6:21, admin, рубрики: C, c++, cmake, open source, pvs-studio, static analysis, Блог компании PVS-Studio, системы сборки
CMake is a cross-platform system for automating project builds. This system is much older than the PVS-Studio static code analyzer, but no one has tried to apply the analyzer on its code and review the errors. As it turned out, there are a lot of them. The CMake audience is huge. New projects start on it and old ones are ported. I shudder to think of how many developers could have had any given error.
Читать полностью »
Установка OpenCV + CUDA на Windows
2019-08-17 в 9:31, admin, рубрики: c++, CUDA, gpgpu, opencv, python, windows, машинное обучение, обработка изображений, сборка, установкаВведение
В данной статье речь пойдет о сборке и установке OpenCV 4 из исходных файлов с дополнительными модулями CUDA 10 на ОС Windows.
Я постарался включить сюда все тонкости и нюансы, с которыми можно столкнуться в ходе установки, и про которые не написано в официальном мануале.
Читать полностью »
(Не очень) скрытые издержки общей кодовой базы iOS и Android
2019-08-16 в 10:37, admin, рубрики: android, c++, iOS, java, kotlin, objective-c, swift, разработка мобильных приложений, Разработка под android, разработка под iOS, С++До недавнего времени у Dropbox была техническая стратегия использовать общий код C++ для мобильных приложений iOS и Android. Идея понятна: написать код один раз на C++ вместо его дублирования отдельно на Java и Objective C. Мы приняли эту стратегию ещё в 2013 году, когда группа инженеров мобильной разработки была относительно небольшой и приходилось быстро развивать продукт. Такое решение позволило выдавать большой объём кода как на Android, так и на iOS силами маленькой команды.
Теперь мы полностью отказались от этой стратегии в пользу родных языков каждой платформы (в первую очередь Swift и Kotlin, которые не существовали, когда мы начинали). Решение связано с (не очень) скрытыми издержками на совместное использование кода.
Все проблемы вытекают из главного: оверхед оказался больше, чем просто написать код два раза.
Читать полностью »
Усложнение C++ неизбежно. И не только C++
2019-08-15 в 5:53, admin, рубрики: c++, Программирование, С++Давно хотел написать подобный текст, но все никак не доходили руки. А вот после завершившегося летнего заседания комитета по стандартизации C++ и поднявшегося воя о том, что сложность языка еще больше увеличилась, пришлось таки изыскать время и зафиксировать собственные мысли на этот счет.
Текста будет много, поэтому тех, кому не жаль своего времени, приглашаю заглянуть под кат.
Язык программирования — это технологичный продукт, но не все так просто
Некоторое время назад довелось прочесть интересную книгу «Дилемма инноватора». Там на примерах технологичных продуктов показывается, как возникают новые продукты, которые сперва проигрывают доминирующим сейчас на рынке решениям, а затем кардинальным образом меняют состояние рынка.
Один из самых ярких примеров: цифровая фотография, которая в 1990-х была вообще никакой, но спустя всего 20 лет привела к краху такого монстра XX-го века, как Kodak (который, кстати говоря, первым и сделал прототип цифровой камеры).
ESP32-CAM Video Streaming Server Подключение I2C и SPI дисплеев
2019-08-14 в 16:57, admin, рубрики: c++, esp32, microcontrollers, программирование микроконтроллеровESP-32 CAM модуль с камерой от Diymore
ESP32-CAM Video Streaming Server
Пример использования находится тут.
Предварительно надо установить библиотеки: Esp32 board in Arduino Ide Windows / Esp32 board in Arduino Ide Linux and Mac
Подробные настройки есть в статье.
В моем случае я использовал модуль AI-THINKER поэтому раскомментировал
#define CAMERA_MODEL_AI_THINKER
У меня не заработала функиональность распознования лиц. Коментарий в статье был полезен.
Читать полностью »