Нетрадиционные среды программирования: от Корнелльского Синтезатора до Java

В.Галатенко, Jet InfoSystems,
П.Христов, Открытые системы


Тезисы доклада

Основным назначением так называемых нетрадиционных сред программирования является повышение производительности работы программистов. Это достигается за счет обеспечения единой среды редактирования, анализа и выполнения программ. Такая среда поддерживает весь технологический цикл проектирования, разработки, тестирования и сопровождения программного продукта. Видимо, первым опытом, показавшим жизнеспособность и полезность данного подхода, явился проект Корнелльский Синтезатор, в результате выполнения которого была создана система программирования, обеспечивающая возможность пошаговой (инекрементальной) разработки и отладки программ.
Важным свойством систем программирования нового поколения является повышение уровня языка программирования. Известным недостатком распространенных языков программирования (Си, Фортран, стандартный Паскаль и т.д.) является недостаточный набор средств спецификации, что приводит к ограниченным возможностям проверки правильности программ при их компиляции и сборке. Языки нового поколения сочетают наиболее важные свойства языков спецификации и компилируемых языков программирования, что в совокупности составляет новое качество.
Для поддержки инкрементального стиля программирования необходима поддержка единого не текстового представления программ. Появление и реальная возможность использования объектно- ориентированных баз данных обеспечивают реальную возможность хранения семантически- ориентированных структур данных, описывающих состояние программы на каждом этапе ее жизненного цикла. Такие развитые структуры хранения позволяют создавать абстрактные структурно-текстовые редакторы, поддерживающие осмысленную и приближенную к предметной области среду разработки, тестирования и сопровождения программ. Новые языки дают возможность проводить инкрементальный анализ программ. Доступность современных инструментальных средств позволяет применять многоплановые модели визуализации поведения программ.
В качестве примера подобной программной системы разумно использовать информационную среду World Wide Web и язык программирования (или составления сценариев?) Java. В этом случае мы имеем гипертекстовую модель представления информации, компонентную модель программного обеспечения, инкрементальный анализ программ и их компиляцию в необходимый момент времени, наличие виртуальной машины (интерпретатора) Java.

[Содержание] [Вперед]