Alexey_Donskoy писал(а):
Зачем много отдельных сообщений? Очень неудобно.
1. Отдельная мысль - отдельное сообщение. 2. Ссылаться удобно. 3. Если у кого-то подключен RSS-канал на тему форума, то каждая корректировка сообщения - это отдельное сообщение в канал. Что крайне неудобно. Корректировать собственное сообщение приходится, т.к. не всегда мысль можно удачно выразить с первого раза, мы - пионеры. В сравнении с этим неудобство Читателя на страничке перенести взгляд с одного сообщения на другое - довольно легко превозмогается.
Возвращаясь к
Хабра-автомату: Я нарисовал на ДРАКОНе ту диаграмму состояний, что приводил автор статьи. Сделал это для эксперимента с новой формой Гармошки.
Вложение:
HABR_automata.png [ 87.73 КБ | Просмотров: 3538 ]
На мой неискушенный взгляд, такой ДРАКОН-автомат довольно сбалансирован в части графики, и понятность диаграммы не хуже, чем у графа. Приоритет сигнала DIR прописан, как мы видим, явно. В тактируемых системах, насколько я понимаю, сигналы могут поступить одновременно, поэтому приоритеты важны. Второй сигнал по приоритетности у нас тоже виден. В диаграмме с Хабра - не виден.
Я применил собственный смешанный подход к оформлению, не используя способ Степана Митькина.
Названия веток - это названия процессов переходов состояний автомата, за исключением ветки IDLE. Она повторяет название узла состояния, которое на ней описано.
На ветке IDLE размещен единственный элемент - Гармошка, описывающая состояние IDLE (которое может быть внешней процедурой, или вставкой кода, или одной командой, расшифрованной во внутреннем тексте иконки). Из этого состояния возможен выход в одно из трёх направлений, что явно указано по схеме ниже Гармошки. Если условия не выполняются, то выхода из состояния IDLE не происходит.
Следующие три ветки повторяют "бусики" графа. Но для узлов, которые не используют условий для переходов, я использовал иконки "Вставка". Хотя, по новым предлагаемым правилам, можно вместо них использовать Гармошку с пустым Вопросом внизу, или просто Паузу с соответствующим текстом вместо указания времени ожидания.
В случае использования Паузы легко объяснить, почему запись внутри неё какой-то длительности времени приведет к задержке: "Исполнитель войдет в
состояние отсчета времени, по истечении которого продолжит работу". Получается, что классическая Пауза - это частный случай Гармошки, т.е. упрощенная иконка для описания состояния системы/автомата.
Вложение:
HABR_automata2.png [ 87.45 КБ | Просмотров: 3538 ]