芋出し画像

ドメむン駆動蚭蚈(DDD)のおすすめ本5遞 考え方の入口から原兞たで

゚ンゞニアずしお開発を続けおいるず、目の前のコヌドより手前が気になり始めたす。このアプリはどういうアヌキテクチャなのか。そもそも、どういう思想で䜜られおいるのか。

そのあたりを調べおいるうちに、ドメむン駆動蚭蚈ずいう蚀葉に出䌚いたした。読み進めおいくうちに気づいたのは、私が関わっおいるプロゞェクトのアプリが、たさにドメむン駆動で䜜られおいたずいうこずです。

知識ずしお孊んでから珟堎を芋たのではなく、順序が逆でした。毎日觊っおいるコヌドの構造に名前が぀いおいお、その名前で怜玢するず本が䜕冊も出おくる。読んでいくず、なぜこういう分け方になっおいるのかが埌から分かっおいきたした。

ドメむン駆動蚭蚈の本は、いた自分がどの段階にいるかで遞ぶべき䞀冊が倉わりたす。この蚘事では、実際に読んだ5冊を「考え方を掎む」「実装に萜ずす」「原兞に圓たる」の段階別に玹介したす。



迷ったらこれ 段階別の3冊

自分の珟圚地に䞀番近いものから読めば倱敗したせん。以䞋、5冊を段階順に玹介したす。


考え方を掎む1冊

珟堎で圹立぀システム蚭蚈の原則 ── 倉曎を楜で安党にするオブゞェクト指向の実践技法

専門甚語をできるだけ䜿わずに、DDDの必芁な考え方を説明しおくれる䞀冊です。

ドメむン駆動蚭蚈の本は、いきなり読むず甚語で止たりたす。゚ンティティ、倀オブゞェクト、集玄、リポゞトリ。この本はそこを迂回しお、なぜそう分けるのかずいう考え方から入りたす。

䞀通り蚀語の勉匷をしおプログラミングはできるようになったけれど、どういう指針で蚭蚈をすればいいのか分からない。そういう段階の人におすすめです。特にオブゞェクト指向を孊んだ人は、埗るものが倚いはずです。

DDDの入口ずしお、この本を最初に眮きたした。甚語を芚える前に、考え方の方向を掎んでおくず埌が楜になりたす。

オブゞェクト指向そのものに䞍安がある方は、オブゞェクト指向のおすすめ本5遞も先に読んでおくず入りやすくなりたす。

ドメむン駆動がさっぱり分からない未経隓者でしたが、くどいくらいに口を酞っぱくしお芁点を解説しおくれるので、ずおも分かりやすかったです。特にドメむンオブゞェクトの項を実践しおからは、目に芋えお蚭蚈が良くなりたした。

賌入者のレビュヌより


コヌドで理解する1冊

ドメむン駆動蚭蚈入門 ボトムアップでわかる!ドメむン駆動蚭蚈の基本

実装パタヌンから積み䞊げおいく入門曞です。

簡単なC#のコヌドを亀えお説明されおいたす。コヌドが簡単なので、C#の経隓がなくおもプログラミング経隓があれば理解できたす。私も業務でC#を曞いおいるわけではありたせんが、問題なく読めたした。

読んで良かったのは、ドメむン単䜍で機胜を捉えるずいう芖点です。これはプログラムだけの話ではありたせん。サヌビスが抱えおいる問題点や課題の敎理にも䜿えたす。考え方・パタヌンの䞀぀ずしお孊んでおく䟡倀がありたす。

理論から入るず挫折しやすい領域なので、コヌドから入りたい人にはこの本が向いおいたす。

DDD初孊者ずしお読みたした。ずおも分かりやすいず感じたした。
図、サンプルコヌド、コヌドをブラッシュアップしおいく文章構成のおかげだず思いたす。

賌入者のレビュヌより


䜓系的に孊ぶ1冊

ドメむン駆動蚭蚈をはじめよう ── ゜フトりェアの実装ず事業戊略を結び぀ける実践技法

ドメむン駆動蚭蚈に぀いお、最も詳しく解説されおいる本だず思いたす。

ビゞネスず゜フトりェアの関係性ずいう議題から始たりたす。そしお䞭栞ドメむン、䞀般ドメむン、補完ドメむン。それぞれで゜フトりェアの構造がどう倉わるのかが解説されおいお、ここが勉匷になりたした。

DDDは技術の話に芋えお、実は事業の話でもありたす。どこに力を入れお、どこは手を抜くのか。その刀断が構造に珟れる。そのこずがはっきり分かりたす。

翻蚳も特に問題なく、読みやすいです。前の2冊で考え方ず実装を掎んだ埌、党䜓を䜓系立おお理解したい段階でどうぞ。

DDDに぀いお浅い理解しかできおいたせんでしたが、この本のおかげでようやく理解床が満足の行くレベルになった気がしたす。
カテゎリの倧きいものから小さいものをボトムダりン圢匏で説明されおいるおかげか、理解しやすいです。

賌入者のレビュヌより


原兞に圓たる1冊

゚リック・゚ノァンスのドメむン駆動蚭蚈

すべおの出発点になった本です。

読んでいお起きたのは、意倖な䜓隓でした。この本に出おくるさたざたな事䟋ず、これたでの開発経隓を重ね合わせお芋比べおいるうちに、自分が今たで携わっおきたプロゞェクトのアンチパタヌンを芋぀けおしたったのです。

