5 декабря в Санкт-Петербурге прошла третья встреча разработчиков Scala. Группа пользователей встречается раз в 2-3 месяца, посещая одну из компаний, являющихся активными членами сообщества, использующих язык Scala или связанные с ним технологии.
На этот раз местом проведения был выбран офис JetBrains на Васильевском острове.
Там работает команда разработчиков плагинов Scala для сред IntelliJ IDEA и Android Studio.
В программе встречи было три выступления наших коллег:
- Андрей Сугак (JetBrains) рассказал о результатах своей дипломной работы: инструмент мутационного тестирования проектов на языке Scala;
- Илья Кириллов (СПБГУ) представил недавно запущенный инструмент сборки CBT;
- Сергей Рублев (eLama) привел ряд практических примеров использования библиотеки Slick.
Инструмент мутационного тестирования для проектов Scala
Мутационное тестирование.Пожалуй, самое краткое объяснение этого процесса, которое я получил, следующее: а) есть код, покрытый модульными тестами; б) тесты проверяют качество кода; в) изменения (мутации), намеренно внесенные в код, проверяют качество тестов.
Например, если в функции, вычисляющей сумму элементов, знак «+» меняется на «-», а тесты, охватывающие его, продолжают проходить, то на это стоит обратить внимание.
Мутации вводятся «сознательно»; это могут быть замены арифметических и логических операторов, констант, возвращаемых значений функций и т. д. Чем больше «мутаций» выживает (не обнаруживается тестами), тем хуже качество тестов.
Известные инструменты: М.
Т.
для Java, Ruby, JavaScript, PHP, C# и Haskell. Также известно, что была предпринята попытка создать такой инструмент для Scala, но она не удалась из-за большого количества манипуляций с кодом на этапе компиляции.
Как Андрей справился с задачей, что получилось и как с этим работать, смотрим в выступлении:
Cowboy Build Tool, GSoC и многое другое
В мире Scala абсолютным лидером среди инструментов сборки является SBT. И хотя он поддерживается центром разработки языка Scala, у него есть свои проблемы и трудности.Как известно, прогресс не стоит на месте – предпринимаются попытки решения этих проблем, в т.ч.
и создание более совершенных инструментов.
CBT — молодой и перспективный претендент на место основного инструмента сборки в среде Scala.
Илья в своем выступлении рассказал о возможностях и преимуществах этого инструмента:
Практикуйтесь в использовании Slick
Одной из особенностей языка Scala является сочетание объектно-ориентированной и функциональной парадигм.
Возможности, которые он предоставляет, реализованы в библиотеке базы данных Slick. Сергей раскрыл эту тему на ряде практических примеров из опыта своей команды:
Для дальнейшего знакомства
- Фотографии со встречи есть.
встреча События;
- Информация о новых встречах появится в Группа пользователей Scala СПб ;
- Инструмент мутационного тестирования для проектов Scala на GitHub .
-
Тёмные Измерения: Город Тумана
19 Oct, 24 -
Портативная Винтовка Гаусса За 1К.
19 Oct, 24 -
Эффект Искажения На Скрипке
19 Oct, 24