会計システムを抽象度の高いDSLで表現するためにScalaを使う
Play (Scala) + Redisで作ろうかと決めましたので、いろいろと本を買いました。
「会計システムを抽象度の高いDSLで表現する。そのためにScala/Playを使う」というシナリオです。
Scala
オブジェクト指向プログラマが次に読む本 ?Scalaで学ぶ関数脳入門
- 作者: 株式会社テクノロジックアート,長瀬嘉秀,町田修一
- 出版社/メーカー: 技術評論社
- 発売日: 2010/11/13
- メディア: 単行本(ソフトカバー)
- 購入: 9人 クリック: 303回
- この商品を含むブログ (30件) を見る
- 作者: Martin Odersky,Lex Spoon,Bill Venners,羽生田栄一,水島宏太,長尾高弘
- 出版社/メーカー: インプレスジャパン
- 発売日: 2011/09/27
- メディア: 単行本(ソフトカバー)
- 購入: 8人 クリック: 204回
- この商品を含むブログ (38件) を見る
Scala逆引きレシピ (PROGRAMMER’S RECiPE)
- 作者: 竹添直樹,島本多可子
- 出版社/メーカー: 翔泳社
- 発売日: 2012/07/03
- メディア: 単行本(ソフトカバー)
- 購入: 4人 クリック: 50回
- この商品を含むブログ (12件) を見る
DSL
実践プログラミングDSL ドメイン特化言語の設計と実装のノウハウ (Programmer’s SELECTION)
- 作者: Debasish Ghosh,佐藤竜一
- 出版社/メーカー: 翔泳社
- 発売日: 2012/06/08
- メディア: 大型本
- 購入: 4人 クリック: 78回
- この商品を含むブログ (11件) を見る
- 作者: Pavel Hruby,依田智夫,溝口真理子,依田光江
- 出版社/メーカー: 日経BPソフトプレス
- 発売日: 2007/08/13
- メディア: 単行本
- クリック: 7回
- この商品を含むブログ (14件) を見る
『ビジネスパターンによるモデル駆動設計』は書店でたまたま見つけた掘り出し物。
新しいモデリング手法「REAモデル」によるビジネスパターンの国内初の解説書。R(リソース)、E(イベント)、A(エージェント)を使った25の新しいパターンによって、ビジネスをモデリングする方法を紹介します。
"契約パターン"、"分類パターン"など新しい25種類のパターンを使うことによって、販売活動や生産活動におけるリソースの価値を明確に表すことができ、一定の品質と精度を持ったモデルを作成できます。
REAの概略は『要求開発アライアンスのビジネス・モデリング道場 - REAとビジネスパターン入門』で。
こういう抽象度の高い会計ドメインのパターン・ランゲージをそのままDSLとして表現できれば、すごくリーダブルなコードになるのではないか、と考えています。
そもそも、書店で『実践プログラミングDSL ドメイン特化言語の設計と実装のノウハウ』を立ち読みするまでDSLにピンときてませんでした。しかし「内部DSL」と、そのScalaによる実装コードを見て、「これはすごい」と思ったのでした。
その直後に『ビジネスパターンによるモデル駆動設計』を見つけた瞬間にScala-DSL-REAのラインがつながったわけです。
まとめると、「会計システムを抽象度の高いDSLで表現する。そのためにScala/Playを使う」というシナリオです。