タグ

DDDに関するbraitomのブックマーク (27)

  • クリーンアーキテクチャ完全に理解した

    clean_architecture.md 2020/5/31追記: 自分用のメモに書いていたつもりだったのですが、たくさんのスターを頂けてとても嬉しいです。 と同時に、書きかけで中途半端な状態のドキュメントをご覧いただくことになっており、大変心苦しく思っています。 このドキュメントを完成させるために、今後以下のような更新を予定しています。 TODO部分を埋める 書籍を基にした理論・原則パートと、実装例パートを分割 現在は4層のレイヤそれぞれごとに原則の確認→実装時の課題リスト→実装例という構成ですが、同じリポジトリへの言及箇所がバラバラになってしまう問題がありました。更新後は、実装時の課題リストを全て洗い出した後にまとめて実装を確認する構成とする予定です。 2021/1/22追記: パートの分割と、クリーンアーキテクチャという概念の定義について追記を行いました。大部分の実装例パートを中心

    クリーンアーキテクチャ完全に理解した
  • さよならアーキテクチャ議論|Seiji Takahashi@ベースマキナ

    ポエム。 つまり?予算やチームのリテラシーに合わせて最速で作れて、チーム内で「俺ら高凝集低結合だなー」と思えるなら、アーキテクチャはなんでもいいと思えてきました。 前提・まだ割と収益が安定してないプロジェクトでの話です。お金があるなら好きにやりましょう。Go Bold。 ・DDDやクリーンアーキテクチャがダメとは言ってないです。むしろ自分は直近そこまで厳格ではないクリーンアーキテクチャでAPI書いてます。 ・以前こういうポスト書くくらいにはアーキテクチャのこと試行錯誤してました。 アーキテクチャ導入議論への疲労以前僕は、DDDやクリーンアーキテクチャを導入するという話が出ると積極的に顔を出すようにしていました。でも、最近は「導入しましょう」「既に適用してあるのでキャッチアップしてください」などの議論をするのに少し疲れてしまい、足が重くなったように感じます。もうおじいちゃんなので体力がないん

    さよならアーキテクチャ議論|Seiji Takahashi@ベースマキナ
  • 何がDDDをDDDにするのか / what make DDD to DDD ?

    DDDを学習・実践において多く見受けられる混乱と、それに対する現時点での自分の回答

    何がDDDをDDDにするのか / what make DDD to DDD ?
    braitom
    braitom 2020/01/18
  • ドメイン駆動設計のドメイン駆動とはなにか - 日記マン

    ここ最近の仕事は、かなり硬直化した自社サービスをリファクタリングしている。 そのなかでアプローチのひとつとして、ドメイン駆動設計を勉強して、取り組んでいる。 エバンスDDDを手に取り、ネットで様々な知見を調べながらも、理解が定着してきている。 ここらでいちど、ドメイン駆動設計について、理解をアウトプットしておく。 ドメイン駆動設計は「ビジネスの複雑さ」に立ち向かう 「ドメイン駆動」の設計とは、ドメインに特化した型設計 ドメイン駆動設計の導入の決め手はドメインロジックが複雑かどうか レイヤードアーキテクチャは、ドメイン層を隔離する 自社サービスをグロースさせていくためにも、ドメインの洞察・抽出・再設計を繰り返す おすすめの書籍・資料 エバンスDDDや実践DDDは初学はとても苦しんだ。 入門するなら、これらのを手に取る前に、増田さんの素晴らしい資料たちがおすすめ。 増田さんのスライド,

    ドメイン駆動設計のドメイン駆動とはなにか - 日記マン
    braitom
    braitom 2019/03/30
  • ドメイン駆動設計、どこまでやるべき? 開発現場の“問題”を乗り越えるためにできること

    ドメイン駆動設計、どこまでやるべき? 開発現場の“問題”を乗り越えるためにできること ゲーム開発におけるドメイン駆動設計とサーバレスアーキテクチャ #1/2 2019年2月7日、『神姫PROJECT』などソーシャルゲームの企画・開発を手がける株式会社テクロスが主催するイベント「TECH x GAME COLLEGE」が開催されました。渋谷発エンジニア勉強会「ヒカ☆ラボ」とコラボレーションした今回のテーマは「ゲーム開発におけるドメイン駆動設計とサーバレスアーキテクチャ」。過去にTECH x GAME COLLEGEにて講演を行ったギルドワークス株式会社取締役の増田亨氏と、Game Server Services株式会社代表取締役社長CEOの丹羽一智氏をゲストに招き、参加者から事前に募った質問に解答していただきました。前半のパートでは、ドメイン駆動設計(DDD)やFaaSの未来、チームビルデ

    ドメイン駆動設計、どこまでやるべき? 開発現場の“問題”を乗り越えるためにできること
    braitom
    braitom 2019/03/23
    ふむ。“「動けばいい」とか「動いているものをなんで変えなきゃいけないんだ?」という価値観を持っていらっしゃる方も相当数いるのでその中でドメイン駆動設計をやろうとするとそれはもう絶対成立しません”
  • ドメイン駆動設計 本格入門

    ドメイン駆動設計の考え方、ドメイン駆動設計を理解する三つのキーワード、エヴァンスのススメ、レガシーに立ち向かう、マイクロサービスとドメイン駆動設計Read less

    ドメイン駆動設計 本格入門
    braitom
    braitom 2019/03/23
    ドメイン駆動設計について。なぜドメイン駆動設計をするのか、理解するためのキーワードの解説、DDD本の読み方、マイクロサービスアーキテクチャへの適応についてなど。
  • ドメイン駆動設計のエンティティとクリーンアーキテクチャのエンティティ

    概要 ドメイン駆動設計の有名な用語にエンティティというものがあります。 ほとんどドメイン駆動設計の代名詞のひとつと言っても過言でないほどの有名さを誇るこちらの用語ですが、なんとクリーンアーキテクチャにもまったく同じエンティティという用語が出てきます。 このエンティティという用語は名前こそ同じではありますが、実は完全に同じものを指しているわけではありません。 とはいえまったく違うものである、というわけでもありません。 要するにややこしい。 この記事はこのややこしい用語について、ドメイン駆動設計とクリーンアーキテクチャのそれぞれのエンティティが何を指していて、それがどのように異なっているのかについてを解説します。 それぞれのエンティティ そもそもエンティティとは何でしょうか。 英和辞典を引くとエンティティとは「存在[実在]物」といった意味が出てきます。 これはかなり抽象的な意味です。 つまり、

    ドメイン駆動設計のエンティティとクリーンアーキテクチャのエンティティ
  • Whyから始めるドメイン駆動設計 - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? この記事は、ドメイン駆動設計 Advent Calendar #1 の18日目の記事です。 ドメイン駆動設計をどうやって実現していくかについては、既にたくさんの素晴らしい記事があります。 しかし、ドメイン駆動設計をなぜやるのかについて考察した記事はそれほど多くないように思いました。 この記事では、なぜドメイン駆動設計が大事なのかについて考察することで、ドメイン駆動設計の勘所を追究していきます。 自分なりに噛み砕いたあとの文章なので、もし変な所があれば指摘頂けると大変助かります。 DDDを駆動している原則 エリック・エヴァンスのドメイン駆

    Whyから始めるドメイン駆動設計 - Qiita
    braitom
    braitom 2018/12/22
    DDDをなぜやるのかについて。ソフトウエア開発をする中で出てくる問題とそれを解決するためにDDDの原則がどのように役立つかが書かれている。
  • DDDをチームに導入する際に考慮した4つのこと - Qiita

    この記事はドメイン駆動設計 #1 Advent Calendar 2018 20日目の記事です。 チーム内導入 = DDDでシステムを組み上げたよーではなくて チームでDDDを使ってシステム開発しようという合意をスムーズにとるために考えたことを共有します 状況説明 状況がわからないと想像しづらいと思うので、まずは簡単な状況説明を... 私個人について プログラマ歴5年 golang suki! 前チームでDDDに則ったシステム開発経験済み 個人的には設計周りの経験は浅い チームの強い人が設計してたので、個人的には軽量DDDレベルで開発してた 軽量DDDにも満たないかも... 複数の副業先で前チームの知識+副業先の強い人の意見をもらいながら軽量DDDで開発を行い、ディレクトリ構成をupdateし続けていた あらまし 全社的にレガシー脱出しようという機運 その流れでプロダクトを5つ保守するチー

    DDDをチームに導入する際に考慮した4つのこと - Qiita
    braitom
    braitom 2018/12/22
    DDDを導入するときのアプローチ方法について。DDDについて共有して意識させる、学習時間の確保と学習体制を整えるなど。好感触だったことうまくいかなかったことについても書かれている。
  • 「実践ドメイン駆動設計」 から理解するDDD (2018年11月)

    2. DDD(ドメイン駆動設計)とは  ドメイン駆動設計(DDD: Domain-Driven Design)とは 2003年にEric Evans氏が提唱した「顧客と開発者が業務 を戦略的に理解し、共通の言葉を使いながらシステム を発展させる手法」です。  DDDの登場から15年以上が経ち、DDDは着実に普及し つつあります。  セッションでは、2013年にVaughn Vernon氏が発表 した書籍「実践ドメイン駆動設計(通称:IDDD)」の 流れに沿って、DDDの基からモデリング手法までを 幅広く紹介します。 3. IDDD(実践ドメイン駆動設計)とは 原書名:略称(日語翻 訳名) 著者(翻訳・監修) 原書発売年 (日語版発 売年) 内容 日語版の 総ページ数 Domain-Driven Design - Tackling Complexity in the Hear

    「実践ドメイン駆動設計」 から理解するDDD (2018年11月)
    braitom
    braitom 2018/11/29
    実践ドメイン駆動設計にそったDDDの説明。
  • 設計のための、問題の捉え方〜ドメイン知識の暗黙知を形式知に〜(まとめ版) - Speaker Deck

    「2018/11/8 設計Night2018 powered by Classi」で発表した資料です 当日の資料のページ数が多すぎた(140ページ)ので、2/3くらいにまとめました

    設計のための、問題の捉え方〜ドメイン知識の暗黙知を形式知に〜(まとめ版) - Speaker Deck
    braitom
    braitom 2018/11/13
    問題を捉えるとはどういうことか、ドメイン知識と暗黙知の関係、暗黙知になりやすいもの、暗黙知を形式知にする方法などがまとめられている。
  • 新しいモデリング手法: EventStormingをはじめるための準備 - yoskhdia’s diary

    EventStorming (イベントストーミング) というモデリング手法があります。 www.eventstorming.com EventStorming is a flexible workshop format for collaborative exploration of complex business domains. EventStormingは、複雑なビジネスドメインを協同的に探求するための柔軟なワークショップ形式のひとつです。(意訳) 考案者はAlberto Brandolini氏で2013年にはブログに最初の投稿がされています。 海外での認知度は高く*1、Eric Evans氏のプレゼンテーションの中でも強力な手法であると言及*2されています。 近々、この手法を試せる機会が来そうなので、そのやり方について(私見を交えつつ)まとめてみるエントリです。 注意 現在進行系

    新しいモデリング手法: EventStormingをはじめるための準備 - yoskhdia’s diary
    braitom
    braitom 2018/11/12
    ふむ。“EventStormingは、複雑なビジネスドメインを協同的に探求するための柔軟なワークショップ形式のひとつです”
  • ドメインモデリングの始め方 - Speaker Deck

    ドメイン駆動設計の考え方は書籍を読むとわかりますが、いざモデリングを実践しようとすると、どこから手を付けていいかわからない、ドメインモデリングの始め方がよくわからないという意見を聞きます。 このスライド資料では、そんな悩みを持つ皆さんに向けて「ドメインモデルを見つけ出し・実装に落とし・改善していく」方…

    ドメインモデリングの始め方 - Speaker Deck
    braitom
    braitom 2018/10/31
  • ボトムアップドメイン駆動設計 前編

    怖さの原因は? 辛さの原因は? ドメイン駆動設計の用語は2パターン 挫折した方がもう一度手に取ってみたいと思ったら、私の勝ちです C# だと比較ってこんな感じに実装します 勿論こんなこと毎回やってられませんから どうなりますか? コードで表すと 識別子の値オブジェクトを作って(任意 その値オブジェクトを識別子にする 同じ属性でも 名字を変更しました 識別子を使います 例えば‘ MySql を使うと 注目すべきは このコンストラクタで受け取った userRepository これが InMemoryUserRepository か UserRepository かで動作が変わる アプリケーションサービスはユースケースを強く意識します ボトムアップドメイン駆動設計 前編 1. ボトムアップ ドメイン駆動設計 成瀬 允宣2018/10/23 in GMO Yours 1 2. 自己紹介 • 成瀬

    ボトムアップドメイン駆動設計 前編
    braitom
    braitom 2018/10/25
  • DDDを実践できるエンジニアを育成するための取り組みについて

    2. 2 © BIGLOBE Inc. 自己紹介-経歴 SRE ミドルウェアの標準化 規模大きめサービスのシステムアーキテクチャ設計・運用 開発 社内向け業務システム開発 会員管理システム開発 BIGLOBEモバイル関連のシステム開発 3. 3 © BIGLOBE Inc. BIGLOBEモバイル 2017年3月の国内MVNO利用状況調査(MM総研調べ)にて、 お客さま総合満足度No.1をいただきました

    DDDを実践できるエンジニアを育成するための取り組みについて
    braitom
    braitom 2018/09/28
    DDDをチームに学習してもらう方法について。練習問題を用意してそれを解きながら共通認識を育てていく
  • ざっくりわかるDDD (戦術的のみ)

    部活の制作合宿で発表したスライドです.

    ざっくりわかるDDD (戦術的のみ)
    braitom
    braitom 2018/09/07
    ドメイン駆動開発をざっくりと説明している資料。
  • DDD失敗談を話して学んだこと

    関西Javaエンジニアの会(関ジャバ) '17 10月度 - connpass https://kanjava.connpass.com/event/68169/ での発表資料です。

    DDD失敗談を話して学んだこと
    braitom
    braitom 2017/10/22
    DDDやろうとして失敗した時の反省点と今度やるとき実戦したいことが書かれている。
  • 普段使いのDDD

    #KanJavaPartyA2

    普段使いのDDD
    braitom
    braitom 2017/06/25
    DDDに関することが簡潔にまとめられている。DDDが目標としていること前提としていることチームで共有しておくことなどが書かれている。小さな開発でも普段からこれらのサイクルを回しておいて慣れておくことが大事
  • ドメイン駆動設計基礎講座〜戦略編〜

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

    ドメイン駆動設計基礎講座〜戦略編〜
    braitom
    braitom 2017/03/17
  • ドメイン駆動設計について 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 で登壇しました。