本連載も、今回でいよいよ最終回となります。今回は、テスティングフレームワークやライブラリの中で近年よく使われるようになってきたものを紹介していきます。 本連載が始まった2008年6月は、Scala言語そのものが注目され始めた時期で、ライブラリは未整備でした。オープンソースのScalaライブラリは少なく、何かしようと思うとJavaのライブラリを直接呼び出すか、ラッパーを自分で書く必要がありました。 翻って現在、完全に成熟しているとはいえないものの、多くの実用Scalaライブラリが登場しています。HTTPクライアント、JSONライブラリ、O/Rマッパ、I/O、コマンドラインパーザ、Webアプリケーションフレームワーク等がいくつも存在しています。 Scalaの主要なライブラリは、前回紹介したビルドツールsbtのビルド定義ファイルbuild.sbtに、どのライブラリのどのバージョンに依存しているか
こういうJsonが *1 こんな case class 定義しておくだけで いい感じに勝手に変換されます。 Lift JsonのREADME 日本語訳 に書いてあるんですが、あまり知られてないというかそこまで多く使われてない気がしたので改めて書いてみました。内部的には、このあたり https://github.com/lift/framework/blob/2.4-release/core/json/src/main/scala/net/liftweb/json/ScalaSig.scala https://github.com/lift/framework/blob/2.4-release/core/json/src/main/scala/net/liftweb/json/Meta.scala で、 ScalaSignature っていう、コンパイラがアノテーションとしてつけているメタ情
求職活動中とありますが、活動報告というよりは、技術の話題を多めでいきます。Scalaが大好きなので特にScalaの話が中心になると思います。 今回は前回まで作っていたスクリプトをまとめて、Dispatchを使ってTumblrのAPIを叩くライブラリを作りたいと思います。 前回までの記事一覧 Scala(Dispatch)でTumblrのAPIを叩く(小手調べ編) Scala(Dispatch)でTumblrのAPIを叩く(dispatch-json編) Scala(Dispatch)でTumblrのAPIを叩く(xAuthで投稿編) sbt 前回まではScalasスクリプトでコードを書いていましたが、今回からはsbtを導入していきいたいと思います。 Home · harrah/xsbt Wiki sbtはAnt、Mave、Ivyなどと同じビルドツールなんですが、以下の特徴があります。 Ma
書籍「実践ドメイン駆動設計 (Object Oriented Selection)」が出版されて、ドメイン駆動設計(DDD)の知名度が上がってきているようです。 そのDDDに関連する分野の1つとして、DSL(ドメイン特化言語)を挙げることができると思います。 デバシッシュ・ゴーシュさん(Debasish Ghosh)は、DSLのエキスパートで、「実践プログラミングDSL」(原題 “DSLs in Action")という本を出されています。この本の第1章のタイトルは、「ドメインの言葉を話す方法を学ぶ」となっています。 デバシッシュさんのブログ記事のうちの1つ、"Functional Patterns in Domain Modeling - The Specification Pattern” に惹かれて、翻訳をしました。翻訳記事の公開について、著者ご本人から快諾頂けたため、以下に掲載させて
sbtというと、独特なSettingのシステム*1や、Scalaで記述する内部DSL*2ばかりが注目されがちです。それらは、初心者にわかりづらかったりして批判されることが多かったり、逆にsbtを使い慣れた人にとってはとても強力で面白い仕組みです。 Settingのシステムに注目すると、汎用的に色々な言語のビルドにも使えそうに思えます。事実、sbtでC++のpluginを作っている人もいます。 しかし、sbtはあくまで「Scala(とJava)のためのビルドツール」です。 これは「単にScalaをデフォルトでサポートしてる」という意味にとどまらず、おそらく皆さんが思っているよりもずっと深い意味で「Scalaに特化したビルドの仕組み」が内部に備わっています。 今回は、そんな「sbtの内部アーキテクチャ」の紹介をします。 以下、かなり長いです。読み物としては面白いかもしれませんが、単にsbtを使
自分は今年に業務でScalaを使い始めて本格的にはじめたのですが、入門した時に早めに知っておきたかったScalaのTipsを紹介しようと思います。 これらを早く知っていれば今後の負債を減らせるかもしれませんよ。 コード規約系 Scalaに限らずソースコードは書いた人の癖が非常に出やすいのでif(){}の{}位置など比較的どうでもいいことでチーム開発では揉めてしまいことがあります。 Scalariform コーディング規約を設定ファイルに書き込むとコンパイルするたびにオートフォーマットしてくれます。 導入もsbtのライブラリを追加するだけで非常に簡単なのでおすすめです 依存性 scalaのobjectは便利だけど、テストが大変です… 弊社のアプリケーションはslickのDAOが全部objectで構成されていてビジネスロジックばりばり書いてあったのでモックを差し替えることができずにテストの際に
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く