Slide 1

Slide 1 text

DDD から得たもの DDD から得たもの @kanayannet Gunma.web #30

Slide 2

Slide 2 text

自己紹介 自己紹介 名前 : 金澤 宏昭 Twitter : @kanayannet Facebook : HiroakiKanazawa 元酒屋、プログラミングは独学

Slide 3

Slide 3 text

DDD と 私 DDD と 私 10 年近く前 本屋さんで 設計の本を探していると..

Slide 4

Slide 4 text

No content

Slide 5

Slide 5 text

解らない >< 解らない >< 難しかった。 読み返したけど理解不能(><)

Slide 6

Slide 6 text

原因? 原因? 単純に経験不足 言葉( ドメイン) に囚われすぎ( だったか?) オブジェクト指向を覚え始めたばかり。

Slide 7

Slide 7 text

今回話すこと 今回話すこと 10 年前との違い 読んだ本 得たもの まとめ

Slide 8

Slide 8 text

10 年前との違い 10 年前との違い

Slide 9

Slide 9 text

名前空間の理解 名前空間の理解 正直に言うと.. 10 年前は分けずに書いていた。 名前空間の重要性を理解してない。

Slide 10

Slide 10 text

読めるコードとは? 読めるコードとは? 可読性の大切さを理解できるようになっ た。 1 月経って読み返しても読めるか? 1 ヶ月後の自分は別人

Slide 11

Slide 11 text

その他いろいろ その他いろいろ TDD/BDD 複数の言語を覚える 自然言語に近い形で書く

Slide 12

Slide 12 text

読んだ本 読んだ本

Slide 13

Slide 13 text

感想 感想 順をおって丁寧に解説してくださる感が 順をおって丁寧に解説してくださる感が 非常によかったです! 非常によかったです!

Slide 14

Slide 14 text

例 例 chapter 1 小さくまとめて解りやすくする なぜソフトウェアの変更は大変なのか

Slide 15

Slide 15 text

冒頭から ドメイン駆動 じゃない! 冒頭から ドメイン駆動 じゃない! 助かります! 助かります!

Slide 16

Slide 16 text

得たもの 得たもの

Slide 17

Slide 17 text

ドメインモデル ドメインモデル システムに関わるさまざまな実体とそれら の関係を説明するシステムの概念モデルで ある。 引用元: wikipedia

Slide 18

Slide 18 text

なんの為に なんの為に 業務知識、業務用語 を解りやすいよう概念 モデルにする 行き違いを起こさないように、情報共有す る etc..

Slide 19

Slide 19 text

がっちりとしたルール? がっちりとしたルール? なんでも、それに従うってのとは違うかも 解りやすく表現するために 伝わりやすいように

Slide 20

Slide 20 text

共有して育てていく 共有して育てていく 「名前はこっちの方が解りやすいかも? 」 「いいね。じゃあ変えるか」

Slide 21

Slide 21 text

実装に集中すると 実装に集中すると アルゴリズムに目が行きがちだが..

Slide 22

Slide 22 text

振り返ってみる 振り返ってみる 「人間 の やりたいことを 正しく 理解 す る」 「人間 の やりたいことを 動く ソフトウェ ア として 実現する方法を考える」 引用元 : 現場で役立つシステム設計の原則

Slide 23

Slide 23 text

つまずいた時 つまずいた時 という時ほど思い返した方がよいかも?

Slide 24

Slide 24 text

ユビキタス言語 ユビキタス言語 と聞くと難しく聞こえるが.. と聞くと難しく聞こえるが..

Slide 25

Slide 25 text

同じ意味の複数の言葉が乱立 同じ意味の複数の言葉が乱立 行き違い起きそう

Slide 26

Slide 26 text

単純な業務用語という意味ではない 単純な業務用語という意味ではない 整理する。 行き違いを起きなくする。

Slide 27

Slide 27 text

DDD は DDD は 考えるキッカケを貰える。 考えるキッカケを貰える。

Slide 28

Slide 28 text

仕様 仕様 数年前: Tochigi RubyKaigi05 基調講演

Slide 29

Slide 29 text

by 酒匂 寛さん by 酒匂 寛さん 「仕様は課題と設計を繋ぐものです」 「仕様は課題と設計を繋ぐものです」

Slide 30

Slide 30 text

No content

Slide 31

Slide 31 text

by 和田 卓人 さん by 和田 卓人 さん simple と easy の違い 一つのもの , 客観的である

Slide 32

Slide 32 text

何か通じるものがあるのかな? 何か通じるものがあるのかな? と感じました と感じました

Slide 33

Slide 33 text

まとめ まとめ 10 年越しに、自分の理解が 10 年越しに、自分の理解が ようやく追いついた感 ようやく追いついた感

Slide 34

Slide 34 text

ご清聴 ご清聴 ありがとうございました! ありがとうございました!

Slide 35

Slide 35 text

No content

Slide 36

Slide 36 text

No content