PHPカンファレス2015 PHPメンターズセミナー「モデルを設計せよ!―ドメイン駆動設計を超えて」
#phpcon2015 の #phpmentors セミナーで行われた @iteman のセッション Frameworks We Live By のスライドを公開しました。 slideshare.net/iteman/framewo… #dddesign
2015-10-07 17:33:42PHPカンファレンス2015 PHPメンターズセミナーでの講演『Coding We Live By ~モデルと実装の今と未来〜』のスライド speakerdeck.com/hidenorigoto/c… #phpcon2015 #phpmentors
2015-10-07 23:13:08PHPメンターズセミナーの視点を整理すると…
#phpcon2015 のPHPメンターズセミナーの視点からは、アーキテクチャ=(設計された)ドメインモデル=ユビキタス言語、これを作る人は設計者=実践的モデラー(=Domain Coder)となる。 twitter.com/sugimoto_kei/s…
2015-10-09 12:49:56例えば、「OSのアーキテクチャ」という時、プロセスやスレッドのモデル、交換可能なファイルシステムなど、OSのユーザである我々から知覚できる設計も云うのであって、OSの内部構造だけを云うのではないですよね。いわゆる「アーキテクト」は内部構造(の一部)だけ設計しているように見える。
2015-10-09 12:12:55.@iteman そういうことですね。そして付け加えるならば、そのドメインモデル=ユビキタス言語は、ソリューションドメインを構成する諸概念を基礎として成立している。これは、マルチパラダイムデザインからの示唆ですが、DDDのパターンランゲージとよく合っていると思います。
2015-10-09 12:53:53ドメイン駆動設計の根底にある意図とは…
変化はいつも、異質なものの接点で生まれる。ドメインモデルは、古くからある社会や仕事の仕組みと、日々更新されていくITが交わる場所。新しいもの、見たことがないものが胚胎する場所だと思うのです。ドメイン駆動の含意はそこにあるのでは?slideshare.net/ssuser8e5e71/s…
2015-10-11 23:59:27突き詰めれば、ドメイン駆動とは、自分が作るソフトウェアが使われる世界に係わり、世界を理解し、少しでもそれに影響を与えようとすることじゃないかと思うんですよね。設計パターンやオブジェクト指向は、実行上で重要となることはあるけれども、本質には関係ない。RT @sugimoto_kei
2015-10-12 10:57:21ドメインといっても、会計や生産管理といった、いかにもそれらしいドメインばかりではないですね。名簿管理もドメインです。プログラムを書くたびにドメインのことを考える。名簿を使って本当は何をしたいのか。そのために名簿はどうあるべきか。それがドメイン駆動。@sugimoto_kei
2015-10-12 13:07:50「言われた通りに作る」のではなく、自分が作るモノが、それを使う人や組織、社会とどう係わるかを考え、そのモノ=道具をデザインする。ドメイン駆動本が言っている「ハンズオンモデラー」の含意はそういうことじゃないでしょうか。 @sugimoto_kei
2015-10-12 13:16:50James Coplien氏からの一言!
Good contrast of DDD and Multi-paradigm design on this page. phpmentors.jp
2015-10-17 12:36:19マルチパラダイムデザインの肝とは…
"解決ドメインの構造が問題ドメインの構造を変化させる。" Frameworks We Live By slideshare.net/iteman/framewo… #dddesign
2015-10-19 11:22:17これが、マルチパラダイムデザインの胆ですね。解決ドメインにおける道具立て-オブジェクト指向なら、クラス、インターフェース、ポリモフィズムといった概念-が、問題ドメインのアーキテクチャを組み上げるためのビルディング・ブロックになる。 twitter.com/iteman/status/…
2015-10-19 18:01:40「設計」とは問題ドメイン内部で完結するものではなく、問題ドメインと解決ドメインという2つの世界の相互作用の上に成り立つ、という設計観。非常にしっくりきます。RT @sugimoto_kei
2015-10-19 18:04:47「定義された問題の解決のためにソリューションを組み合わせる」という、ありがちな意味では無いんですね、これ。そうではなくて、問題を明確に定義するために解決ドメインの諸概念を適用する、という意味。問題の定義においてすでに解決ドメインが登場するんです。@sugimoto_kei
2015-10-19 18:28:23「解決して始めて、その問題を完全に理解することが出来る」って言いますよね。そういうことです。マルチパラダイムデザインは、それをもっと実践的な言葉で表現している。コプリンさん、賢い。ステキ^^ 惜しむらくはもっと簡単に言って!(笑) RT @sugimoto_kei
2015-10-19 18:32:27