Fight the Future

Java言語とJVM、そしてJavaエコシステム全般にまつわること

JavaのシステムだからってテストコードがJavaである必要はないね

ThoughtWorksアンソロジー ―アジャイルとオブジェクト指向によるソフトウェアイノベーション

ThoughtWorksアンソロジー ―アジャイルとオブジェクト指向によるソフトウェアイノベーション

4章は多言語プログラミングという題材で、テストターゲットのコードがJavaだからって、テストコードはJavaじゃなくていいんじゃない?って内容がある。


僕も同じことを考えてて、ThoughtWorksの人と考えが一致してるなんてうれしい。

テストコードはパフォーマンスとかセキュリティとか諸々のことはそれほど要求されない。 だからいかに簡単に書けるか、サクッと書けるかってところがポイントだと思う。 めんどくさい、と思わずに済む言語を使う方がいい。

「テストコード」の検索結果 - Fight the Future じゅくのblog


僕がこのときなぜこれを考えたかはもうわからないし、どっかのWebからインスパイアされたのかもしれないけど。


唯一無比の言語なんてものはなく、問題領域により適切な言語があるだけ。
テストという領域にはJavaは複雑すぎる。


本ではMockの話題が取り上げられていて、JavaはMockを作るコードが煩雑で上量になってしまう。それはどんなMockライブラリを使っても同じ。


GroovyでもScalaでもいいから、そっちの方がラクだ。GroovyならGMockあるし。


新しい言語の習得コストが!なんて考えが出てきてしまう時点で、エンジニアとして不適切な人にエンジニアをやらせてしまってるってことだよ。


エンジニアなら、業務でやらせてくれるなら喜んで新しい言語を学ぶと思うよ。
きっと家でもインストールしてしまうくらいに。