2014-01-02 1 views
7

Я недавно унаследовал незавершенное веб-приложение, написанное на Clojure, основанное на compojure и hiccup в основном. Плохая попытка моделирования какого-то MVC с OO-стилем не в стиле FP, как показано here. Поэтому я держу пари, чтобы повторно запустить проект почти с нуля, повторно используя полезные части. Я считаю эти альтернативы:Clojure web framework для реагирующих приложений

Наименьшее нарушение Альтернативой будет Compojure + Enlive + JQuery-pjax

Использование веб-фреймворк Clojure как Pedestal любой опыт по этому поводу?

Первоначальная идея состояла в том, чтобы внедрить API RESTful, обслуживающий JSON, поэтому для более сложного решения у меня есть Backbone + react.js, на мой взгляд, для front-end и Liberator для back-end, но это, скорее всего, займет больше времени чем традиционное серверное приложение.

Мысли и альтернативы, учитывая, что опыт Ajax необходим, спасибо, большое спасибо!

+2

Для front-end вы можете рассмотреть clojurescript + OM (на основе реакции) Дэвида Нолена. Просмотрите этот проницательный блогпост создателем http://swannodette.github.io/2013/12/17/the-future-of-javascript-mvcs/ для получения дополнительной информации. –

+0

Спасибо rene_gr, я уже знал OM, который потрясающе кстати. Но мы хотели бы закодировать клиентскую сторону в Javascript –

+0

Также, рассматривая серьезно http://www.luminusweb.net/, после реализации большинства доступных ароматов состоят из выбранных библиотек на основе Ring + Compojure. Победителями являются Luminus и Карибу на самом деле, я бы хотел услышать какое-то сравнение с его авторами или с кем-то, кто имеет опыт работы с приложениями с обоими. –

ответ

5

Я не уверен, что такое связь между RESTful API и отзывчивым в вашем сообщении. Однако ...

У вас есть несколько вариантов здесь: Пьедестал, Освободитель и Caribou.
Если все, что вам нужно, это RESTful API, то я думаю, что Liberator - ваш лучший выбор, и вы не будете уделять больше времени, как вы упомянули. Я не знаю, как у вас сложилось такое впечатление.

Пьедестал сияет, если вы хотите разрабатывать одностраничные приложения, но структура в целом требует хорошего времени, чтобы понять и понять, как она работает.

Посмотрите также на Caribou. Он прост в использовании и чувствует себя знакомым.

Но опять же, это ваш выбор.

+1

Спасибо, Карибу, кажется, очень хорошо спроектирован. Интересно, есть ли у кого-то опыт интеграции с шаблонами [https://github.com/cgrand/enlive](Enlive). Что касается рассмотрения времени, я хотел использовать полностью развязанный интерфейс, такой как Backbone.js или что-то другое. –

+0

@JamesSharp сломанная ссылка Enlive. –

+0

спасибо @pate, не могу редактировать, поэтому у вас есть [Enlive] (http://github.com/cgrand/enlive) –