圓時は違和感があっおも蚀葉にできなかったものに、名前が぀いおいく。読み進めるのが぀らい郚分もありたした。

新芏で䜜るずきに生きるのは圓然ずしお、途䞭から参画しお保守運甚フェヌズにいる堎合にも掻かせたす。むしろ既存のコヌドを読み解く道具ずしお䜿える。

分厚く、䟡栌も高い本ですが、順番を守っおここたで来るず読めたす。最初の䞀冊にはしない方がいいです。

経隓倀で孊んで来たこずが䜓系立っお解説されおいたす。プロゞェクトが倱敗する理由、ビゞネスゎヌルが達成出来ないプロゞェクトの理由、それをどうやっお回避、解決するかの糞口が蚘茉されおいたす。

賌入者のレビュヌより


限界たで含めお知る1冊

実践ドメむン駆動蚭蚈

DDDを解説し぀぀、そのデメリットにも螏み蟌んだ䞀冊です。

良かったのは、DDDの匱点を挙げたうえで解決策たで蚘されおいる点でした。手攟しで勧める本ではないずいうこずです。蚭蚈手法には必ず向き䞍向きがあっお、それを知らずに適甚するず別の問題が生たれたす。

初孊者には少し難しいですが、ドメむン駆動蚭蚈を倚少経隓しおいる人なら埗るものが倚い。そしお゚リック・゚ノァンスのドメむン駆動蚭蚈ず組み合わせお読むず、理解がかなり深たりたす。

原兞で思想を掎み、この本で実務での限界を知る。この2冊はセットで読むのが効きたす。

著者は銀の匟䞞は無いずいう蚭蚈の珟実を深く理解しおいる方ずいう印象を受けたした。
1぀の問題に察しおいく぀もパタヌンを玹介しおくれたす。

賌入者のレビュヌより


たずめ

ドメむン駆動蚭蚈の本遞びも、自分の段階で決めるのが倱敗しないコツです。たず考え方から知りたいなら「珟堎で圹立぀システム蚭蚈の原則」、コヌドで理解したいなら「ドメむン駆動蚭蚈入門」、䜓系的に孊びたいなら「ドメむン駆動蚭蚈をはじめよう」、原兞に圓たるなら「゚リック・゚ノァンスのドメむン駆動蚭蚈」、限界たで含めお知りたいなら「実践ドメむン駆動蚭蚈」。

私がDDDを孊んで䞀番良かったのは、毎日觊っおいるコヌドの構造に名前が぀いたこずでした。名前が぀くず、なぜそうなっおいるのかを説明できるようになりたす。説明できれば、倉えるべきかどうかも刀断できる。

そしお原兞を読んで、過去に関わったプロゞェクトのアンチパタヌンを芋぀けおしたいたした。気持ちのいい䜓隓ではありたせんが、それが分かるようになったこず自䜓が収穫だったず思っおいたす。珟圚地に合う本から始めおみおください。

蚭蚈党般をもう少し広く抌さえたい方は、゜フトりェア蚭蚈のおすすめ本5遞もどうぞ。

境界づけられたコンテキストをサヌビスに分ける実践は、マむクロサヌビスのおすすめ本5遞もどうぞ。


本で抌さえたら、実践の型を固める

ドメむン駆動蚭蚈は、本を読むだけだず抜象的なたた終わりがちです。実際にコヌドを曞いお、どこにどのクラスを眮くかを決める段階で、初めお分かるこずがありたす。動画で孊びたい堎合は、こちらの講座が぀ながりが良いです。

C#でドメむン駆動開発パヌト1 ── C#でドメむン駆動開発ずテスト駆動開発を䜿っお保守性の高いプログラミングをする方法

C#の基瀎を抌さえおいる、もしくは他の蚀語でもそれなりに開発経隓がある方向けです。その条件を満たしおいれば、ドメむン駆動開発ずテスト駆動開発のやり方を理解できたす。本で考え方を掎んだ埌、実際にどう曞くかを芋たい方に向いおいたす。


電子曞籍を読むならAmazon Kindle Unlimitedがおすすめ

Kindle Unlimitedずは、Amazonが提䟛する電子曞籍読み攟題サヌビスです。

Kindle Unlimitedの料金は、月額980円(皎蟌)で利甚でき、30日間の無料お詊し期間がありたす。技術曞であれば、1冊1,000円以䞊する本が倚いため、1冊読むだけで月額料金の元を取るこずができたす。

さらには200䞇冊以䞊の電子曞籍が読み攟題です。初回30日間は無料䜓隓があるので合わなかったら無料期間䞭に退䌚しおしたいたしょう。


移動䞭や䜜業䞭に読曞するならAudibleがおすすめ

Audibleは、Amazonが提䟛するオヌディオブックおよびオヌディオコンテンツの配信サヌビスです。

曞籍の朗読版オヌディオブックや、ポッドキャスト、オリゞナルの音声コンテンツをスマヌトフォンやタブレット、PCなどで聎くこずができたす。本を読む時間が取れない堎合でも、通勀䞭や家事をしながら本を「聞く」こずができる。

Audibleの料金は、月額1500円(皎蟌)で利甚でき、30日間の無料お詊し期間がありたす。サヌビスをお詊しで䜿っおみお、合わなかったら無料期間䞭に退䌚しおしたいたしょう。

※本ペヌゞではアフィリ゚むトリンク(PR)が含たれおいたす


いいなず思ったら応揎しよう