Считаете ли вы, что формат определения потока WebFlow Spring подойдет для вывода веб-потока для среды, отличной от Spring?

Мне нравится идея Spring WebFlow - особенно то, как определение потока абстрагирует веб-поток более высокого уровня от компонентов в контейнере Spring Bean.

Формат определения потока, кажется, включает в себя все, что нужно в веб-потоке: представления, действия, переходы, подпотоки, результаты и т. Д.

Считаете ли вы, что формат определения потока WebFlow Spring подойдет для вывода веб-потока для среды, отличной от Spring? То, что не использует Spring или, возможно, даже Java, для своих базовых компонентов.

Имейте в виду, я имею в виду только конкретный поток страниц, а не общий рабочий процесс или вещи типа BPEL

2 ответа

Конечные автоматы (например, весенний веб-поток) использовались для описания потоков веб-приложений с момента создания первых веб-приложений. Так что да, все в порядке. Почему не все это делают? Я думаю, что при использовании конечных автоматов для описания веб-потоков существует тенденция к тому, чтобы формализм занимал слишком много времени. То, что начинается с хорошей идеи, в конечном итоге становится болью. Ajax и несколько одновременных активных состояний на данной странице делают его еще хуже.

Самая большая сила SWF, на мой взгляд, заключается в том, что централизует поток (навигацию) в одном месте и делает его явным, простым для чтения, манипулирования и т. Д. Он хорошо подходит для более сложных навигационных потоков, когда вы можете переходить назад и вперед между страницами. или для волшебного или пошагового пользовательского интерфейса. Он также имеет некоторые расширенные функции повторного использования, такие как подпотоки и наследование потоков.

Концепция состояния представления и состояния действия хорошо имитирует взаимодействие пользователя с веб-приложением, когда переход к действию происходит после того, как пользователь создал событие, затем следующий вид представляется пользователю, и машина находится в состоянии ожидания следующего пользовательского события. Важно отметить, что эти потоки происходят на стороне сервера. Кажется, что сегодня все движется на сторону клиента, и даже конечный автомат может сыграть свою роль. Flex, например, имеет концепцию состояний и переходов. Это должно помочь программисту управлять сложными пользовательскими интерфейсами с большим количеством элементов управления. Штаты могут скрывать или отображать элементы управления и многое другое. Итак, я бы сказал, что это может быть очень изящной парадигмой для моделирования потоков и взаимодействия с пользователем.

Другие вопросы по тегам