タグ

DDDに関するscrewboundのブックマーク (65)

  • ドメインモデルをコードへ落とす 〜あなたのクラスは、どこから?〜 - Qiita

    annotation: 現在コメントいただいている通り、一部誤りを含んでいる様です。 追って確認・修正いたしますが、現行ではコメントも合わせてお読み頂ければと思います。 こんにちは、風邪はだいたい喉から来るぷーたんです。 「DDDの構成要素はこれだー」というのはたくさんあったのですが、 「このドメインオブジェクトはどの要素だー」と逆引きするものがなかったので調べてフローチャートにしてみました。 例えばドメインモデル図とコードがうまく合致しない時の見直しなどに使えるのではと考えています。 ではご覧ください♪ 検討フローチャート 図1.フローチャート 1) 複数のドメインオブジェクトを扱い、整合性を担保するか まず複数のドメインオブジェクトを扱うかを考えます。 ドメインモデル図では集約線が引かれていたり、複数の関係線が引かれていたりします。 図2.ドメインモデル図の例 上記のような場合であれば

    ドメインモデルをコードへ落とす 〜あなたのクラスは、どこから?〜 - Qiita
  • DDD、イベントストーミング、アクターモデルを使用したリアクティブシステムの設計

    Spring BootによるAPIバックエンド構築実践ガイド 第2版 何千人もの開発者が、InfoQのミニブック「Practical Guide to Building an API Back End with Spring Boot」から、Spring Bootを使ったREST API構築の基礎を学んだ。このでは、出版時に新しくリリースされたバージョンである Spring Boot 2 を使用している。しかし、Spring Boot3が最近リリースされ、重要な変...

    DDD、イベントストーミング、アクターモデルを使用したリアクティブシステムの設計
  • 境界づけられたコンテキスト 概念編 - ドメイン駆動設計用語解説 [DDD] - little hands' lab

    境界づけられたコンテキストとは 公式DDD Referenceの定義は以下の通りです。(和訳はだいぶ意訳しています) bounded context A description of a boundary (typically a subsystem, or the work of a particular team) within which a particular model is defined and applicable. 境界づけられたコンテキスト 特定のモデルを定義・適用する境界を明示的に示したもの。 代表的な境界の例は、サブシステムやチームなど。 まぁなかなかよくわからないですよね。DDD用語の中でもかなり難解なワードです。 境界づけられたコンテキストは、2つの観点から解説が必要でしょう。 ・概念としての境界づけられたコンテキスト ・境界づけられたコンテキストをどう実装に

    境界づけられたコンテキスト 概念編 - ドメイン駆動設計用語解説 [DDD] - little hands' lab
  • Eric Evans氏: ドメイン駆動設計は、以前より以上に妥当性を獲得している

    Spring BootによるAPIバックエンド構築実践ガイド 第2版 何千人もの開発者が、InfoQのミニブック「Practical Guide to Building an API Back End with Spring Boot」から、Spring Bootを使ったREST API構築の基礎を学んだ。このでは、出版時に新しくリリースされたバージョンである Spring Boot 2 を使用している。しかし、Spring Boot3が最近リリースされ、重要な変...

    Eric Evans氏: ドメイン駆動設計は、以前より以上に妥当性を獲得している
  • (旧版)DDD × CQRS 更新系と参照系で異なるORMを併用して上手くいった話

    新版は https://www.slideshare.net/koichiromatsuoka/ddd-x-cqrs-orm こちらご参照ください! アーキテクチャの話はこちらのブログ記事でも書いています。 http://little-hands.hatenablog.com/entry/2017/10/04/231743 http://little-hands.hatenablog.com/entry/2017/10/11/075634 Read less

  • モデルとは"現実世界を正しく表現したもの"ではないという話 / 境界付けられたコンテキストの必要性[DDD] - little hands' lab

    DDD連載記事 なぜDDD初心者はググリ出してすぐに心がくじけてしまうのか ドメイン駆動設計の定義についてEric Evansはなんと言っているのか モデルでドメイン知識を表現するとは何か ドメイン駆動設計で実装を始めるのに一番とっつきやすいアーキテクチャは何か ドメイン駆動 + オニオンアーキテクチャ概略 はじめに ドメイン駆動設計における「モデル」の捉え方の話と、境界付けられたコンテキストの必要性の話をします。 「境界付けられたコンテキスト」というものはドメイン駆動設計の上で非常に重要ですが理解しにくいポイントなので、その必要性と定義を理解しやすいように書こうと思います。 モデルとは? ソフトウェア開発において「モデル」「モデリング」という単語はよく聞きますが、定義について立ち止まって考えたことがない人もいるのではないでしょうか。 日語で定義をググってみると、UMLの文脈で話題になる

    モデルとは"現実世界を正しく表現したもの"ではないという話 / 境界付けられたコンテキストの必要性[DDD] - little hands' lab
  • [DDD]ドメイン駆動設計の定義についてEric Evansはなんと言っているのか - Qiita

    DDD連載記事 なぜDDD初心者はググリ出してすぐに心がくじけてしまうのか ドメイン駆動設計の定義についてEric Evansはなんと言っているのか モデルでドメイン知識を表現するとは何か ドメイン駆動設計で実装を始めるのに一番とっつきやすいアーキテクチャは何か ドメイン駆動 + オニオンアーキテクチャ概略 ドメイン駆動設計について、「どうやって実装するのさ?」の前に、まずは定義について認識合わせをしたいと思います。 背景 「ドメイン駆動設計とは何か?」 ドメイン駆動設計について興味を持った時に、一番最初に疑問に思うのがこれですね。 ところが、ググって見ると結構いろんなサイトでいろいろな書きぶりをしているんですよね・・・。 「顧客と開発者が業務を戦略的に理解し、共通の言葉を使いながらシステムを発展させる手法」 ドメイン駆動設計のメリットと始め方(Codezine記事) 「厳しい現実の中で、

    [DDD]ドメイン駆動設計の定義についてEric Evansはなんと言っているのか - Qiita
  • なぜDDD初心者はググり出してすぐに心がくじけてしまうのか - Qiita

    DDD連載記事 * なぜDDD初心者はググリ出してすぐに心がくじけてしまうのか * ドメイン駆動設計の定義についてEric Evansはなんと言っているのか * モデルでドメイン知識を表現するとは何か * ドメイン駆動設計で実装を始めるのに一番とっつきやすいアーキテクチャは何か * ドメイン駆動 + オニオンアーキテクチャ概略 背景 直近のプロジェクトでDDDの思想に則ったアーキテクチャで一つリリースまで漕ぎ付けまして、そこに至るまで色々と調べたり試行錯誤をしながら学んだことを書いていこうと思います。 一番にですね、大体のDDDに興味を持った人がいうのが ということなんですよね。 DDDは思想としてすごく面白く、とても実用性なものなのに、なんでこんなにわかりづらいのか、ハードルが高いのか!! という点について、私なりの解釈を述べたいと思います。 心をくじく要因 Eric Evansは説明

    なぜDDD初心者はググり出してすぐに心がくじけてしまうのか - Qiita
  • Rdra4 ddd

    5. RDRAとドメインモデルの関係  RDRAは来開発方法を選ばない Howは扱わない  RDRA for DDDのスタンス  深い分析は開発側(ドメインの分析)に任せ、RDRAは整合のとれた要件を定義することに徹する  RDRA 広く浅く分析  ドメイン分析 深く分析 ガツンと中心となる概念 をつかんで、育てていく RDRA Domain RDRAが外から攻め ドメインモデルが中核から攻める ドメインモデル RDRA 広く網を張り徐々に固めていく 5 6. RDRAで枠組みを決める 6  RDRAの役割  構成要素の洗い出し 深い分析のための構成要素を洗い出す  スコープ決め 構成要素をつなげスコープを見極める  分類 コンテキストの見極め、業務分類の見極め 全体の枠組みを押さえながら進める RDRAで外枠を固めて安定したサイクル (タイムボックス)が回るようにする

    Rdra4 ddd
  • JSUG勉強会 2017 - 3 〜ドメイン駆動設計 powered by Spring のメモ - mike-neckのブログ

    JSUGの勉強会に参加したので、そのメモ。 jsug.doorkeeper.jp 資料は公開されるだろうから、ここでしか聞けないことを中心にメモ(ツイート)したつもりだが、資料に盛り込まれている可能性は十分にある。なお、資料は以下の通り。 ドメインロジックに集中せよ 〜ドメイン駆動設計 powered by Spring from 亨 増田 www.slideshare.net 個人的な感想 ドメイン駆動のセッションや話は「ドメイン駆動はいいぞ」という感じで抽象的な話になりがちなことが多いのだが、今回はフレームワークが限定されたこともあってどのようなオブジェクトをどのように作っていくという具体的な話が聞けて満足だった ビジネスルールとドメインロジック ビジネスルール(契約・法令・明文化されていない商習慣)などがソフトウェア開発の分析対象(もちろん、ビジネスルールがゲームのルールだったりサー

    JSUG勉強会 2017 - 3 〜ドメイン駆動設計 powered by Spring のメモ - mike-neckのブログ
  • ドメイン駆動設計基礎講座〜戦略編〜

    ChatWork社内勉強会で発表した際の資料

    ドメイン駆動設計基礎講座〜戦略編〜
  • ドメイン駆動設計について DroidKaigi 2017 で登壇しました。

    長らく Y.A.Mの雑記帳というブログでAndroid技術情報を発信しています。最近はなかなか投稿できなくなってしまいましたが、それも仕事としてAndroidに関われているためです。Androidを触り始めたころはまだ学生だったので時間があったんでしょうね。 はじめて Android に関するエントリを投稿したのは 2009 年 5 月 24 日です。当時はJavaFXを触っていたので、NetbeansでAndroidをやろうとしていたようです。 当時のAndroidのバージョンは1.5、Fragment もなく、Support Library もなく、マルチタッチすらなく、ストアは Google Play ではなく Android Market という名前でした。 ここから2、3年くらいは、仕事Android アプリを開発している人はもっぱらメーカーのプリインアプリを作っている方たち

    ドメイン駆動設計について DroidKaigi 2017 で登壇しました。
  • Eric Evans氏はDDDが完璧主義者のためのものではないと述べた

    Spring BootによるAPIバックエンド構築実践ガイド 第2版 何千人もの開発者が、InfoQのミニブック「Practical Guide to Building an API Back End with Spring Boot」から、Spring Bootを使ったREST API構築の基礎を学んだ。このでは、出版時に新しくリリースされたバージョンである Spring Boot 2 を使用している。しかし、Spring Boot3が最近リリースされ、重要な変...

    Eric Evans氏はDDDが完璧主義者のためのものではないと述べた
  • ぐるぐるDDD/Scrum - モデリングと実装のうずまきをまわそう

    レッツゴーデベロッパー変真で行ったぐるぐるDDD/Scrumのワークショップ資料です。 Read less

    ぐるぐるDDD/Scrum - モデリングと実装のうずまきをまわそう
  • マイクロサービスを構築する際はイベントとDDDから始めよう

    Spring BootによるAPIバックエンド構築実践ガイド 第2版 何千人もの開発者が、InfoQのミニブック「Practical Guide to Building an API Back End with Spring Boot」から、Spring Bootを使ったREST API構築の基礎を学んだ。このでは、出版時に新しくリリースされたバージョンである Spring Boot 2 を使用している。しかし、Spring Boot3が最近リリースされ、重要な変...

    マイクロサービスを構築する際はイベントとDDDから始めよう
  • Deep learningの概要とドメインモデルの変遷

    5. 2012: Deep Learningブームの幕開け ● 化合物の活性予測コンペでDeep Learningベースの手法が勝利 ○ ドメイン知識を使わず、活性予測の素人が優勝 ● Youtubeの動画を元に、”に反応するニューロン”を獲得 ○ 画像からの特徴抽出の自動化…従来は人間のドメイン知識に基づいて設計 ○ 2000台のマシンで1週間かけて10億パラメータを学習 ○ 、人といった概念を教えずに(!)それらの概念を獲得 人の顔 (左)、の顔(右)によく反応するニューロンの可視化 Merck Competition Challenge http://blog.kaggle.com/2012/10/31/merck-competition-results-deep-nn-and-gpus-come-out-to-play/ “Building High-level Featur

    Deep learningの概要とドメインモデルの変遷
  • JPA と DDD の関係で僕が思っていること - Qiita

    このスライドについて このスライドは、 JJUG CCC 2016 Fall でお話ししたときに使用したスライドです。 自己紹介 opengl-8080 主に Qiita で技術メモを書いたり 関西の SIer 勤務 今日話すこと JPA と DDD の関係について思っていること JPA で DDD のパターンを実装するとどうなるか JPAとDDDの関係で思っていること 最初は、 JPA に対してあまり良いイメージはなかった DDD を学ぶにつれて、徐々にイメージが変わっていった なぜ変わっていったのか、どう変わっていったのか JPAでDDDのパターンを実装 エンティティ・値オブジェクトなどを JPA で実装する 仕様上の限界、実装ごとの現実 JPAとDDDの関係で思っていること JPA へのイメージの変化 DB アクセスライブラリ1との出会い DB アクセスってこうやるのかぁ JPA と

    JPA と DDD の関係で僕が思っていること - Qiita
  • 【東京】【女性/女性同伴男性限定】 DDD入門! #javajo

    今回のJava女子部では、ドメイン駆動設計(DDD)についてお勉強します☆ 2016/12/07 場所を変更し、募集人数拡張しました ◎DDDとは? ドメイン駆動設計(Domain-driven design)というシステム設計の手法です。 ◎イベント対象者 DDD初心者、未学習者 DDDに興味がある人 名前は聞いたことがあるけど、どんなものかわからない…だからDDDに触れてみたい!な人 システム設計に興味がある人 システム設計をしていて、DDDにまだ触れたことない人 ビジネスの変化に柔軟に対応できるような設計に興味がある人 男性のご参加について 女性同伴でしたらご参加いただけます(男性1名に対して女性が1名以上)。 お手数ですが、アンケートにて性別を確認させていただきます。人数確認のため人数分のご登録をお願いします。 ◎概要 講師:roboさん セッションは、DDDの基思想について基

    【東京】【女性/女性同伴男性限定】 DDD入門! #javajo
  • FluxとDDDの統合方法 - かとじゅんの技術日誌

    おはこんばんにちは、かとじゅんです。 久しぶりにブログを書く…。最近、趣味Angular2やらReactやらやっています。やっとWebpackになれました…。 さて、今回のお題は「FluxとDDDの統合方法」について。Angular2を先に触っていましたが、FluxといえばやはりReactだろうということで途中で浮気してReactで考えています。Angular2でもできるはずですが、今回はReactで統合方法*1について考えてみたいと思います。一つ断っておくと、FluxはDDDと統合することを想定していない設計パターンなんで云々とかはここでは考えていません。それはこのブログ記事を読む読まないに関わらずご自身で判断されてください。ソースコードについては、Githubへのリンクを一番下に書いてあるので興味がある人は参考にしてみてください。 Fluxって何? まず基礎ということで、Flux i

    FluxとDDDの統合方法 - かとじゅんの技術日誌
  • ドメイン駆動設計でビジネスを駆動する

    ソフトウエア開発者はコードの設計と維持だけでなく、その経験を生かしてビジネスサイドに方向を与える能力も持ちつつある。ドメイン駆動設計(DDD)を使うことで、開発者は顧客の振る舞いを見つけビジネスの性質を変化させるための施策を推奨できる。 Jef Claes氏(http://jefclaes.be)はオフショアの開発者によって作られたアプリケーションを自分たちのチームで管理、拡張しやすいようにリファクタリングする仕事をした。新しいリファクタリングされたアプリケーションはオンラインギャンブルという氏の会社のビジネスのニーズにより整合的ではならない。氏はリファクタリングにDDDの方法論を導入した。集約、エンティティ、値オブジェクトを作り、状態の仕組みとしてイベントソーシングを採用した。結果、システムはビジネスの施策と会社の文化に変化を起こすような顧客の振る舞いを見つけたのだった。 InfoQは氏

    ドメイン駆動設計でビジネスを駆動する