Nano Hash - криптовалюты, майнинг, программирование

Инструменты Scala 2.8 для производственного использования

Каков ваш опыт работы с инструментами Scala, которые в настоящее время используются в производственной среде?

Учитывая, что Scala 2.8 отсутствует уже более месяца, я подумал, что это будет хорошее время для обновления статуса инструментов Scala в соответствии с этими вопросы. Я хотел бы расширить круг вопросов за пределы IDE, включив в него инструменты RAD (например, JRebel ), инструменты / компиляторы сборки (sbt, Maven, fsc) и, возможно, даже фреймворки (например, Lift, Play).

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

16.08.2010


Ответы:


1

Со своей стороны, я использовал как IntelliJ IDEA, так и Eclipse с Maven. До сих пор мое использование ограничивалось переносом производственной кодовой базы с 2.7.7 на 2.8. IDEA, похоже, является лидером из двух, хотя мне пришлось обновиться до версии EAP IDE, когда я переключился на 2.8. Плагин Eclipse по-прежнему имеет много ложных ошибок компиляции в моей кодовой базе и совсем не реагирует. С другой стороны, хотя бы один разработчик, которого я знать о, больше повезло с Eclipse, чем с IDEA.

Еще одна проблема, с которой я столкнулся, - это скорость компиляции. По крайней мере, в Scala 2.7.7 IDEA была невероятно медленной - обычно для запуска Make требовалось ~ 30 секунд, даже после незначительного изменения. В результате я начал использовать fsc через цель scala:cc плагина Maven, которая сократила типичное время инкрементальной компиляции до 3-5 секунд.

16.08.2010

2

Что касается меня, я пробовал Eclipse и sbt (простой инструмент для сборки). Eclipse кажется немного ненадежным. Он сообщает об ошибках, которые на самом деле не являются ошибками. Eclipse также занял так много оперативной памяти в моем ноутбуке, что он будет очень медленным, если вы используете старый компьютер (или что-то с низким объемом оперативной памяти). sbt потребляет меньше энергии, но у него нет живой проверки ошибок, как у Eclipse (что в любом случае ненадежно).

В любом случае, я думаю, вам стоит попробовать оба! Думаю, это зависит от проекта, над которым вы работаете.

17.08.2010
  • Я обнаружил, что ложные ошибки обычно исправляются с помощью Project | Чисто ... Это не идеально, но понимание этого уменьшило мой уровень разочарования в плагине Eclipse. Вот если бы для этого была горячая клавиша ... 17.08.2010
  • Новые материалы

    Кластеризация: более глубокий взгляд
    Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

    Как написать эффективное резюме
    Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

    Частный метод Python: улучшение инкапсуляции и безопасности
    Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

    Как я автоматизирую тестирование с помощью Jest
    Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

    Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
    Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

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

    Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
    В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..