OO設計とは異なるアプローチ 関数型・代数的ドメインモデリングとは #ScalaMatsuri #sm_a

関数型、代数的なドメイン・モデリングの方法 @debasishg
0
zerosum @zerosum_

ドメインの言語からモデリングした関数の型を実装から切り離す → 型パラメータ指定することで抽象化できる? という話?#ScalaMatsuri #sm_a

2016-01-30 16:20:07
コツメカワウソ @_nnioo_

実問題からモナドとかKleisliとか役に立つんやでと言う風にもっていくの上手いな #ScalaMatsuri #sm_a

2016-01-30 16:22:36
zerosum @zerosum_

当然のごとく現れるクライスリ圏。何か問題でも? #ScalaMatsuri #sm_a

2016-01-30 16:22:50
にわタコ @niwatako

聞いたことないの出てきた( ゚д゚) クライスリ圏 - Wikipedia ja.wikipedia.org/wiki/%E3%82%AF… #ScalaMatsuri #sm_a

2016-01-30 16:26:43
sifue(吉村 総一郎) @sifue

#ScalaMatsuri #sm_a ドメインロジックを全部クライスリの射にしてそれを合成することでドメイン全体を表現してるのか。確かに、ビジネスルールの文言がそのまま関数の合成っぽい感じで表現されてるな。clientOders andThen ... みたいな書き方。

2016-01-30 16:26:44
sifue(吉村 総一郎) @sifue

#ScalaMatsuri #sm_a 簡単なら似たようなビジネスロジックの関数による表現けっこうやってるな思えば...。そして、エラーハンドリングの話はじまった。戻りを型コンストラクタにしちゃう。

2016-01-30 16:28:29
リンク GitHub ListT violate the associative law · Issue #921 · scalaz/scalaz due to #166 https://wiki.haskell.org/ListT_done_right https://wiki.haskell.org/ListT_done_right_alternative 3.4 Order of ListT [] This is a simple example that doesn't use IO, only pure ListT ...
sifue(吉村 総一郎) @sifue

#ScalaMatsuri #sm_a うーん。話はわかるけど実際、コードの中に KleisliとかListTって出てきて人が直感的にビジネスロジックを理解できるドメインのコードになるかっていうと結構難しそうな...。むむむ。

2016-01-30 16:33:12
Satoshi Hirose / 廣瀬 智史 🐘 @satoshihirose

Akka Clusterのノード追加、削除の話しているけれどこの状態遷移図は一般的な話なんだろうか。weakly upとかどういう状態なのか良くわからん。 #ScalaMatsuri #sm_a

2016-01-30 16:33:55
まっちゃら @ FOLIO @matsu_chara

DDDプロパティベーステストやりたすぎる #ScalaMatsuri #sm_a

2016-01-30 16:39:08
sifue(吉村 総一郎) @sifue

#ScalaMatsuri #sm_a 実際まだ、現場でプロパティベーステストを導入したことないんだけど、自前でテストケースを境界値考えながら用意するのとプロパティベーステストでテストするのどっちがテストの開発効率よいのだろう。

2016-01-30 16:39:40
TATSUNO Yasuhiro @exoego

#ScalaMatsuri #sm_a 関数型・台数的ドメインモデリングの本、訳されんかな。

2016-01-30 16:40:17