Скататра использует обход за кулисами?
Вопрос
Делает касалта использовать окружать За кулисами (или видами вершина)? Каковы ключевые различия между ними, и какой из них вы бы использовали?
Оба рамки вдохновлены Синатра и с взгляда выглядеть идентично.
Запрос маршрутизации со скальтарой:
class ScalatraExample extends ScalatraServlet {
get("/date/:year/:month/:day") {
<ul>
<li>Year: {params("year")}</li>
<li>Month: {params("month")}</li>
<li>Day: {params("day")}</li>
</ul>
}
Образец кода в Coinflex:
class Main extends RequestRouter {
get("/posts/:id") = "Post #" + uri("id")
}
}
Решение
Росс А. Бейкер, одна из разработчиков Scalatra, недавно прокомментировала разницу между Circu, Flex и Scalatra:
Они внешне очень похожи, хотя я думаю, что у каждого есть свои сильные стороны. Вот некоторые различия, которые я вижу:
Шаблон: STALATRA объединяет сосусов, Coinflex интегрируется с FreeMarker.
Маршрутизация: Coinflex имеет более приятный сахар для сопоставления заголовка, но STALATRA позволяет соответствовать произвольному логиру (т. Е. Глобальный флаг для обслуживания сайта)
ORM: Cireflex имеет один, Scalatra не так. Я знаю, что пользователи SCALATRA используют Squaryl, Qureulous, Scala-Query, Ormbroker и, да, Coinflex-Orm. Эти интеграции тривиальные, и я предполагаю, что также будет тривиальным с Coinflex.
AUTH: CALATRA имеет модуль Authule в своем последнем снимке, Coinflex не делает.
I18N: CIRINFLEX имеет сахар для связки сообщений, STALATRA нет.
Тестирование: Scalatra также включает в себя хорошие DSL для тестирования; Я не знаю ничего подобного для Coinflex.