TY - JOUR TI - Инструментальные средства разработки и сопровождения программного обеспечения на основе генерации кода T2 - Бизнес-информатика IS - Бизнес-информатика KW - языко-ориентированное программирование KW - программный компонент KW - библиотека программных компонентов KW - генерация кода AB - Александров Александр Евгеньевич - доктор технических наук, профессор кафедры персональных компьютеров и сетей, факультет информатики, Московский государственный университет приборостроения и информатики (МГУПИ).Адрес: 107996, Москва, ул. Стромынка, 20.  E-mail: femsystem@yandex.ruШильманов Владимир Петрович - аспирант кафедры персональных компьютеров и сетей, факультет информатики, Московский государственный университет приборостроения и информатики (МГУПИ).Адрес: 107996, Москва, ул. Стромынка, 20.  E-mail: femsystem@yandex.ruВ индустрии программирования наметилась устойчивая тенденция к переходу от объектно-ориентированной технологии программирования к новой парадигме, основанной на теории понятий и языко-ориентированных методах программирования. В рамках разработки программного обеспечения (ПО) средствами объектно-ориентированного программирования этот процесс  является весьма длительным, а при сопровождении и развитии программного кода все необходимо повторять заново. Альтернативой ему выступает использование предметно-ориентированных языков,  выполняющих  роль своеобразного интерфейса, связывая высокоуровневые понятия с непосредственной программной реализацией.Цель исследования заключается в автоматизации генерации кода при формировании компонентной библиотеки на основе семантических описаний, поступающих на вход, т.е. исходя из принципов языково-ориентированных методов программирования. Рассматриваются два основных подхода, используемых при генерации кода: шаблонная генерация и генерация с помощью преобразователя. Во втором случае при проектировании ПО используется высокоуровневая модель предметной области с применением предметно-ориентированного языка (ПОЯ), такая модель более приближена к предметной области, чем классы и методы. В этом случае код программного приложения становится легким для понимания «предметным» специалистом, без какого-либо участия программиста. В результате на порядки сокращается  объем текста приложения. Понятие программных компонентов предполагает многократное их использование, формирование  различных программных приложений из блоков, с учетом их многократного использования.В результате для формирования компонентной библиотеки разработан генератор кода на языке Python с использованием комбинаторной библиотеки PyParsing. Разработанный генератор позволяет создавать программный код алгоритма по предварительно сформированному шаблону описания его входных и выходных данных. Генерация с помощью преобразователя основана на написании программы, которая получает на вход семантическую модель, а на выходе дает исходный текст для целевой языковой среды. AU - А. Е. Александров AU - В. П. Шильманов UR - https://bijournal.hse.ru/2012--4(22)/71751882.html PY - 2012 SP - 10-17 VL -