Программное обеспечение для веб-разработки Smalltalk - PullRequest
15 голосов
/ 10 июня 2010

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

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

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

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

Ответы [ 4 ]

13 голосов
/ 10 июня 2010

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

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

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

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

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

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

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

Я бы не стал тратить слишком много времени на изучение общей теории. Использование платформы smalltalk в любом случае перевернет процесс создания веб-приложения, и ваш первый контакт будет полон «ложных друзей», которых вы унаследовали от предыдущих установок. Ваш лучший актив определенно будет «как быстро я могу понять, что они говорят мне», и это в значительной степени индивидуальная вещь, в зависимости от вас и от того, с кем вы сталкиваетесь. Так что я бы действительно посоветовал вам испачкать руки ПРЕЖДЕ ЧЕМ читать слишком много теоретических материалов.

12 голосов
/ 10 июня 2010

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

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

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

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

  • Существует две Приморские книги , которые помогут вам начать работу: ДинамическийВеб-разработка с Seaside и Seaside Tutorial .

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

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

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

8 голосов
/ 10 июня 2010

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

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

Главный и самый свежий пример работы Аиды в этом году Smalltalk Google SummerCode site.

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

1 голос
/ 13 июня 2010

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

...