Какие фреймворки использовать для запуска моего первого производственного проекта Scala?

StackOverflow https://stackoverflow.com/questions/3066682

Вопрос

Я делаю свой первый набег на Scala для производственного приложения.В настоящее время приложение упаковано как военный файл.Мой план состоит в том, чтобы создать jar-файл скомпилированных артефактов Scala и добавить его в папку lib для файла войны.Мое усовершенствование — это приложение на базе MySQL, доступное через Джерси и которое будет интегрировано со сторонним сайтом посредством вызовов HttpClient.Я знаю, как это сделать с помощью простой Java.Но когда я делаю это в Scala, есть несколько моментов принятия решения, над которыми я с трудом сталкиваюсь.

  1. Скала 2.7.7 или 2.8 RC?
  2. JDBC через ворчливый Готов ли этот API к производству?
  3. sbt против maven.Мне комфортно с Maven.
  4. Есть ли идиоматическая оболочка scala для HttpClient (или мне следует использовать ее так же, как в Java)?

Мне бы хотелось услышать ваши комментарии и опыт начала работы со Scala.

Это было полезно?

Решение

  1. Я бы использовал 2.8.0.В версии 2.8 слишком много полезных функций.Кроме того, 2.8 приближается к финальному релизу.Если вы только начинаете, почему бы не начать с этого?Кстати, я использую версию 2.8.0 начиная с бета-версии 1, в различных инструментах и ​​библиотеках, которые использую ежедневно.Хотя и были ошибки, их было недостаточно, чтобы заставить меня вернуться к версии 2.7.7.ЮММВ, однако.
  2. Это не облегчит ваше решение, но есть и другие возможности доступа к базе данных.я использовал SQueryL, например;Мне это нравится. ОРБрокер это еще один вариант.
  3. Если вам нравится Maven, обязательно используйте его.Лично я предпочитаю СБТ.Я получаю всю мощь настоящего языка программирования, когда мне нужно реализовать специальную логику сборки.Не менее полезно и то, что мне не приходится иметь дело с файлами конфигурации XML.(XML хорош для данных, но это дрянной формат для файла конфигурации, редактируемого человеком.)
  4. Вы можете попробовать Databinder Dispatch.Видеть Эта статья за хороший обзор.

Другие советы

  1. Если вы собираетесь начать разработку, SCALA 2.8 GA, вероятно, будет доступен к вам доступу. Даже если это нет, я бы выбрал самый свежий пакет 2.8RC, а не придерживаясь 2,7,7. 2.8 не только имеет ряд отличных функций, но также содержит лоты 2,7,7 bugfixes.
  2. Там не так много добытых божеств, предназначенных для Scala в эти дни. Я бы, вероятно, выбрал Поднимите настойчивость, Из-за команды профессионалов и дружеской общины за рамки лифта. Но если вы не хотите рисковать, вы должны рассмотреть возможность использования старых хороших проверенных Java Sorms: Hibernate, JPA, IBATIS (который недавно был переименован в MyBatis) и т. Д.
  3. Вы должны попробовать SBT! Он совместим с помадами Maven, поэтому миграция на SBT не должна быть слишком больно для вас. Преимущества от использования SBT:
    • Он предназначен для SCALA, поэтому вы будете облегчаться от бремени поддержания бесчисленного количества плагинов для Maven, чтобы сделать его работать с Scala последовательно
    • Вы сможете написать сценарии сборки в Scala (это удивительный опыт по сравнению с XML)
    • SBT имеет функцию убийцы - непрерывное что-либо (здание, тестирование, развертывание). SBT следит за вашим кодом, обнаруживает, когда его изменились и вызывают действие (тест, повторное развертывание и т. Д.).
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top