最近使っているScalaのライブラリ

これは Scala Advent Calendar 2015(アドベンター版) の4日目です。

3日目は、xuweiさんの ScalaからScalaPBというsbt plugin使ってProtocol Bufferを使う方法についてのドキュメントを書いている でした。 Protocol Buffer使ってみようかな…。

言い訳フェーズ

scalajp/publicというGitterのチャンネルで参加者を募っていたので軽い気持ちで参加したものの、ついこの間ネタを放出したばかりだったので思いつかなかった。

苦し紛れ…。

紹介フェーズ

注意事項は以下となります。

  • この記事を書いた存在はScalaを普段使いしているわけではない
  • 自作ライブラリは除外

Scalaz

  • 前提
  • 特に猫に移行する理由がないのでこっちを使っている

Shapeless

  • 他のライブラリとともに勝手についてくることが多い
  • 最近ようやく使い方がわかってきた、かもしれない
  • Scala.jsをサポートしている

scalaprops

  • 便利

scalacheck

  • scalapropsがリリースされる以前に作ったものはこっちでチェックしているので現役
  • Scala.jsをサポートしている

scalatest

  • 最近はscalapropsで完結するものばかり書いているのでなんともいえない
  • DiagrammedAssertions(power assert)は使いどころによっては便利

httpz

  • べんきょーとか思って使っていたら慣れた
  • 慣れると便利…かもしれない?

http4s

  • 実装を読んでみるとなるほどなーという気分になる
  • 最近は破壊的変更が以前よりも減った気がする
  • 猫に移行するのか見守る
  • プロジェクト頓挫しないよね…?

blaze

  • http4sのついでに使っている
  • なんとなく使っているだけで特に理由があるわけでもない

構文解析

  • その時々で気になったものを使っている

Argonaut

  • httpzがこれに依存しているのでこっちを使っている

twirl

  • まぁ、こっちでいいかなって

doobie

  • 学ぶ目的

scodec-bits

  • バイナリ操作はこれ以外の方法はあまり知らなかったりする…

scodec

gatling系

  • 代替がない?

まとめ

  • 仕事でないなら好みで選べば良いと思います
  • 仕事なら周りにあわせそう
    • なおこの記事を書いている時点でScalaを仕事で使ったことはない