Вопрос по lift, web-frameworks, scala, frameworks – Какие веб-фреймворки Scala доступны? [закрыто]

194

я только начал изучать Scala, и первым делом яЯ собираюсь реализовать это крошечное веб-приложение. Я'мы использовалиErlang за последний год, чтобы внедрить программное обеспечение на стороне сервера, но яникогда раньше не писал веб-приложений. Это будет отличный опыт.

Существуют ли веб-фреймворки для Scala кромеЛифт?

Дон»не поймите меня неправильно, Лифт выглядит потрясающе. Я просто хочу знать, сколько существует фреймворков, чтобы потом выбирать между ними. Это'Всегда хороший выбор, но я нашел только Лифт.

Ваш Ответ

18   ответов
8

Scalatraвдохновленный Ruby 'с Синатра. Вот'сСтатья InfoQ об этом.

34

Play - мой второй выбор для Scala-дружественных веб-фреймворков.

Калитка - мой третий выбор.

@Derek Mahar Внутри работы я верю ;-) user166390
Дэвид, как ты узнал о Лифте? ;-) Derek Mahar
Похоже, вы связаны с лифтом. Обратите внимание, что нашиполитика саморекламы требует от вас раскрыть эту информацию в ответах, подобных этому. josliber
3

s также Пинки, которая раньше была на битбакете, но была переданаGitHub.

Кстати, github - отличное место для поиска проектов Scala, так кактам много чего положено.

77

но я еще не использовал его, поэтому с этим предостережением, рамки, о которых я знаю, не упоминаются вHRJ»ответ (Лифт, Сладкий, Слинки) являются:

Scalatra, ранее шаг (наGitHub)Play 2 (наGitHub)мизинец
Интересно. Лифт на сегодняшний день является наиболее широко разрекламированным:Любопытно, что ты не былне знаком с этим. mcherm
@ djensen47 вы всегда можете развивать свои собственные;) BAR
Шаг сейчасScalatra. fratrik
Я вздыхаю. <декламация>Step - это очень хорошее имя, зачем переходить на Scalatra? Express.js нетт называется нодатра. Колба (не совсем то же самое, но близко) неТ называется Пифатра. </ Декламация> Dave Jensen
7

Играть довольно мило

Сейчас производство готово. Он включает в себя: классную структуру шаблонов, автоматическую перезагрузку исходных файлов в безопасное место, систему действий, которую можно составить, akka awesomeness и т.д.

Его частьТипичный стек.

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

3

знать больше информации здесь:

бриз рамки

Это'в начале разработки, и яЯ все еще работаю над этим агрессивно. Он включает в себя такие функции, как:

Акцент на простоте и расширяемости.Интегрированный инструмент для сборки.Модульная конструкция; некоторые начальные модули включают в себя поддержку сервисов scalate, email, jms, jpa, squeryl, cassandra, cron и многое другое.Простые RESTful контроллеры и действия.

Любая обратная связь очень ценится.

ОБНОВЛЕНИЕ: 2011-09-078, я только что опубликовал серьезное обновление до версии 0.9.1. Там'больше информации наhttp://brzy.org который включает в себя скринкаст.

5

Джерси (вы можете писать хорошие ресурсы в Scala, Java или Groovy) для написания веб-приложений RESTul. Тогда я используюScalate для рендеринга представлений с использованием одного из различных языков шаблонов (JADE,Scaml,Ssp (Страницы сервера Scala),Усыи т. д.)

Мне интересно узнать, какую IDE вы используете для разработки Scalate проектов? Ali Shakiba
Я использую IntelliJ для всей моей разработки James Strachan
4

Scala Web Pages, С сайта:

Целевая аудитория

Веб-инфраструктура Scala Pages, вероятно, понравится веб-программистам, которые имеют опыт работы с Java и хотят программировать веб-приложения на Scala. Акцент делается на ООП, а не на функциональном программировании.

Характеристики и особенностиПридерживается парадигмы модель-вид-контроллерТекстовый шаблонизаторПростой синтаксис:$variable а такжеКодирование / обнаружение контента, возможность обрабатывать международные текстовые кодировкиФрагменты вместо пользовательских теговПерезапись URL
4

думаю мына той же лодке. Я также приезжаю в Скала из Эрланга. мне нравитсяазот Я решил создать веб-фреймворк Scala, вдохновленный им.

Взгляни наXitrum.Его док довольно обширный. От README:

Xitrum - это асинхронная и кластерная веб-платформа Scala и веб-сервер на базе Netty и Hazelcast:

Он заполняет пробел между Скалатрой и Лифтом: более мощный, чем Скалатра, и более простой в использовании, чем Лифт. Вы можете легко создавать как RESTful API, так и постбэки. Xitrum - это сначала контроллер, как Scalatra, а не первый вид, как Lift.Аннотация используется для URL-маршрутов в духе JAX-RS. Ты ненужно объявить все маршруты в одном месте.Типичная безопасность, в духе Скала.Async, в духе Нетти.Сессии могут быть сохранены в куки или кластеризованном Hazelcast.Проверка jQuery интегрирована для проверки на стороне браузера и на стороне сервера. i18n использует GNU gettext, что означает, что в отличие от большинства других решений поддерживаются формы единственного и множественного числа.Условный GET с использованием ETag.

