noteプログラミング関連2012-11-27メインで使えなくてもScalaは活用できるScalaリリース物件にJavaしか使えないプロジェクトでも、開発環境としてScalaを使うことで、Javaだけ使うよりも開発効率を上げることができると思います。開発環境でもScala使っちゃダメとかいうプロジェクトの場合は、あきらめるか、「僕が作ったんです!」とか言って押し切ってみるのはどうでしょう?(責任は持てません)念のため、手元の環境は以下の通りです。※開発環境とは別です。2.0.2別のプロジェクトを作って参照Eclipse上で、メインプロジェクトが"TheApp"という名前のJavaプロジェクトだとしたら、"TheApp+"という名前のScalaプロジェクトを作り、"TheApp+"ビルドパスのプロジェクト参照に"TheApp"を追加します。"TheApp+"にScalaTestなりSpecs2なりを使って、好きなだけテストを書きます。Javaにも便利なテストツールはありますが、Scalaと比べるとJava自体の表現力が足枷になってしまいます。他にも、Scalaで書くと簡単だけどJavaで書くのが面倒で自動生成が困難なクラスを、Scalaでミラー実装?したものと出力が常に同じになっていることをテストする、というやり方もあります。ちなみに、Specs2のテストをまとめて実行する場合は、Javaの場合と同じように、新規作成→JUnitテストスイートでAllTestsを作って実行できます。他の方法が分かりませんでした。AllTestsをScalaで書いても良いですね。手書きになってしまいますけれど。AllTestsテスト以外にも使うScalaはDSLが書きやすかったり、パーサー機能が標準搭載されていたりと、テスト以外のツールとしても活用できると思います。自動生成ツールとか、コーディングルール独自チェックとかが比較的簡単に書けます。Scalaだけで書くのが難しかったら、Javaと混合でもOKです。他のスクリプト言語とかでも良いんじゃない?実際、今の開発環境はスクリプト言語はPerlしか使えないので、解析や整形や自動生成などはJava(+Velocity他)とPerlなどを駆使してやっています。スクリプト言語を活用するのは、Javaだけ使うより良いです。Scalaはこういった環境よりも、Javaとの親和性が高いので、もっと使いやすく、もっと効率アップが期待できる、と思っています。弊害Scalaを使えば使うほど、Javaで書くことが嫌になってしまうかもしれません。*1:そろそろ4.2にしたいです。(2)プロフィールid:argiusはてなブログをはじめよう!argiusさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。