Successfully reported this slideshow.
Your SlideShare is downloading. ×

Object Oriented Design

Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Upcoming SlideShare
Agile Japan2016 Kanban
Agile Japan2016 Kanban
Loading in …3
×

Check these out next

1 of 15 Ad

More Related Content

Recently uploaded (20)

Advertisement

Object Oriented Design

  1. 1. オブジェクト指向 らしい設計 現場で役立つシステム設計の原則 東京エレクトロン すずき あつし
  2. 2. 本日のおはなし 約10年たっても達成できない「オブジェクト 指向らしい設計」についての思いのおはなし P.301 オブジェクト指向らしい設計を 身体で覚える のおはなし
  3. 3. 約10年前
  4. 4. ThoughtWorksアンソロジー オブジェクト指向エクササイズ「9つのルール」
  5. 5. マーティン ファウラー に会う
  6. 6. 9つのルール 1. 1つのメソッドにつきインデントは1段階まで 2. else句を使用しないこと 3. 全てのプリミティブ型と文字列型をラップする 4. 1行につきドットは1つまでにする 5. 名前を省略しない 6. 全てのエンティティを小さくする 7. 1つのクラスに付きインスタンス変数は2つまでにす る 8. ファーストクラスコレクションを使用する 9. Getter, Setter, プロパティを使用しない
  7. 7. 10年経ったけど やっぱなんだんろ?
  8. 8. 人間が理解しやすいソフトウェア 変更しやすいソフトウェア “過激派” そもそもオブジェクト指向で何したかった? ソフトウェア開発をどうしたかった?
  9. 9. 9つのルール 1. 1つのメソッドにつきインデントは1段階まで 2. else句を使用しないこと 3. 全てのプリミティブ型と文字列型をラップする 4. 1行につきドットは1つまでにする 5. 名前を省略しない 6. 全てのエンティティを小さくする 7. 1つのクラスに付きインスタンス変数は2つまでにす る 8. ファーストクラスコレクションを使用する 9. Getter, Setter, プロパティを使用しない 関数型のパラダイムでは ドット1つじゃないでしょ インスタンス変数2つだと 不自然に2分割されない? GUI接続層は依存するかもね JSON変換したいとか プリミティブ型の方が 処理早かったりするよね 人間の思考に寄り添ってなくない?
  10. 10. ”過猶不及” 『論語』孔子 行き過ぎは足りないのと同じ by 孔子
  11. 11. ”自然さ、行き過ぎない” ルールもいいけど ちゃんと考えないとね わたしたちのソフトウェア開発を もっと良くしていこう
  12. 12. すずき考えすぎ 自然さにこだわりすぎず いいところは取り入れる
  13. 13. まとめ 今より少しでも良くしていく絶え間ない取り組み 議論できる仲間たちの大切さ を実感しました オブジェクト指向らしさも追い求めつつ

×