DDD Night!!に行ってきました
モデルベース開発コミュニティさん主催の以下のイベントに参加してきました。
ドメイン駆動設計は、気になっている設計手法なので第一人者とも言える
増田さんの話は聞きたいと思ってました。
資料も公開されています。
www.slideshare.net
当日は時間が足りず、後半の説明が駆け足になってしまったのが残念でした。
ただ、次回またやりましょうと増田さんから提案があり、会場から拍手が起こりました。
深いモデル/しなやかな設計とはどういうものか、
コードレベルでみられる機会は欲しいですね。
ドメイン駆動設計の情報発信は、成功例はもちろん失敗例もどんどん発信していってほしいとのことでした。
困っていることや失敗してしまったことなど発信できるようにしていきたいと思います。
DDD本
⇒最初は良い本だと思わなかった。
現場で取り組み始めて8年
⇒5人チームで半年~1年半
要点を理解してチームで共有できないと、本をいくら読んでも先に進めない。
オブジェクトコミュニティの良い習慣
・実装パターン
Amazon.co.jp| 実装パターン| ケント・ベック, Kent Beck, 永田 渉, 長瀬 嘉秀, 株式会社テクノロジックアート| 本| 読みもの
・Extreme Programming Explained
Amazon.co.jp: XPエクストリーム・プログラミング入門―変化を受け入れる: ケント ベック, Kent Beck, 長瀬 嘉秀, テクノロジックアート: 本
オブジェクト指向の基本を徹底的に叩き込むことがドメイン駆動設計の入り口
設計のイテレーション
ソフトウェアが動いてからもモデリングと設計を続ける
⇒リファクタリングを続ける、動いてからも常にモデリングを気にする
⇒設計を気にしているほうが結果として費用対効果は高い
チームで体系的に取り組む
「言葉」が重要
モデル
膨大な知識を整理したシンプルで分かりやすい説明
・要約する力
・重要な要素を選びぬく
ドメイン駆動設計の成功
何年も成長と変化を続け、価値を付け加え続ける。
⇒使って楽しい、作って楽しい
豊富な機能を持つ大きなシステムを段階的に成長させる
チームに現れる特徴
対象となるドメインを理解し、その理解をソフトウェアに具現化することを「優先」する
ドメイン駆動設計の文脈でコードの臭い
嫌な臭いはドメインの表現が埋もれている事を表している。
名前を付けるために、変数を作成したりメソッドを抽出したりする。
業務を説明するときに、コメントの代わりに変数名やメソッド名で業務を表現していく。
⇒クリーンなコード、リーダブルコードと異なってくることもある
if文を見たらオブジェクト指向設計ができていないか疑ったほうが良い
7章大事
深いモデル/しなやかな設計
⇒ソフトウェアを修正するときのコストが減る