Использование цепей Маркова для автоматического завершения исходного кода программы

Тимофеев Владислав Сергеевич
1. Новосибирский государственный университет
v.timofeev@g.nsu.ru
Материал поступил в редколлегию 24.06.2024
В сфере программирования используются разнообразные инструменты с целью оптимизации процесса разработки. Среди них особое место занимают интегрированные среды разработки (IDE), обеспечивающие широкий спектр сервисов, включая текстовый редактор, отладчик и интеллектуальное завершение кода. Настоящая работа посвящена разработке модели, направленной на предсказание вариантов завершения исходного кода программы. Для улучшения точности модели были использованы комбинации цепей Маркова, основанные на различных методах вычисления текущего контекста программы: линейном и с использованием абстрактного синтаксического дерева (AST). Линейный метод анализа контекста представляет собой анализ токенизированного представления исходного кода, в то время как второй метод использует структуру исходного кода в виде AST. Объединение различных моделей позволяет сохранить больше семантической информации о коде и учитывать при автодополнении индивидуальный стиль написания кода. Разработанная модель демонстрирует высокую точность предсказаний при минимальном объеме вычислительных ресурсов, что делает ее применимой в интегрированных средах разработки.
Выходные данные: В.С. Тимофеев Использование цепей Маркова для автоматического завершения исходного кода программы. Вестник НГУ. Серия: Информационные технологии. 2024 Т.22, №2. C. 57–67. DOI: 10.25205/1818-7900-2024-22-2-57-67