hitode909の日記

趣味はマリンスポーツですの日記です

staticおじさんっていう,インスタンスを作らず,ぜんぶstaticメソッドで済ませようという人が居る.僕もクラスなるべく作りたくないと思っていて,ちゃんとしたクラスを作るのは難しいので,インスタンス作らずに済むに越したことはないと思う.ドメイン駆動設計っていう本読むと,Serviceクラスは状態を持たないみたいな話があったけど,いま触ってるプロジェクトではServiceクラスはインスタンスを作らず,クラスメソッドだけ持たせるようにしてる.インスタンス作ると,そのインスタンスは何を持つのかとか,誰がどういう責任を持つのかとか,いろいろ考えることあるけど,クラスメソッドなら単なる関数なので,作るのが楽.オブジェクト指向分からないからという理由でやってるのではなくて,作らず済むときには作らないようにしている.必要なときにはインスタンス作っていて,引数10個の関数の呼び出しをがんばって組み立てるよりかは,フィールドが10個あって,対話的に順番に渡していって,最後にメソッド呼ぶとなんかもらえるほうが理解しやすい,とか.クラスを作るかどうかの目安は,オブジェクト指向入門に書いてある.仕様を読んで,名詞の下に線を引いて,とかあるけど,そうすると,エレベーター管理システムだと,だいたい「階」というクラスを作りがちになる.けどエレベーター的には階が持つデータや機能は得にないので,整数で済むかもしれない,とか.完成したソフトウェアを見ると完成したクラスたちがあるけど,作り始めるときにはないので,人によって,どこをクラスにするか,みたいな捉え方は違うと思う.


今日特に話したいこともないけどそろそろオブジェクト指向入門を売って小銭をゲットしようと思ってこの話を書きました.

オブジェクト指向入門 第2版 原則・コンセプト (IT Architect’Archive クラシックモダン・コンピューティング)

オブジェクト指向入門 第2版 原則・コンセプト (IT Architect’Archive クラシックモダン・コンピューティング)

オブジェクト指向入門 第2版 方法論・実践 (IT Architects’Archive CLASSIC MODER)

オブジェクト指向入門 第2版 方法論・実践 (IT Architects’Archive CLASSIC MODER)