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が最近リリースされ、重要な変...
![ドメインストーリテリングを使ってコンテキスト境界を見つけ出す](https://cdn-ak-scissors.b.st-hatena.com/image/square/7d1ee5c207da48b7f4c6a6b805f8693129103f7e/height=288;version=1;width=512/https%3A%2F%2Fcdn.infoq.com%2Fstatics_s2_20240521072754%2Fstyles%2Fstatic%2Fimages%2Flogo%2Flogo-big.jpg)
speakerdeck.com 第3回Reactive System Meetup in 西新宿のLTで発表をしてきました。 reactive-shinjuku.connpass.com LTという都合上、含めたかったけれど泣く泣く削ったボツネタも併せて補足するエントリです。 (例によって長いです。) Reactive Systemの文脈でドメインイベントを使うモチベーション 今回のLTの募集要項が「リアクティブに関連すればなんでも」なのに、思いっきりDDDの話じゃん!というのが、もしかしたらあるかもしれませんので、ここで補足しておきます。 引用:The Reactive Manifesto 上図の通りMessage Drivenがリアクティブシステムでの基盤となります。 このMessageは大きく3種類あることはスライドで述べましたが、その内のEvent Messageはリアクティブシス
autoscale: true theme: Plain Jane,5 複雑なJavaScriptアプリケーションを考えながら作る話 自己紹介 Name : azu Twitter : @azu_re Website: Web scratch, JSer.info #jsprimerを書いています JavaScript入門書に興味ある人はウォッチ :star: :warning: 注意 :warning: 作成するアプリケーションによって必要な構造は異なります 今回の話はある程度の規模で複雑性を持つクライアントサイド ライブラリ抜きで数万LOC >= 長期的にメンテンナンスや変更が発生するアプリケーション サーバサイドレンダリングはしないクライアントアプリケーション 3行でOK 複雑なJavaScriptアプリケーションを作るにあたりドメインモデルをどう実装するか悩んだ 色々と試行錯誤した
ドメイン駆動設計を取り入れてみて感じたこと。 はじめまして、FiNCのWeb Applicationエンジニアの重村です。 ウェルネスサーベイというサービスを作っています。 FiNCではマイクロサービスと呼ばれるアーキテクチャパターンを積極的に採用しており、十数個のサービスがあります。 私が担当している「ウェルネスサーベイ」は、FiNCが提供している主軸サービスに導入されている重要なサービスになっており、使いやすい機能やわかりやすいデザインを考えるだけでなく、良い設計や保守性の高いコードを書くことを求められます。 そこで私はドメイン駆動設計という良いコードを書くためのノウハウを、このプロジェクトに取り入れようとしてきました。 今回は、プロジェクトに取り入れたドメイン駆動設計の5つの方法と、それらに対して感じたことを紹介したいと思います。 ドメイン駆動設計の知識や考え方ついては、以下の資料に
先日、DevLOVEで発表した「コードで学ぶドメイン駆動設計入門」ですが、入門としながらも難しかったかもしれません。モデリングの話は難しい方の話題なので仕方ないのですが、できるだけわかりやすく補足するブログを書いてみたいと思います。 まず、レイヤードアーキテクチャの話ですが、こちらのスライドを参照してください。 DEVLOVE HangarFlight で話したスライド&ソースコード - じゅんいち☆かとうの技術日誌 平たく言うと、そのアプリケーションが解決する問題の領域がドメインです。ドメインとそれ以外のものをごっちゃにしないようにしたのが、ドメイン駆動設計だと考えればよいと思います。 一般的に業務システムでは、対象業務がドメインに成り得ますので、ドメインは業務に準えて語られることが多いと思います。ドメインに登場する概念をユビキタス言語*1として定義し、モデルに落としこむというのが設計の
[技術講座] DDD難民に捧げる Domain-Driven Designのエッセンス 第 1 回 ドメイン駆動設計とは 第 2 回 DDDの基礎と実践 第 3 回 大規模なプロジェクトへの適用 DDDパターンカタログ パターン名 参考訳 I. Putting the Domain Model to Work Ubiquitous Language ユビキタス言語 Model-Driven Design モデル駆動設計 Hands-On Modeler 実践的モデラー II. Building Blocks of a Model-Driven Design Layered Architecture 層状アーキテクチャ Smart UI (アンチパターン) 利口なUI Entities エンティティ Value Objects 値オブジェクト Services サービス Modules モジ
ドメイン・モデルと開発に注力しないと"太ったサービス・レイヤ"と"ドメイン・モデル貧血症"によるアプリケーション・アーキテクチャになってしまいます。この場合、ファサード・クラス(通常はステートレス・セッション・ビーン)にどんどんビジネス・ロジックが溜まっていき、ドメイン・オブジェクトがgetter/setterからなる単なるデータの運び屋のようになってしまいます。このアプローチをとるとドメイン固有のビジネス・ロジックやルールが複数の異なるファサード・クラスに散在(時には重複)することになります。 "ドメイン・モデル貧血症"はたいていの場合、コストに見合いません。他の企業と比較して利点があるわけではなく、このアーキテクチャの下でビジネス要求の変化を実装するには開発と本番環境へのデプロイするのに時間がかかり過ぎます。 DDD実装プロジェクトにおけるいろいろなアーキテクチャや設計について見ていく
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く