Hazelcast также дает:

Внутрипроцессный и кластерный кеш, вы нене нужны отдельные серверы кеша.В процессе и кластеризованная Comet, вы можете масштабировать Comet на несколько веб-серверов.

Следоватьруководство для быстрого начала.

8

https://github.com/unfiltered/unfiltered.

Это'упоминается в ИтайДсписок

Вот презентация об этомhttp://unfiltered.lessis.me/#0 и видеоhttp://code.technically.us/post/942531598/doug-tangren-presents-the-unfiltered-toolkit-for

Также здесь есть статья с дополнительной информациейhttp://code.technically.us/post/998251172/holding-the-parameter

Нефильтрованный это очень, очень круто. Это действительно чисто и функциональный, но не слишком сложный. thatismatt
0

контекст, Он был разработан, чтобы быть Java-фреймворком, но я успешно использовал его со Scala также без проблем. Это основанный на компонентах фреймворк, имеющий свойства, аналогичные Lift или Tapestry.

35

что я действительно использовал их:

Coeus, Традиционный веб-фреймворк MVC для Scala.

неотфильтрованный, Инструментарий для обслуживания HTTP-запросов в Scala.

Uniscala Гранит.

Гардель

Mondo

Amore, Порт Scala веб-фреймворка Ruby Sinatra

Весы XML, Гибкий подход к обработке XML и упрощенный способ взаимодействия с XML.

ремень, Rack-подобный интерфейс для веб-приложений, построенный на основе Scalaz-HTTP

Фрэнк, веб приложениеDSL построенный на вершине Скалаза / Пояса

MixedBits, Основа языка программирования Scala для создания веб-сайтов.

огибать, Объединяет несколько автономных проектов с открытым исходным кодом для разработки приложений с использованием языка программирования Scala.

Скала Вебмашина, Порт Башоs webmachine в Scala, основанная на REST система для создания веб-приложений

котелок, RESTful, многоканальный готовый веб-фреймворк Scala

Нефильтрованный имеет хорошее слайд-шоу здесь:ссылка на сайт Rick-777
Я добавил каркасную раму (только что нашел ее в Интернете). Adam Gent
44

Сообщение блога об этом.

Подводя итог, некоторые из вариантов:

ЛифтМилаяоблегающий

В конце концов я обнаружил, что ни один из них не подходит для меня, и разработал свой маленький "фреймворк", (Это еще не с открытым исходным кодом).

23

Play Framework, которые также поддерживают Scala.

Играть с поддержкой Scala выглядит очень перспективно. Abhinav Sarkar
8

калитка а такжеScala, Калитка удивительно хорошо подходит Scala. Если вы хотите воспользоваться преимуществами очень зрелого проекта Wicket и его экосистемы (расширений), а также лаконичным синтаксисом и преимуществами производительности Scala, этот может быть для вас!

Смотрите также:

Какая-то проза

презентация

Некоторый опыт работы с Wicket и Scala

Объявления со ссылкой на проект связующего кода для привязки замков Scala к моделям

1

и Слинки кажутся необслуживаемыми около года. Сладкий Maven репозиторий sweetsoftwaredesign.com мертв, так чтоДаже нет возможности скачать зависимости.

0

но с тех пор также узнал оогибать, Это хороший, минимальный фреймворк, который, следовательно, прост в освоении, а также имеет довольно хорошую документацию.

Рядом с этимМинимум, он также утверждает, что хорошо работает с другими библиотеками и позволяет вам использовать вашу собственную реализацию вещей, когда вам это нужно.

1

Примечание: Spiffy устарел. <

штекер>

Spiffy:

написано в Scalaиспользует фантастическую библиотеку Akka и актеров для масштабированияиспользует сервлет API 3.0 для асинхронной обработки запросовмодульный (замена компонентов прямолинейна)использует DSL для сокращения кода, где вы нене хочу этогоподдерживает Scalate и Freemarker для шаблонов

Spiffy - это веб-фреймворк, использующий Scala, Akka (реализация актера Scala) и API Java Servlet 3.0. Он использует асинхронный интерфейс и нацелен на обеспечение массовой параллельной и масштабируемой среды для веб-приложений. Spiffy»Различные компоненты основаны на идее, что они должны быть независимыми минималистичными модулями, которые выполняют небольшие объемы работы очень быстро и передают запрос следующему компоненту в конвейере. После того, как последний компонент завершил обработку запроса, он сигнализирует контейнеру сервлета:комплектующие» запрос и отправка его обратно клиенту.

https://github.com/mardambey/spiffy <

/ Штекер>

Похожие вопросы