Как стать автором
Обновить
15
0
Владимир Паронджанов @Parondzhanov

Разработчик Автор книг

Отправить сообщение
Ошибка в ветвлении — это почти всегда ошибка в условии.

Вы имеете в виду ошибки в условных выражениях.

В языке ДРАКОН можно обойтись без условных выражений, используя принцип «Конъюнкция без знака конъюнкции»,
Дизъюнкция без знака дизъюнкции".
Zenitchik
Вы правы.
Обратите внимание. Пользователю запрещено проводить соединительные линии между фигурами. Линии проводит автоматичски программа ДРАКОН-конструктор.

Фишка в том, что ошибки в разветвлениях и циклах могут быть более неприятными, чем ошибки на линейных участках программы.

Язык ДРАКОН сокращает число ошибок.
Роман Озеров пишет: (https://bit.ly/2NHnYzb см. комментарии к видео)
Я на ДРАКОНе работаю уже 6 лет.
Любое создание программы начинаю с него и при отладке работаю только с ним.

Скорость разработки, качество возрастает в разы!
ДРАКОН это сила, но многие не догоняют, думают, что это обычная блок-схема...
Проектировать алгоритм на языке ДРАКОН можно с большой скоростью.
Желтые кружки обозначают валентные точки.

image
Зато в книге есть почти 200 цветных иллюстраций.
1div0
Посмотрите главу 2 стр. 22—50 и еще стр. 53, 54 в книге:

Паронджанов В.Д. Алгоритмы и жизнеритмы на языке ДРАКОН. Разработка алгоритмов. Безошибочные алгоритмы. — М., 2019. — 374 с. — drakon.su/_media/24_zhizneritm20.pdf
1div0
Вы правы, когда говорите, что язык ДРАКОН обеспечивает «создание отказоустойчивых алгоритмов».

Но вы не правы, когда говорите, что язык ДРАКОН предназначен для «создания небольших алгоритмов».

Как раз наоборот. Чем больше и сложнее алгоритм, тем больше выигрыш от использования языка ДРАКОН.
maximw
Спасибо за критику. Я учел ваше замечание и полностью переписал текст статьи.
Возможность программировать мышью — хорошо, но отсутствие возможности программировать без мыши — это фатальный недостаток, с которым язык не может жить.

Следует различать язык и его инструментальную программу, например ДРАКОН-конструктор.

Решить проблему графики ДРАКОНа можно с помощью быстрых клавиш. Один из разработчиков ДРАКОН-конструктора действительно решил эту проблему с помощью быстрых клавиш.

К сожалению, он не выложил свою программу в общий доступ.
Можно и так считать (что дополнение). Сейчас ДРАКОН попадает в хаб «Ненормальное программирование», а это неправильно. Язык ДРАКОН должен относиться к хабу Визуальное программирование.
Zenitchik Чтобы пользоваться языком ДРАКОН для программирования, нужно иметь инструментальную программу, которую я называю ДРАКОН-конструктором.

Я описал строгие требования к ДРАКОН-конструктору. Сегодня имеются три ДРАКОН конструктора Геннадия Тышова и Степана Митькина (2 шт.). Это их дело, как трактовать ветку.

Для меня важно, чтобы выполнялись мои требования к ДРАКОН-конструктору. Все остальное автор программы ДРАКОН-конструктор определяет по своему усмотрению.

Зенитчик, если вы захотите разработать свой ДРАКОН-конструктор, вы вправе трактовать ветку по своему усмотрению (но с учетом моих требований).

На Хабре нужен новый хаб — Визуальное программирование (Visual programming), как антипод традиционного Текстового программирования (Textual programming).

На Хабре есть несколько статей, посвященных языку ДРАКОН.
Они, в частности, ссылаются на хаб «Ненормальное программирование».
Это некорректно. Нужно, чтобы язык ДРАКОН относился к хабу «Визуальное программирование».
Дракон-схема силуэт — это и есть конечный автомат

Уточню. Пользователь языка ДРАКОН может по своему усмотрению трактовать дракон-схему силуэт
— либо как конечный автомат,
— либо нет (то есть как обычный процедурный подход).

Например, в инструментальной программе «ИС Дракон» Геннадия Тышова предусмотрены три режима работы:
— Автомат 1;
— Автомат 2;
— Процедурное программирование.

Автором режимов «Автомат 1» и «Автомат 2» является Сергей Дмитриевич Ефанов (Липецк).
1div0
У диаграммы деятельности более широкое применение. Ей можно описывать параллельные процессы и их взаимодействие. Круглишки, в которые сходятся стрелки, имеют возможность размещать иконки AND, OR, XOR.

Отвечу на тезис про «размещать иконки AND, OR, XOR».
В языке ДРАКОН вопрос решен иначе — без знаков логических связок (так как они являются источниками ошибок).

Использован принцип «конъюнкция без знака конъюнкции»,
«дизъюнкция без знака дизъюнкции».

Посмотрите книгу «Паронджанов В.Д. Алгоритмы и жизнеритмы на языке ДРАКОН. Разработка алгоритмов. Безошибочные алгоритмы. — М., 2019. — 374 с. — Иллюстраций: 195».
drakon.su/_media/24_zhizneritm20.pdf

Часть 3. Алгоритмическая логика. Математическая логика в алгоритмах. Визуальная алгебра логики
Глава 12. Логические операции И, ИЛИ, НЕ
Глава 13. Логическая функция И
Глава 14. Логическая функция ИЛИ
Глава 15. Как удалить логические связки из логических выражений
Глава 16. Канонические логические схемы
Глава 17. Логическая функция «исключающее ИЛИ»
Глава 18. Сложные логические функции
Zenitchik
А вы пробовали этот дракон-конструктор drakonhub.com
Какое у вас сложилось мнение?
Уточню. В языке ДРАКОН пользователю запрещено рисовать линии между фигурами. Линии нарисует (и гораздо лучше человека) программа ДРАКОН-конструктор.

В качестве одного из примеров назову онлайн программу DrakonHub Степана Митькина drakonhub.com
Zenitchik Повторяю еще раз. Глядя на дракон-схему, вы не увидите goto даже под микроскопом.

Помогаю вам читать — там написано «Приручение попугаев», «Учимся говорить». Где вы видите goto? Нигде не написано goto!

Похоже, что у вас плохо со зрением. Вы видите то, чего на схеме нет.
Ваш рисунок подтвердает, что на дракон-схеме нет оператора goto.

Единственный случай, когда это может быть полезно, а не вредно — описание конечного автомата. Но вряд ли кому-то придёт в голову представлять конечный автомат в виде дракон-схемы.

Дракон-схема силуэт — это и есть конечный автомат.
Рекомендую вам прочитать статью «Митькин С.Б. Автоматное программирование на языке ДРАКОН // Программная инженерия. Том 10, № 1, 2019» drakonhub.com/files/pe_drakon_automata_mitkin_2019.pdf
Zenitchik
В Драконе есть очень вредная концепция: указание в конце ветки, какая ветка должна выполняться следующей. Самый настоящий GOTO, причём там, где лучше было бы обойтись без него. Нужны какие-то более адекватные правила управления порядком выполнения веток

В ДРАКОНе нет оператора goto и никогда не было.
Глядя на дракон-схему, вы не увидите goto даже под микроскопом.

«Самый настоящий goto», о котором вы пишете, формируется автоматически (а не пишется вручную). А это совсем другое дело.

На уровне машинных команд вы найдете много команд перехода, так как любой цикл и любое ветвление на уровне машинных команд реализуются командой перехода jump или ее аналогами.

В Драконе есть очень вредная концепция: указание в конце ветки, какая ветка должна выполняться следующей… Нужны какие-то более адекватные правила управления порядком выполнения веток

Ничего вредного здесь нет.
Это недоразумение. Ветка бывает не только одноадресной (как вы предполагаете), но и многоадресной, то есть имеющей две и больше икон Адрес.
aamonster
это не довод. Единичный проект можно создать хоть в машинных кодах.

Это вовсе не единичный проект (хотя и не массовый). Это один из проектов Алексея Муравицкого — системного интегратора фирмы Овен.

Насчет контроля версий вы правы. Этот недостаток надо устранять
aftertherainbow Вы правы, язык ДРАКОН является аналогом диаграммы деятельности (activity diagram) языка UML.

Преимущества ДРАКОНа таковы:

— графика ДРАКОНа строится методом визуального логического вывода из двух визуальных аксиом: аксиомы-примитив и аксиомы-силуэт. Это означает, что графика является почти безошибочной.

— Язык ДРАКОН опирается на идеи когнитивной эргономики. То есть идея алгоритма соединяетс с идеей когнитивной эргономики. Алгоритмы становятся эргономичными (people-friendly). Это дает повышенную ясность и удобство в работе и так; е работает на минимизацию числа ошибок.

0
aamonster
идея Дракона опоздала на много-много лет.

Это не так. Вот пример. На видео показана установка глубокой переработки широкой фракции легких углеводородов (ШФЛУ) Южно-Балыкского газоперерабатывающего завода компании «Сургутнефтегаз» и шкаф управления установкой, где используется управляющая программа, 70%-80% которой написано на языке ДРАКОН.

Программа загружается в энергонезависимую память Сенсорного программируемого контроллера СПК 107 М01 фирмы ОВЕН.

Подробности по ссылке youtu.be/_XOuhV_8N_I

Информация

В рейтинге
Не участвует
Откуда
Москва, Москва и Московская обл., Россия
Зарегистрирован
Активность