Меню
Публикации
2024
2023
2022
2021
2020
2019
2018
2017
2016
2015
2014
2013
2012
2011
2010
2009
2008
2007
2006
2005
2004
2003
2002
2001
Главный редактор

НИКИФОРОВ
Владимир Олегович
д.т.н., профессор
Партнеры
doi: 10.17586/2226-1494-2019-19-6-1079-1085
УДК 004.4’23
АРХИТЕКТУРА ИНТЕГРИРОВАННОЙ СРЕДЫ РАЗРАБОТКИ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ С ПОДДЕРЖКОЙ СТРУКТУРНОГО РЕДАКТИРОВАНИЯ
Читать статью полностью

Язык статьи - русский
Ссылка для цитирования:
Аннотация
Ссылка для цитирования:
Ванясин Н.В., Сидоркина И.Г., Поляков В.И. Архитектура интегрированной среды разработки программного обеспечения с поддержкой структурного редактирования // Научно-технический вестник информационных технологий, механики и оптики. 2019. Т. 19. № 6. С. 1079–1085. doi: 10.17586/2226-1494-2019-19-6-1079-1085
Аннотация
Предмет исследования. Представлены результаты исследования инструментальных средств разработки программного обеспечения. Решена задача создания архитектуры среды разработки программного обеспечения с поддержкой структурного редактирования. Показан процесс проектирования и экспериментальные проверки модифицированной архитектуры интегрированной среды разработки. Метод. На основе анализа существующих интегрированных сред разработки программного обеспечения с поддержкой структурного редактирования выделены их особенности и недостатки. Предложена архитектура среды разработки, позволяющая создать прототип системы для решения таких проблем существующих структурных редакторов как круговая трансляция из текстового представления исходного кода в промежуточное и обратно, недостаточный функционал (по сравнению с классическими средами разработки), сложность разработки новых сред разработки с поддержкой структурного редактирования. Основные результаты. При проектировании архитектуры предложено отказаться от текстового представления исходного кода на всех этапах разработки. Это позволило отказаться от круговой трансляции и уменьшить количество компонентов системы. Такое решение привело к повышению производительности среды разработки. Предложенный прототип среды разработки с поддержкой структурного редактирования позволил экспериментальным образом проверить эффективность модификации архитектуры. Выполнены эксперименты по сравнению скорости компиляции программных проектов и скорости проведения автоматического рефакторинга исходного кода. Практическая значимость. Предложенное решение может быть использовано в организациях, занимающихся промышленной разработкой программного обеспечения, а также создателями новых сред разработки программного обеспечения.
Ключевые слова: структурное редактирование, среда разработки, интегрированные среды разработки, разработка программного обеспече-
ния, синтаксически-ориентированные редакторы, промежуточное представление кода, оптимизация производительности
Благодарности. Работа выполнена при финансовой поддержке РФФИ (проект № 17-07-00700/19).
Список литературы
Благодарности. Работа выполнена при финансовой поддержке РФФИ (проект № 17-07-00700/19).
Список литературы
- Князева М.А., Тимченко В.А. Структурные редакторы программ на языках программирования высокого уровня и генератор моделей структурных программ в Банке знаний о преобразованиях программ // Искусственный интеллект. 2005. № 4. С. 200–208.
- Мучник Т.Г. Языково-настраиваемый структурный редактор со средствами семантического контроля // Программирование. 1990. Т. 16. № 2. С. 10–20.
- Fowler M. Projectional editing. 2008 [Электронный ресурс]. URL: https://martinfowler.com/bliki/ Projectional Editing.html (дата обращения: 23.03.2019).
- Александров С.Ю. Синтаксически-ориентированные редакторы: функциональные возможности и архитектура: Препринт № 3. Новосибирск: ИТМи ВТ АН СССР, 1987. 35 с.
- Voelter M., Siegmund J., Berger T., Kolb B. Towards user-friendly projectional editors // Lecture Notes in Computer Science. 2014. V. 8706. P. 41–61.
- Charles Simonyi, Magnus Christerson, Shane Clifford, «Intentional Software», an OOPSLA 2006 paper [Электронный ресурс]. URL: http://www.intentsoft.com/technology/IS_OOPSLA_2006_paper.pdf (дата обращения: 23.03.2019).
- Reps T., Teitelbaum T. The synthesizer generator // ACM SIGSOFT Software Engineering Notes. 1984. V. 9. N 3. P. 42–48. doi: 10.1145/390010.808247
- Грачев Д.А., Лаптев В.В. SemanticIDE как обучающая среда и веб-сервис // Математические методы в технике и технологиях-ММТТ. 2013. № 9-1. С. 131–135.
- Aho A.V., Lam M.S., Sethi R., Ullman J.D. Compilers: principles, techniques, and tools. 2nd edition. Pearson Addison Wesley, 2007. 1009 p.
- Ванясин Н.В. Семантическое редактирование программного кода в интеллектуальных интегрированных средах разработки приложений // Кибернетика и программирование. 2017. № 1. С. 61–68. doi: 10.7256/2306-4196.2017.1.18881
- Vaniasin N.V., Sidorkina I.G. Semantic source code editing in Integrated Development Environments // Economics, Management, Information and Technology. 2018. V. 5. N 2. P. 48–53.
- Clark T. A general architecture for heterogeneous language engineering and projectional editor support // arXiv preprint. 2015. arXiv:1506.03398.
- Roedy G. Source code in database (Java source code SCID-style browser/editor) [Электронный ресурс]. URL: http://mindprod.com/projects/scid.html (дата обращения: 23.03.2019).
- Уваров А.Н. Инверсия управления и внедрение зависимостей // Символ науки. 2016. № 10-1. C. 28–32.
- Немолочнов О.Ф., Зыков А.Г., Поляков В.И., Сидоров А.В. Структурирование программ и вычислительных процессов на множество линейных и условных вершин // Научно-технический вестник Санкт-петербургского государственного университета информационных технологий, механики и оптики. 2005. Т. 5. № 3. С. 207–212.
- Гришенцев А.Ю., Коробейников А.Г. Улучшение сходимости метода конечных разностей с помощью вычисления промежуточного решения // Научно-технический вестник информационных технологий, механики и оптики. 2012. Т.12. № 3. С. 124–127.
- Gamma E., Helm R., Johnson R., Vlissides J. Design Patterns: Elements of Reusable Object-Oriented Software. AddisonWesley Professional, 1994. 416 p.
- Hempel B., Lubin J., Lu G., Chugh R. DEUCE: a lightweight user interface for structured editing // Proc. of the 40th International Conference on Software Engineering (ICSE 2018). 2018. P. 654–664. doi: 10.1145/3180155.3180165
- Мартин Р. Чистый код: создание, анализ и рефакторинг: Пер. с англ. Издательский дом «Питер», 2019. 464 c. (Библиотека программиста)