Инфологическое обеспечение | Инфопрограммное | О выборе среды разработки
Понятно, что приложение графит-визуализации (мы называем его РДП-редактором) изначально надо разрабатывать в какой-то существующей среде программирования (а лучше — двуединой разработки/документирования). Попробуем выбрать такие среды, исходя прежде всего из поддерживаемого состава прогязыков, а затем оценить их.
Будем считать обязательной поддержку одного из прогязыков Оберон-семейства; он и д.б. языком разработки. Это связано с требованием гарантоспособности будущего РДП-редактора. Она должна проявиться как в эффективности (производительности, устойчивости) работы приложения, так и в удобстве его развития. То и другое связано с такими свойствами языка, как корректность использования ОП, ясность механизмов, «прозрачность» исполнения, «неизбыточная» сложность — т.е. с показателями эффективности прогязыка как искусственной системы, изделия (см. в п. 3.1.2).
Эти свойства заявлены разработчиками и пользователями Оберон-прогязыков.
Ограничение по языкам практически определяет круг выбора среди нескольких КП-систем и сред (BlackBox, GPCP), а также трёх полиязыковых редакторов с поддержкой Оберона (ДВБ-система, Ты-среда+сторонние полуавтоматические конверторы Ты-моделей в исхтексты,1 структурный редактор-компилятор по проекту PureBuilder). Среди них выберем две: ВВ-система и РВ-система. Это связано с тем, что обе позиционируются как не только промышленные, но и учебно-исследовательские; как следствие, заявлено максимальное понижение «порога вхождения» в их применение. Что доказано практически. Кроме того, обе они развиваются и методически поддерживаются коллективами русскоязычных разработчиков, результаты которых открыты и представляются по возможности в доступной форме (прежде всего на конференции /4/).
В перспективе представляется возможным использовать для изначальной разработки РДП-изделий также ДВБ-систему (вероятнее всего, в варианте DALVJAZ), если она приобретёт функциональность комплексного документирования с учётом сказанного на этой странице.
Итак, дадим сравнительную характеристику BlackBox и PureBuilder. Прежде всего отметим, что РВ пока существует в виде прототипа, тогда как ВВ — промышленное изделие, имеющее уже ряд версий.
Целевое назначение обеих систем подразумевает:
программирование на прогязыках высокого уровня с возможностью документирования непосредственно внутри системы;
поддержку обучения программированию и спецификации инфопрограммных изделий, в т.ч. формальной;
возможность исследования как разрабатываемых изделий, так и теоретических и практических вопросов информатики, математики и лингвистики (в т.ч. естественно-языковой).
Для реализации этого назначения каждая из систем предоставляет следующие функции:
поддержку одного из Оберон-прогязыков (в ВВ — Компонентный Паскаль2, в РВ — Оберон);
редактирование исходного прогтекста и ЕЯ-текста встроенным редактором в составе комплексного машинного инфордока системы;
форматирование ЕЯ-текста по абзацам и знакам (предопределённых и/или пользовательских стилей), а исхтекста — по синтаксическим единицам прогязыка (с пользовательской настройкой стилей);
поддержку вариантов лексики прогязыка (ключевых слов и/или идентификаторов) в пределах документа за счёт соответствующих ресурсных файлов системы;
поддержку набора ЕЯ (кодовых таблиц) в пределах документа;
формирование составных документов из комплексных, исхтекстовых и/или ЕЯ-текстовых;
включение в любой инфордок системы таблиц и/или графики;
синтаксический контроль исходного и ЕЯ-текста (в ББ — оперативный);
трансляцию прогтекста в исполнимый код в формате целевой платформы;
В настоящее время обе системы работают на платформах ИБМ+Интел+MSW|LINUX-Wine (при разрядности адреса ОП 32 бит; ведутся работы по поддержке 64-бит адресации).
исполнение кода внутри среды.
Дополнительно к общим для систем функциям ВВ обеспечивает:
возможности машдок-стандарта «текст как интерфейс»3, как-то: включение вызовов и/или результатов работы программ в тот же и/или другие ВВ-документы; включение ссылок специального вида;
табличное описание модульного состава загруженных программ;
формирование оглавления документа (по ЕЯ-заголовкам);
управление версиями (находится в развитии).
Дополнительно к общим для систем функциям РВ обеспечивает:
поддержку также прогязыков: оригинальная модификация Оберона-074, Си-шарп5 с возможностью переключения между языками в пределах одного РВ-документа (см. это веб-сообщение; находится в разработке);
визуализацию структуры программ на граф-языке абстрактных синтаксических деревьев (AST), а также графов зависимостей структурных единиц в различных аспектах (см. этот веб-ресурс; находится в разработке);
автозавершение ввода лексики прогязыков (идентификаторов из текущего словаря системы и ключевых слов);
возможности машдок-стандарта «РВ-проект»6, как-то: разнесение категорий содержания программы по вкладкам документа; структурное «редактирование по выделению»;
В начало страницы | Оглавление | Версия для печати
Copyright © Жаринов В.Н.
1 Краткую оценку ДВБ-системы и Ты-среды см. на этой странице.
2 В качестве руководства по языку рекомендуется учебник: Потопахин В.В. Современное программирование с нуля. - М.: ДМК-Пресс, 2010.
3 В настоящее время самостоятельное определение ТКИ-стандарта на русском языке автору неизвестно.
4 В качестве руководства по языку рекомендуется веб-ресурс: PureBuilder, Разд. 3, 4.
5 В качестве руководства по языку рекомендуется: Троелсен Э. Язык программирования C# 2010 и платформа .NET 4. - М.: Вильямс, 2011.
6 Предварительное определение РВ-проекта см. веб-ресурс: PureBuilder.