Степан Митькин писал(а):
2. Статья в Википедии в своём текущем виде работает ПРОТИВ популярности ДРАКОНА.
Полностью согласен.
Первое.
Что вызывает отторжение? Имхо, определение ДРАКОНа как языка программирования, при практической невозможности получить работающую полезную (коммерческую : ) программу, с трудозатратами меньшими, чем при программировании на менее экзотических языках : ) (см. в инете форумы с обсуждениями ДРАКОНа).
Существующие трансляторы с ДРАКОНа на другие языки, по своему исполнению, при всём уважении к их авторам, отстали лет на 20. Именно диссонанс между космическими полётами, морскими стартами и существующим уровнем исполнения трансляторов работает ПРОТИВ популярности ДРАКОНа, в случае определения его в качестве языка программирования.
Язык ДРАКОН заявлен как «очень лёгкий язык». И это так. Пока не попытаешься получить практический выхлоп : ) После чего остаётся ощущение прикосновения к прекрасному, но и только : ) А в некоторых случаях и ощущение обмана: обещали решение проблем чудесным образом, но не тут то было : )
Имхо, отсутствие эргономичного инструмента для эргономичного языка перечёркивает все потуги приобщить программистов к ДРАКОНу.
Тем не менее ДРАКОН приносит практическую пользу при разработке алгоритмов : )
Я пользуюсь ДРАКОНом с 2010 года. За это время у меня выработался некоторый алгоритм : ) разработки сложных программ (несложные не требуют ДРАКОНа).
Разработка сложной программы без ДРАКОНа – долго.
Разработка сложной программы только на ДРАКОНе (с использованием синтаксиса конечного языка программирования) – ещё дольше.
Разработка сложной программы частично на ДРАКОНе и окончательно с использованием необходимого языка программирования – быстро. Т.е. прорабатывается алгоритм и взаимодействие частей программы на ДРАКОНе (описательно и чаще всего не до конца), затем всё кодируется (вручную : ), для наведения блеска на окончательном этапе можно отрисовать (в целях документирования) дракон-схему по готовому коду, которая будет содержать кроме описательной части и конкретные инструкции на выбранном языке программирования.
Именно такой подход, как мне кажется : ) и мог бы привлечь программистов мэйнстрима : ) (ведь речь идёт о популяризации ?)
Из общественно доступных редакторов, я бы отдал предпочтение редактору Степана Митькина, хотя в нём не хватает икон и нет автоматической раскладки маршрутов.
Моё мнение, не нужно убеждать людей программировать на ДРАКОНе (как показывает время из этого ничего не получается : (, нужно показать, что ДРАКОН может помочь им программировать, а для этого нужно показать технологию работы на достаточно сложном примере.
И начать с изменения определения ДРАКОНа в Википедии, например на такое:
ДРАКОН – визуальный язык для записи алгоритмов. Где под алгоритмом понимается последовательность действий исполнителя.
Второе.
«Ба, да это же блок-схемы, а их никто не использует. Сложную программу отрисованную в блок-схеме понять ещё труднее, чем по тексту на ЯП, проще комментарии прописать в программе, больше толку будет».
Нужно показать отличие дракон-схемы от блок-схемы на примере достаточно сложной программы. Непременно сложной программы. И убедиться, что дракон-схема лучше. Или хуже : )
Я готов поработать над дракон-схемой какой-либо блок-схемы : ) Хорошо бы, чтобы это была реальная схема.
Третье.
Я думаю, будет весьма уместно поместить пример выделения сути из документа, имеющего силу Закона, показав, что ДРАКОН облегчает понимание этого документа.
Например, как здесь. Когда я получил сухой остаток от документа, я был удивлён. Думаю и других может заинтересовать подобное использование ДРАКОНа.
Четвёртое.
Ни в коем случае не приводить в качестве примеров простые дракон-схемы, которые элементарно преобразуются в линейный текст. Схема состоящая только из текстов, взятых в рамочку икон Действие, вызывает у неподготовленного человека только недоумение: «Зачем?».
Пятое.
Владимир Паронджанов как-то упоминал сложные биологические алгоритмы (органическая химия?). Если кто-нибудь предоставит такой алгоритм, я возьмусь его отрисовать в дракон-схему : )
Шестое.
Возможно, не плохо бы было продемонстрировать проявку алгоритма из текста сложной (но короткой : ) программы в дракон-схему. Я пока не смог подобрать красивый пример : ) Может кто поможет?
Седьмое.
Все дифирамбы «ДРАКОНу в космосе» перенести в самый конец статьи. Сначала показать пользу ДРАКОНа и только потом подкрепить это сносками на применение в космических программах. Как используется ДРАКОН в космических центрах никто толком не знает (кроме небольшого количества допущенных : ), а попытка практической работы с ДРАКОНом приводит к пониманию почему у нас перестают выводиться спутники на положенные траектории : ( см. п.Первое.
Восьмое.
Был бы полезен пример дракон-схемы, отражающей желание предметника получить нечто от программистов. Т.е. дракон-схема как ТЗ для программистов от предметника. Здесь, наверно, проще всего было бы поработать с бухгалтерией, которой нужно автоматизироваться.
Девятое.
Поменьше наукообразности и побольше практических полезных примеров … : )