Программное обеспечение для веб-разработки Smalltalk

Я стараюсь быть очень осторожным с этим вопросом. В Smalltalk есть как минимум три различных веб-разработки. Наиболее заметным кажется Seaside, но есть также AIDA/Web и Iliad.

Они кажутся очень похожими, но это впечатление может быть неправильным. Интересно, кто пробовал разные инструменты и может поделиться плюсами и минусами разных пакетов.

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

Вот еще один вопрос. Как насчет зрелости и совместимости. Какую структуру можно судить как "самую" стабильную?

Ответ 1

99% моего практического опыта связано с Iliad, поэтому мое сравнение в основном связано с тем, как я выбрал Iliad вместо других.

  • Seaside

    . Сначала пробовал это, он самый известный и первый, на котором вы спотыкались. Мне было трудно понять (как всегда, независимо от того, что вы используете, когда оно доходит до реальной реализации, вы всегда сталкиваетесь с проблемами, которые плохо подходят общей теории), вокруг было мало документации, и сообщество, похоже, мало заботилось о том, чтобы говорить о том, как расти. В конце концов я бросил его, чтобы проверить Аиду. Вы найдете их здесь: http://seaside.st/ и в IRC на #seaside

  • Aida. Мне очень понравилось, поскольку Янко очень терпелив и поддерживает. Тем не менее, он большой. Я решил использовать его, когда я должен был начать реализацию для нашего проекта, и только случайно я столкнулся с Илиадой за несколько дней до начала. Вы найдете Aida здесь: http://www.aidaweb.si/ и на IRC в #Aida

  • Илиада. Основная причина, по которой я это выбрал, состояла в том, что я только что сбросил Squeak и переключился на gnu-smalltalk. gst, похоже, много продолжал работать в "Илиаде", поэтому я решил, что, вероятно, мне будет лучше помогать. Это намного меньше, чем концепция (хотя она делает абсолютно все), и у меня было очень мало хлопот в начале работы и в том, чтобы настроить ее на то, в чем я нуждался. Он также оказался хорошо управляемым, так как я прошел через три выпуска, даже не столкнувшись с тем, что я уже развернул. Вы получаете ответы на вопросы, обычно в течение 12-24 часов, что подходит для меня. Вы здесь найдете Iliad: http://www.iliadproject.org/index по вопросам IRC обычно направляются по каналу # gnu-smalltalk

Что мы делаем, так это графический интерфейс для базы данных PostgreSQL, используемой для управления большим мультимедийным словарем, который, в свою очередь, создает контент (в частности, для KDE-edu). У меня нет понятия о бронировании приложений в целом, поэтому я не могу правильно ответить на ваш вопрос.

Тем не менее, выступая в качестве аналитика, приложение для бронирования в основном представляет собой БД с онлайн-графическим интерфейсом, поэтому я не вижу причин, почему вы не могли этого сделать. Многое будет зависеть от того, насколько легко ваш db может перевести на объекты. Вы могли бы использовать РСУБД, как и мы, и создавать таблицы для сопоставления объектов или использовать OODBMS. Оба решения имеют плюсы и минусы, ни один из них не повлияет на ваш выбор структуры, я бы сказал.

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

Я не буду вкладывать слишком много времени в изучение общей теории. Использование рамки smalltalk будет перевернуто вверх ногами так же, как вы создаете веб-приложение, и ваш первый контакт будет наполнен "ложными друзьями", которые вы наследуете от предыдущих умозаключений. Ваш лучший актив определенно будет "как быстро я могу понять, что они мне говорят", и это в значительной степени индивидуальная вещь, в зависимости от вас и от того, с кем вы сталкиваетесь. Поэтому я действительно предлагаю вам заполонить руки, прежде чем читать слишком много теоретических материалов.

Ответ 2

Эти рамки все очень разные и имеют разные цели. Было бы интересно совместно создать какое-то сравнение.

Как автор Seaside, я могу предоставить ключевые свойства только Seaside:

  • Seaside делает создание веб-приложений похожим на составление традиционных графических интерфейсов: компоненты могут быть свободно составлены и использованы повторно. Последовательности компонентов определяются с помощью последовательности операторов Smalltalk.

  • Seaside имеет многоуровневую архитектуру, предоставляя вам абстракции высокого уровня (компоненты, поток управления, обратные вызовы, генерацию HTML, генерацию JavaScript и т.д.) над концепциями низкого уровня (HTTP, Request, Response, URLs, HTML, JavaScript). Если вам нужно, Seaside дает вам полный доступ к конструкциям нижнего уровня.

  • Есть две книги для моря, которые помогут вам начать работу: Динамическая веб-разработка с видом на море и Приморский учебник.

  • Seaside обеспечивает тесную интеграцию в различные современные веб-технологии: JavaScript (JQuery и JQueryUI), SVG, RSS, HTML5, Comet (Server-Push)

  • Моря работает одинаково на большинстве сегодняшних платформ Smalltalk: Pharo Smalltalk, Squeak, GNU Smalltalk, GemStone Smalltalk, VW Smalltalk, VA Smalltalk и Dolphin Smalltalk. Он поддерживается всеми производителями платформ Smalltalk.

  • Seaside предоставляет проверенные в отрасли компоненты с открытым исходным кодом для метамоделирования (Magritte) и управления контентом (Pier).

Ответ 3

Позвольте мне представить некоторые преимущества Aida/Web, потому что, поскольку его автору было бы трудно сравнивать с другими двумя структурами. Сильные стороны Аиды:

  • URL-адреса RESTfull
  • Поддержка MVC, каждый объект домена может имеют свой собственный URL RESTfull, каждый класс домена имеет свой собственный класс веб-презентации,
  • Интегрированный AJAX и комета поддержки, вы не видите никакой разницы между традиционным и Ajax программирование больше,
  • Деревоподобный поток управления для GUI-подобных контроля, без необходимости продолжения
  • Создание веб-страниц программным путем составление из компонентов/элементов (без шаблона)
  • Масштабируемость по сложности и производительности
  • Интегрированная безопасность с доступом управление и управление пользователями/группами.
  • Портировано на большинство диалектов Smalltalk: Squeak/Pharo, VisualWorks, Gemstone GLASS, Dolphin, Smalltalk/X

Первый и самый свежий пример работы Аиды в этом году Smalltalk Google Summer of Код.

Это хороший пример, потому что он был разработан в течение недели вместе с развитием процесса GSoC параллельно и в в то же время управляя этим процессом как администратором. Этот сайт на самом деле расширенный Aida/Scribo CMS, с сильным использованием так называемых скребок, то есть динамическая сеть "включает" непосредственно в содержимое сайта. Таким образом, я смог очень быстро поддержать новые идеи, которые приходят во время развивающегося процесса GSoC.

Ответ 4

Ну, Suixo использует Seaside. Взгляните на проекты GSoC, которые мы определили. Его больше ERP, чем бухгалтерия, и в настоящее время сосредоточена на здравоохранении.