Details
Title | Интеграция статического анализатора Infer в IntelliJ IDEA: выпускная квалификационная работа магистра: 09.04.01 - Информатика и вычислительная техника ; 09.04.01_15 - Технологии проектирования системного и прикладного программного обеспечения |
---|---|
Creators | Олейник Максим Александрович |
Scientific adviser | Ицыксон Владимир Михайлович |
Other creators | Новопашенный Андрей Гелиевич |
Organization | Санкт-Петербургский политехнический университет Петра Великого. Институт компьютерных наук и технологий |
Imprint | Санкт-Петербург, 2019 |
Collection | Выпускные квалификационные работы ; Общая коллекция |
Subjects | Программирования языки ; Интернет ; Джава (JAVA) ; инкрементальный анализ ; статический анализ кода ; facebook infer ; intellij idea |
UDC | 004.438(043.3) ; 004.738.5(043.3) |
Document type | Master graduation qualification work |
File type | |
Language | Russian |
Level of education | Master |
Speciality code (FGOS) | 09.04.01 |
Speciality group (FGOS) | 090000 - Информатика и вычислительная техника |
Links | Отзыв руководителя ; Рецензия ; Отчет о проверке на объем и корректность внешних заимствований |
DOI | 10.18720/SPBPU/3/2019/vr/vr19-721 |
Rights | Доступ по паролю из сети Интернет (чтение, печать, копирование) |
Record key | ru\spstu\vkr\2463 |
Record create date | 9/26/2019 |
Allowed Actions
–
Action 'Read' will be available if you login or access site from another network
Action 'Download' will be available if you login or access site from another network
Group | Anonymous |
---|---|
Network | Internet |
Магистерская работа рассматривает интеграцию статического анализатора Facebook Infer в среду разработки IntelliJ IDEA. В ходе выполнения работы был разработан алгоритм инкрементального статического анализа Java проектов при помощи Infer и создан плагин для IntelliJ IDEA, который интегрирует анализатор и расширяет способы взаимодействия с ним такими функциями, как инкрементальный анализ, проверка при сохранении изменённых файлов, отображение ошибок в отчёте и редакторе текста, быстрая навигация к местам ошибок.
In this work we develop an integration between Facebook Infer static analyzer and IntelliJ IDEA IDE. To implement that, we have created an algorithm for incremental analysis of Java projects, based on Infer, allowing for better interoperation with the IDE. We have also implemented an IDEA plugin, based on the incremental analysis, which adds Infer support together with such functions as on-save analysis, IDE-based error reporting, quick navigation, etc.
Network | User group | Action |
---|---|---|
ILC SPbPU Local Network | All |
|
Internet | Authorized users SPbPU |
|
Internet | Anonymous |
|
- ВВЕДЕНИЕ
- 1. Анализ предметной области и обзор технологий
- 1.1. Проблема ошибок в программном коде
- 1.2. Статический анализ кода
- 1.2.1. Инкрементальный статический анализ кода
- 1.3. Статические анализаторы языка Java
- 1.4. Статический анализатор Infer
- 1.4.1. Принцип работы Infer
- 1.5. Среда разработки IntelliJ IDEA
- 1.5.1. IntelliJ Platform
- 1.6. Итоги раздела
- 2. Постановка задачи
- 2.1. Формулирование требований к разрабатываемому продукту
- 2.2. Решаемые задачи
- 2.3. Итоги раздела
- 3. Разработка IntelliJ IDEA плагина для интеграции Infer
- 3.1. Разработка алгоритма инкрементального анализа при помощи Infer
- 3.1.1. Захват данных
- 3.1.2. Анализ
- 3.1.3. Алгоритм инкрементального анализа
- 3.2. Разработка IntelliJ IDEA плагина для интеграции Infer
- 3.2.1. Общая структура плагина
- 3.2.2. Получение аргументов компилятора
- 3.2.3. Работа с анализатором Infer
- 3.2.4. Работа с отчётом
- 3.2.5. Режимы проверок
- 3.2.6. Отображение ошибок
- 3.2.7. Конфигурация
- 3.2.8. Получение исполняемых файлов Infer
- 3.3. Итоги раздела
- 3.1. Разработка алгоритма инкрементального анализа при помощи Infer
- 4. Тестирование
- 4.1. Конфигурация тестовой платформы
- 4.2. Исследование характеристик плагина
- 4.3. Результаты тестирования
- 4.4. Итоги раздела
- ЗАКЛЮЧЕНИЕ
- СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ
- ПРИЛОЖЕНИЕ. ЛИСТИНГИ
Access count: 55
Last 30 days: 0