Valery Solovey писал(а):
язык для представления алгоритмов. В программировании используются алгоритмы, следовательно, ДРАКОН можно с пользой использовать в программировании. Но не на любых задачах
Уважаемый Валерий,
Давайте рассмотрим несколько положений и вопросов.
1. Что значит термин "любая задача" в программировании? Вероятно, для создания баз знаний и экспертных систем лучше подойдет Пролог или другой язык логического программирования, чем Фортран или ассемблер.
Можно ли написать на Фортране или ассемблере базу знаний? Думаю, большинство согласится, что в принципе можно.
2. Стандартные блок-схемы алгоритмов позволяют описывать в принципе
любые императивные алгоритмы? Думаю, большинство согласится, что да.
3. Предложенная Паронджановым методика уж
не хуже стандартизированных блок-схем, без сомнения. Он внес в нее целый ряд эргономических улучшений.
4. В связи с вышесказанным - можно ли использовать методику Паронджанова для описания
любых императивных алгоритмов?
5. Является ли применение визуального подхода Паронджанова
оптимальным по сравнению с использованием других языков и методик, для любых видов программ?
6. Уместно ли и
полезно визуальное программирование при создании систем логического управления? Вероятно, широкое применение графических языков Grafcet, SFC, LD, FBD в мире при создании подобных систем в достаточной степени обосновывает это положение. Дает ли в определенной мере подобный подход возможность приблизиться к "программированию без программистов"? Безусловно, да - и мы имеем ряд успешных примеров в отечественной космической отрасли. Даже больше - в некоторых организациях, создающих критические приложения, блок-схема может входить в состав
обязательно требуемой части программной документации.
7.
В отличие от визуальных языков, используемых в основном на этапах анализа бизнес-процессов организаций, постановки задачи по созданию автоматизированных систем, проектирования информационных систем (IDEF0, IDEF1X, UML, DFD, ER), ГРАФИТ/ФЛОКС - именно вместе - позволяют получать на выходе готовую к прошивке в память бортовой ЭВМ
исполнимую программу в машинном коде. Являясь именно истинной системой графического программирования. Что касается интегрированных систем разработки, основанных на методике Паронджанова и публично доступных, совсем недавних и активно развивающихся в настоящее время - среды Тышова и среды Митькина (за их бескорыстный труд мы можем лишь сказать им огромное
спасибо), можно отметить, что
и в них предусматривается автоматическая генерация программы. Причем на самых
разных языках -
алгоритм остается одинаковым, и всего лишь несколькими нажатиями клавиш можно получить программу на другом языке! Это и
ассемблеры, и Си, и С++, и С#, и Оберон, и 1С, и Erlang! Практически на всех активно используемых в промышленном программировании. Некоторые известные среды, позволяющие генерировать программы по диаграмме классов и иногда по диаграмме состояний UML, далеки от подобного богатства возможностей.
Это что касается программирования.
Ну и, наконец, повторю: с моей точки зрения,
главная идея Владимира Даниеловича Паронджанова - это ликвидация алгоритмической безграмотности широких масс населения - непрограммистов. Для коих он и написал - со своими весьма оригинальными примерами, не имеющими отношения к профессиональному программированию - серию
популярных книг.