Смысл Seaside на самом деле не в том, чтобы быть похожим на программирование на десктопе, хотя он старается избавиться от большей части веб-разработки. Seaside известен двумя вещами, которые вы можете считать «настольными приложениями»:
- с использованием продолжений, позволяющих писать многошаговые процессы, запрашивающие у пользователя информацию
- использование блоков (замыканий) для предоставления в вашем коде "обратных вызовов", подобных обработчикам событий, при каждом нажатии на ссылки, отправке форм и т. Д.
Эти вещи значительно упрощают определенные задачи веб-разработки, хотя первое из них заканчивается на практике довольно редко.
Побережье предоставляет много других вещей:
- Возможность написания веб-приложений на Smalltalk (очень продуктивно и приятно)
- Композиционные, многоразовые "компоненты"
- Компоненты могут делегироваться другим компонентам, которые заменяют только эту часть страницы
- Простое управление состоянием сеанса и определенным состоянием может быть помечено для отката всякий раз, когда пользователь использует кнопку Назад, поэтому оно всегда имеет правильное значение при выполнении обратных вызовов
- Очень хороший Canvas API для программной генерации HTML, JQuery, Scriptaculous
- Возможность отладки и исправления ошибок в реальном времени на работающем сайте
Большинство из них не являются уникальными для Приморья, но они несколько необычны. Так чем же он отличается от других веб-программ? Вы можете написать в Smalltalk. Вам не нужно мысленно переключать контекст назад и вперед между кодом и языком шаблонов. Вам не нужно беспокоиться об именах полей формы, URL-адресах и т. Д., Если вы не захотите. Вы, вероятно, не будете так сильно ненавидеть веб-программирование, если будете использовать Seaside.
Люди могут открыть для себя Seaside из-за его "функций программирования на рабочем столе", но обычно они торчат по всему остальному.