タグ

JavaとDDDに関するkamatama_41のブックマーク (9)

  • ドメインモデルの完全な状態を保つ方法

    非常に面白い話題ですね!ちょっと簡単にまとめてみました。参考になれば幸いです。 話は若干逸れますが、そもそも相互参照がつらいって話があるので、その話から。DDD二部 関連の章を読んでいたら理解できると思いますが、双方向の関連は仕様を満たしているか検証する実装コストが高いと思います。 Line line = new Line(id); Point point = new Point(id); point.setLineId(line.getId()); // --- (A) line.addPoint(point); // --- (B) この場合、(A), (B)は両方の状態が正しく設定されていないといけません。しかし、実際は(A)もしくは(B)の参照の設定を忘れてしまうと、どちらが正しい状態を示しているか見分けがつかなくなります。 まぁ、それだけ参照が増えるというのは設計や実装が複雑にな

    ドメインモデルの完全な状態を保つ方法
  • 実践的な設計って、なんだろう?

    Devlove 名古屋 2014-5-18 DDD, Object Oriented Design, ドメイン駆動設計 オブジェクト指向設計Read less

    実践的な設計って、なんだろう?
  • OTN Japan - 今だからデータ・アクセスを真剣に考える! 第1回

    システムを構築する上で必須となるデータベースアクセスの機能、皆さんはどのように実装しているでしょうか?JDBCで記述/EJB Entity Bean(BMP/CMP)を利用/データアクセスフレームワークを利用、等様々な実装方法を選択されているかと思います。 この連載では、様々な観点からデータアクセスに関わる事項を取り上げ、皆ささんがデータベースアクセスについて、少し考えてみる場になればと思っています。まず今回のデータアクセスことはじめ(前編/後編)では、これから様々なデータベースアクセスに関する事項を扱っていく上でのベースとなる知識を取り上げます。 現在、Javaプログラミング言語を用いてエンタープライズシステムを開発する場合、要件変更への設計・実装の変更の容易性、JDBC、EJB Entity Beanなどのデータアクセス要素技術とのマッピングの容易性、等々の理由により、システム全体を論

  • ドメインモデル VS トランザクションスクリプト

  • ドメイン駆動設計 実践ガイド

    Este documento presenta conceptos clave de diseño de dominio y arquitectura de software. Explica patrones como agregados, fábricas y repositorios para modelar entidades y servicios, y describe técnicas como capas de anticorrupción y contextos de dominio acotados para dividir una aplicación. También cubre temas como modelado de eventos, diseño estratégico y mapeo de contextos de dominio.Leer menos

    ドメイン駆動設計 実践ガイド
  • ドメインモデル - Strategic Choice

    ビジネスロジックをオブジェクト指向で。どういうこと?ビジネスロジックにおいて、最も避けたい状況は、そのロジックが「複雑」になってしまうことです。とはいえ、現実のビジネスルールは多くのパターンを持ち、それを反映したロジックはとても複雑になりがちです。ドメインモデルは、この複雑性に「オブジェクト指向」をもって対応します。ドメインモデルは、対象となるビジネスエリアをモデル化したオブジェクトのレイヤを挿入します。ビジネスにおけるデータをモデル化するオブジェクトもあれば、ビジネスで使用するルールを扱うオブジェクトもあります。ドメインモデルは、データベースモデルと似ている場合もありますが、大きな違いもあります。ドメインモデルでは、データとプロセスが一体化され、複数値属性や複雑に絡み合う関係があり、さらに継承も使われています。どうすれば?シンプルなドメインモデルは、データベーステーブルごとに1つのドメイ

  • 『ドメインモデルに対する日米の温度差』

    マーチン・ファウラー氏によれば、アプリケーションの中核部であるビジネスロジックを構築する方法には、Transaction ScriptパターンとDomain Modelパターンの2通りがあるという。Domain Modelパターンは、データと振る舞いを1つのオブジェクトにまとめ、オブジェクト指向のテクニックを駆使するやり方だ。一方のTransaction Scriptパターンでは、データと振る舞いは別々のオブジェクトに分け、振る舞いをスクリプト的に淡々とプログラミングしていく。 日ではTransaction Scriptが優勢 この2通りのうち、日ではTransaction Scriptパターンの方が優勢だ。日のオピニオンリーダーも軒並みTransaction Scriptを薦めている。 たとえば、Seasarの開発者であるひがやすを氏は、古くからデータと振る舞いを分離するアプローチ

    『ドメインモデルに対する日米の温度差』
  • 日経ソフトウエアの特集がムックになりました - かとじゅんの技術日誌

    まず、 3月11日の「東北地方太平洋沖地震」で、被害にあわれた皆様に心よりお見舞い申し上げるとともに、犠牲になられた方々とご遺族の皆様に対し、心よりお悔やみを申し上げます。 私も関西出身で阪神大震災の酷さを体験している人間でもありますし、気を負わずに自分なりにできることはやっていきたいと思います。ということで、通常通り ブログの方は継続します。 お知らせです。これまでに日経ソフトウエアで執筆した特集がムックになりました。 Javaツール完全理解 (日経BPパソコンベストムック) 作者: 日経ソフトウエア出版社/メーカー: 日経BP社発売日: 2011/03/14メディア: 大型 クリック: 43回この商品を含むブログ (6件) を見る タイトルはJavaツール完全理解ということで、前半はJavaの開発環境やビルドツールなどの開発に必要なツールの解説があり、後半は私の記事を含めて実装編の記

    日経ソフトウエアの特集がムックになりました - かとじゅんの技術日誌
  • 副作用を最小限に抑えるために必要なこと - かとじゅんの技術日誌

    若干、難しい話ですが、設計力を上げたいプログラマ向けなエントリ。私も道半ばです。一緒に考えていただければ幸いです。 堅牢なアプリケーションを実現する上で「副作用を最小限に抑える」という設計思想は、非常に重要な示唆を含んでいます。 その「副作用」とは、そもそもどんな定義なのでしょうか。 DDDでは"side effect"と定義していて、以下のように解説されています。 Domain-Driven Design: Tackling Complexity in the Heart of Software: Evans, Eric: 8601300201665: Amazon.com: Books エリック・エヴァンスのドメイン駆動設計 作者:Eric Evans翔泳社Amazon P250より引用 In standard English, the term side effect implies

    副作用を最小限に抑えるために必要なこと - かとじゅんの技術日誌
  • 1