Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
DDDから得たもの
Search
kanayannet
January 21, 2018
Programming
1.5k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
DDDから得たもの
kanayannet
January 21, 2018
More Decks by kanayannet
See All by kanayannet
リファクタリング ハーネス
kanayannet
1
88
厳密な定義
kanayannet
0
110
Mcp Training
kanayannet
0
230
MCP で「こいつ動くぞ」
kanayannet
0
150
無関心の谷
kanayannet
0
1.3k
生成AIの使いどころ
kanayannet
0
260
github copilot と 心理的安全性
kanayannet
0
290
FW と ライブラリ の考え方
kanayannet
0
280
TDDと今まで
kanayannet
0
710
Other Decks in Programming
See All in Programming
<title><a id="</title>君はこのHTMLをパースできるか"></a></title> #雑LT_study
pizzacat83
0
120
5分で問診!Composer セキュリティ健康診断
codmoninc
0
700
GDG Korea Android: 2026 I/O Extended ~ What's new in Android development tools
pluu
0
190
AIエージェントで 変わるAndroid開発環境
takahirom
2
740
jsmini JavaScript Engine を作ってみた話
yosuke_furukawa
PRO
0
260
地域 SRE コミュニティ最前線 - ホンマでっかSRE勉強会
tk3fftk
0
290
音楽のための関数型プログラミング言語mimiumにおける多段階計算の活用
tomoyanonymous
1
370
今さら聞けない .NET CLI
htkym
0
160
Foundation Models frameworkで画像分析
ryodeveloper
1
160
継続モナドとリアクティブプログラミング
yukikurage
3
660
TSX の <Hoge<Fuga>> という構文に驚いた話 / tsx-type-argument-syntax
kanaru0928
0
130
Built Our Own Background Agent at LayerX #aidevex_findy
layerx
PRO
9
3.8k
Featured
See All Featured
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
350
The untapped power of vector embeddings
frankvandijk
2
1.8k
Git: the NoSQL Database
bkeepers
PRO
432
67k
Build your cross-platform service in a week with App Engine
jlugia
234
18k
Designing for humans not robots
tammielis
254
26k
We Are The Robots
honzajavorek
0
290
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
2
430
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1.4k
The #1 spot is gone: here's how to win anyway
tamaranovitovic
3
1.1k
The browser strikes back
jonoalderson
0
1.4k
Facilitating Awesome Meetings
lara
57
7k
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
620
Transcript
DDD から得たもの DDD から得たもの @kanayannet Gunma.web #30
自己紹介 自己紹介 名前 : 金澤 宏昭 Twitter : @kanayannet Facebook
: HiroakiKanazawa 元酒屋、プログラミングは独学
DDD と 私 DDD と 私 10 年近く前 本屋さんで 設計の本を探していると..
None
解らない >< 解らない >< 難しかった。 読み返したけど理解不能(><)
原因? 原因? 単純に経験不足 言葉( ドメイン) に囚われすぎ( だったか?) オブジェクト指向を覚え始めたばかり。
今回話すこと 今回話すこと 10 年前との違い 読んだ本 得たもの まとめ
10 年前との違い 10 年前との違い
名前空間の理解 名前空間の理解 正直に言うと.. 10 年前は分けずに書いていた。 名前空間の重要性を理解してない。
読めるコードとは? 読めるコードとは? 可読性の大切さを理解できるようになっ た。 1 月経って読み返しても読めるか? 1 ヶ月後の自分は別人
その他いろいろ その他いろいろ TDD/BDD 複数の言語を覚える 自然言語に近い形で書く
読んだ本 読んだ本
感想 感想 順をおって丁寧に解説してくださる感が 順をおって丁寧に解説してくださる感が 非常によかったです! 非常によかったです!
例 例 chapter 1 小さくまとめて解りやすくする なぜソフトウェアの変更は大変なのか
冒頭から ドメイン駆動 じゃない! 冒頭から ドメイン駆動 じゃない! 助かります! 助かります!
得たもの 得たもの
ドメインモデル ドメインモデル システムに関わるさまざまな実体とそれら の関係を説明するシステムの概念モデルで ある。 引用元: wikipedia
なんの為に なんの為に 業務知識、業務用語 を解りやすいよう概念 モデルにする 行き違いを起こさないように、情報共有す る etc..
がっちりとしたルール? がっちりとしたルール? なんでも、それに従うってのとは違うかも 解りやすく表現するために 伝わりやすいように
共有して育てていく 共有して育てていく 「名前はこっちの方が解りやすいかも? 」 「いいね。じゃあ変えるか」
実装に集中すると 実装に集中すると アルゴリズムに目が行きがちだが..
振り返ってみる 振り返ってみる 「人間 の やりたいことを 正しく 理解 す る」 「人間
の やりたいことを 動く ソフトウェ ア として 実現する方法を考える」 引用元 : 現場で役立つシステム設計の原則
つまずいた時 つまずいた時 という時ほど思い返した方がよいかも?
ユビキタス言語 ユビキタス言語 と聞くと難しく聞こえるが.. と聞くと難しく聞こえるが..
同じ意味の複数の言葉が乱立 同じ意味の複数の言葉が乱立 行き違い起きそう
単純な業務用語という意味ではない 単純な業務用語という意味ではない 整理する。 行き違いを起きなくする。
DDD は DDD は 考えるキッカケを貰える。 考えるキッカケを貰える。
仕様 仕様 数年前: Tochigi RubyKaigi05 基調講演
by 酒匂 寛さん by 酒匂 寛さん 「仕様は課題と設計を繋ぐものです」 「仕様は課題と設計を繋ぐものです」
None
by 和田 卓人 さん by 和田 卓人 さん simple と
easy の違い 一つのもの , 客観的である
何か通じるものがあるのかな? 何か通じるものがあるのかな? と感じました と感じました
まとめ まとめ 10 年越しに、自分の理解が 10 年越しに、自分の理解が ようやく追いついた感 ようやく追いついた感
ご清聴 ご清聴 ありがとうございました! ありがとうございました!
None
None