Вы здесь

Язык Scala, сложности поддержки Scala в IDE и Play Framework 2.0

Курс Хит

В силу различных причин, Java, как язык программирования, развивалась не очень динамично. Постепенно возникла необходимость в языке для JVM, в котором в первую очередь были бы поддержаны функции высших порядков, а также были бы устранены некоторые неудобства, с которыми Java-программисты сталкиваются ежедневно. Было предпринято несколько попыток реализации подобного языка, самой успешной из которых, пожалуй, стал язык Scala.

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

В первой части,  Павел Фатин рассказывает о своем опыте разработки на Scala и о том, когда стоит использовать этот язык.

Во второй части доклада, Александр Подхалюзин рассматривет различные подводные камни, с которыми может столкнуться Scala-программист. Также рассмотрены некоторые высокоуровневые языковые конструкции, внутреннее устройство которых может быть интересно (например, как они транслируются в байт-код). Кроме того, рассмотрена такая прикладная задача, как бинарная совместимость Scala-программ.
Кроме того, Александр Подхалюзин рассказывает о своём опыте разработки Scala plugin для IntelliJ IDEA и в частности:

  • компилятор как спецификация: cложности поддержки языка;
  • почему практически невозможно повторить анализатор Scala, а можно лишь написать его адекватное приближение;
  • почему в компиляторе не проходят некоторые implicits конверсии, которые, вроде как, должны бы проходить;
  • когда должен отрабатывать local type inference (вывод generic параметров по вызову), а когда нет;
  • можно ли обойти отсутствие в языке понятия функции второго порядка с переменным числом параметров.

Многое из того, что рассмотрено в отношении языка Scala, с небольшими изменениями может быть перенесено и на другие языки для JVM. Доклад полезен не только Scala-разработчикам, но и всем, кто пишет код на языках для JVM.

В третьей частиДмитрий Найданов рассказывает о поддержке Play Framework 2.0 в IntelliJ IDEA.

Информация о курсе