タグ

dddに関するj5ik2oのブックマーク (161)

  • Spring RooによるDDDの実践 ~ 第2回 Spring Rooのアーキテクチャ ~

    Spring RooによるDDDの実践 ~ 第2回 Spring Rooのアーキテクチャ~ 2011年4月7日 笠原 規男 2 Spring Rooのキーメカニズム  ITD  ApectJのITD(インタータイプ宣言)を利用  クラスにメソッドや属性をウィービング  ユーザーコード(.java)と自動生成コード(.aj)を分離  .ajはユーザーは編集不可  Ruby/GroovyのMix-in、C#のパーシャルクラスに似た方式  スカフォルディング  Web層のモジュールを自動生成  RESTfullなController  CRUD機能を備えたJSPX  「見た目」をカスタマイズ可能(CSS、アイコン等の差し替え)  ラウンドトリップ可能  Entityへの属性追加がJSPXに反映される  EntityへのFinderの追加がControllerおよびJ

    j5ik2o
    j5ik2o 2011/05/08
    リポジトリとエンティティは分けたい
  • 長年、邦訳されなかった「思慮深いソフトウェア開発者全員の必携書」

    Domain-Driven Design」通称「DDD」の原著が出版されたのは、2003年のことだった。Kent Beck氏が賛辞に寄せた「思慮深いソフトウェア開発者全員の必携書」という言葉が示している通り、英語圏では圧倒的な支持を集め、出版から7年が経過した現在でも、Yahoo! Groupsのメーリングリストでは活発な議論が交わされている。 一方、日では少し状況が異なる。識者の間では、有用な書籍として早くから知られていたものの、500ページ超という厚さと、文体の難しさが、多くの日エンジニアの挑戦を阻んできた(邦訳も待ち望まれたが、長い間出版されなかった)。 佐藤匡剛氏による「Domain-Driven Designのエッセンス」、徳武聡氏による「DDD Quickly 日語版」をはじめ、日語の情報は少なからず存在したし、国内での実践事例も徐々に蓄積されていたものの、質的に

    長年、邦訳されなかった「思慮深いソフトウェア開発者全員の必携書」
    j5ik2o
    j5ik2o 2011/04/25
  • ドメイン駆動設計・俯瞰編 - Strategic Choice

    書籍「エリック・エヴァンスのドメイン駆動設計」にある全パターンを、3枚の俯瞰図にまとめます。ボリューミーなこのを攻略するのに、この自身にある「大規模な構造(第16章)」という戦略に倣おうと考えたからです。巨大なシステムに包括的な原則がなく、そのせいで各要素を解釈する際に、設計全体にまたがるパターンにおいてどのような役割を果たすかという観点から考えることができなければ、開発者は「木を見て森を見ず」になってしまう。全体の詳細を徹底的に調べなくても、全体の中で個々の部分が果たす役割を理解できる必要があるのだ。「大規模な構造」は、システムをおおよその構造から議論し、理解できるようにするための言語である。第16章 大規模な構造 P447-448「パターン」の仔細を見る前に、各々の「コンテキスト」の中での「立ち位置」をわかっておいたほうが、理解が「速い」し「深まる」と思います。まず「全体における部

    j5ik2o
    j5ik2o 2011/04/24
  • はてなブログ | 無料ブログを作成しよう

    週報 2024/04/28 川はただ流れている 4/20(土) 初期値依存性 さいきん土曜日は寝てばかり。平日で何か消耗しているらしい。やったことと言えば庭いじりと読書くらい。 ベランダの大改造をした。 サンドイッチ 一年前に引っ越してからこんな配置だったのだけど、さいきん鉢を増やしたら洗濯担当大臣の氏…

    はてなブログ | 無料ブログを作成しよう
    j5ik2o
    j5ik2o 2011/04/18
    アグリゲートの変更イベントをドメインイベントとして他のアグリゲートに通知するというパターンもあります。DDD本には書いてないです。Ericから直接聞きました。
  • Domain Language /Newsletter

    Will DDD work for your team? Four Prerequisites for Domain-Driven Design by Eric Evans While the Strategic Design techniques of DDD can be applied in many situations, development based on subtle domain models has some demanding prerequisites. If you don't have them, it is a waste of effort to leap into application of DDD at the tactical level. Instead of grinding your gears trying to express eleg

    j5ik2o
    j5ik2o 2011/04/13
    DDDの前提条件
  • DDDのモデル探求うずまきプロセス – QCon Tokyo 2011メモ

    QCon Tokyo 2011に参加しました。 Keynoteを発表してくださったDDD InventorのEric Evansさんはとてもゆったりした話し方をされる方でした。DDDの一部分を語られていましたが、一つ一つの詳細を聞いてみたくなります。 Evansさんの発表で気になったのが「Model Exploration Whirlpool」と「Bounded Context」というキーワード。DDDをまだ読んではいないのですが、「Model Exploration Whirlpool」についてはWebに資料(PDF)あったので少し読んでみました。(以下、適当訳) Code Probe(コードを綿密に調べる) ・テストとしてのコードシナリオ ・厳密さの追加 ・言語を洗練する ・解決方法を探求する ・ミスを生み出す Challenge Model ・新しいシナリオをもって挑む Scena

    DDDのモデル探求うずまきプロセス – QCon Tokyo 2011メモ
    j5ik2o
    j5ik2o 2011/04/13
    Whirlpool DDD本には記載がないモデリングのプロセス
  • Domain-driven Design|QCon Tokyo 2011 Conference|QCon 東京 2011 カンファレンス

    j5ik2o
    j5ik2o 2011/02/23
  • エリック・エヴァンスのドメイン駆動設計 | SEshop.com

    ドメイン駆動設計の定番書 問題解決にフォーカスした設計パターン 「このは、思慮深いソフトウェア開発者全員の必携書である。」 ---Kent Beck 氏推薦 「Eric が見事にとらえたのは、熟練のオブジェクト設計者が常々用いてきた設計プロセスの 一部でありながら、グループとして見ると、この業界の他の人々へうまく伝えられずにいたものだ。 これまで我々は、この知識を断片的には提供してきた。 しかし、ドメインロジックを構築するための原理をまとめ上げ、体系化したことはなかった。 書は重要である。」 ---『Enterprise Java Programming with IBM WebSphere』の著者 Kyle Blown氏 推薦 ソフトウェア開発コミュニティでは、ドメインモデリングがソフトウェア設計の中心であることが広く認められてきています。ドメインモデルを通して、ソフトウェア開発者は

    エリック・エヴァンスのドメイン駆動設計 | SEshop.com
    j5ik2o
    j5ik2o 2011/02/17
    オブジェクト指向を使って問題解決するための手法を提示している本です。業務モデリングなんちゃら本とは訳が違う。勘違い厳禁ですw
  • Value と Entity - 感想 - Aufheben - GLAD!! の日記

    昨日のエントリ id:aufheben:20090430 について。 概念って言っちゃったので話が難しい方向へ進んでしまいましたが、Value と Entity の違いが有効になるのは、やはり設計以降だと思います。Value と Entity を意識することで、不具合が発生しにくくなります。でも、不変性が Value の質的な特性ではないと言われてしまうとわけがわからなくなってしまいます。そんなわけで、ちょっとこだわってみました。 ちなみに、Value って価値を表すものだから当は重要なんだけれど、概念モデリングでは通常 Value は脇役です。Value を表に出すと概要がつかめなくなってしまうので。主役は Entity なんだけど、DDD はそこが弱いと思うので、僕は以下の3冊をおススメしています。 Javaエンタープライズ・コンポーネント―カラーUMLによるJavaモデリング 作

    Value と Entity - 感想 - Aufheben - GLAD!! の日記
  • 2009-05-01

    まずは、設計・実装における Value Object を整理した方が良さそうなのでまとめてみました。 Value Object の設計方法としては、以下の3通りがあると認識しています。 # 仕事で主に使用してきた言語が C++Java なので、もし他にもあればご教示ください。 1. Singleton インスタンスを1つしか生成しないパターンです。 Java の enum がこれに該当します。 同一性は == で判定することができます。 2. 不変オブジェクト インスタンスが1度生成されたら、属性の変更を許可しないパターンです。 Java のプリミティブ型のラッパークラス(Integer など)、String、BigDecimal などが該当します。 Java の場合、hash と equals メソッドをオーバライドする必要があります。 3. スコープ外へ公開する際に複製する クラ

    2009-05-01
    j5ik2o
    j5ik2o 2011/02/08
    これは必読!!! VOって不変性は本質ではない。おー。
  • トイレリフォームの費用の相場と適した選択について

    トイレは使い続けているうちに汚れや劣化が目立ちはじめます。思い切ってトイレリフォームを行うのはひとつの方法です。しかし、問題となるのはトイレリフォームを行うにあたっての費用についてです。当然ながら予算のなかでやりくりをしないといけないため、慎重に検討すべきです。どれくらいの費用がかかるかはどういった選択をするかによって大きく変わっていくものです。トイレリフォームの費用の相場を考慮したうえでの適した選択を行うことを考えての対応をしましょう。 ■タンクレストイレの強み トイレリフォームを行うにあたって、機能性を考えるとタンクレストイレに変えるのがひとつの方法です。工事費はそれほど高くなくとも、タンクレストイレは便器周りの空間がすっきりしたり、見た目が良かったりします。空間を広く使えるため、掃除が簡単になります。コンパクトなデザインで便利機能が標準装備されているのも注目点です。 また、節水出来る

    j5ik2o
    j5ik2o 2011/02/06
    ブログを紹介していただき感謝!
  • スクラムによるドメイン駆動設計 - Digital Romanticism

    ビジネスとソフトウェアの統合という観点から、スクラムとドメイン駆動設計の関係をとらえなおす。 導入 ここ数ヶ月は日スクラムにとって、おそらく非常に有意義な期間だったのではないかと思います。12月にJim Coplien氏による認定スクラムマスター研修、1月にGabrielle Benefield氏とJeff Sutherland博士による認定プロダクトオーナー研修が開催され、さらにInnovation Sprint 2011では野中先生とSutherland博士の対談までもが行われました。私は幸運なことに、これらのイベントにはすべて参加することができたのですが、そうやって学ぶことができた今では、スクラムのことを、一言で言うと「価値の流れを生み出すためのフレームワーク」ではないかというイメージを持っています*1。「フィードバック」や「改善」など、スクラムにとって重要な概念はいくつかありま

    スクラムによるドメイン駆動設計 - Digital Romanticism
  • Home - Domain Language

    About Domain Language We are a small consultancy focused on Domain-Driven Design (DDD) and led by Eric Evans, who wrote the first book on DDD. Check out DDD eLearn! Our video-based course on Domain-Driven Design (DDD) is just over 5 hours of tightly edited video.  This self-guided course focuses on the deep concepts of DDD, explained by Eric Evans, author of the original book on DDD, Domain-Driven

    Home - Domain Language
    j5ik2o
    j5ik2o 2011/01/21
    イケメンのEvansが在籍している会社
  • Domain Events – Salvation

    Domain Events – Salvation

    j5ik2o
    j5ik2o 2011/01/17
    Domain Event
  • ドメイン駆動設計入門 - Digital Romanticism

    "Beautiful Develpment"(10/27 DevLOVE)の講演資料と原稿 はじめに 日(10/27)、DevLOVE様主催で、"Beautiful Develoment"と題されたイベントが開催されました。これは「ドメイン駆動設計("DDD:Domain-Driven Design")」を題材に、入門から実践までを語り尽くすというコンセプトのものです。このイベントにおける講演のトップバッターとして、ドメイン駆動設計の根底にある基的な考え方についてお話しさせて頂きましたので、講演資料と原稿を公開いたします*1。 スライドはこちら アジェンダは以下の通りです。 導入 オブジェクトとは? モデルとは? ドメイン駆動設計とは? まずは、ドメイン駆動設計のベースとなっている、「オブジェクト指向」や「モデル」について整理した上で、実際にドメイン駆動設計とはどういうものかを見ていき

    ドメイン駆動設計入門 - Digital Romanticism
    j5ik2o
    j5ik2o 2011/01/16
  • ドメイン駆動設計を実践するために - Digital Romanticism

    ドメイン駆動設計の実践に向けて、DDDでは明示的に語られていない視点からドメイン駆動設計をとらえ直す。 導入 ドメイン駆動設計入門では、かなり抽象的なレベルでDDDの根底にある思想を概観しました。一言で要約すれば「ドメインエキスパートの頭の中にあるドメインをとらえるモデルを共有し、オブジェクト指向のパラダイムを用いて、それをソフトウェアの実装に落とし込む」という構想であると言えるでしょう。これを踏まえて今回は、実践のためには何が必要なのか、という問題意識からドメイン駆動設計をとらえ直してみたいと思います。 今回のポイントはプロセスです。DDDではほのめかされているにすぎない「モデリングのために行われているもの」に焦点を合わせて、設計とプロセスをどのように融合させていけばよいのかを考えていきたいと思います。ここでの目的はDDDを批判することではなく、語られない点からとらえ直すことで、

    ドメイン駆動設計を実践するために - Digital Romanticism
    j5ik2o
    j5ik2o 2010/12/30
  • Greg Young流CQRS - Mark Nijhof - Digital Romanticism

    この記事はMark Nijhof氏のブログ記事「CQRS à la Greg Young」を氏の許可を得て翻訳したものです。(原文公開日:2009/11/11) この記事は以前のブログである"blog.fohjin.com"にて公開していたものです。 以前、2日間の講習を受けた時に、ビールを飲みながらGreg Young氏とドメイン駆動設計について語るという幸運に恵まれたことがあります。その時の話題は専ら、コマンドクエリ責務分離(CQRS:Command and Query Responsibility Segregation)パターンに関するものでした。Gregは、Eric Evans氏が著作において説明したドメイン駆動設計を受け継ぎ、主に技術的な実装を進化させています。コマンドクエリ分離(CQS)は元々Bertrand Meyer氏によって考案されたもので、オブジェクトのレベルで適用さ

    Greg Young流CQRS - Mark Nijhof - Digital Romanticism
    j5ik2o
    j5ik2o 2010/12/26
    これは個人的に熱いなー、という感じ
  • axonframework - Project Hosting on Google Code

    Code Archive Skip to content Google About Google Privacy Terms

    j5ik2o
    j5ik2o 2010/12/26
    コマンドとクエリを分ける考え方は関数型にも通じる考え方だな。自分なりに分析しておこう。
  • http://blogs.sun.com/nishigaya/entry/domain_driven_design_quickly

    j5ik2o
    j5ik2o 2010/12/26
    Fowlerとの話でステートレスは必須でないとなったのはあまり知られていない。これはEnittyやVO以外でドメインのステートを管理すること意味する。
  • 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が最近リリースされ、重要な変...

    j5ik2o
    j5ik2o 2010/11/04