Design pattern

いやこりゃ評判以上にええぞ

Amazon.co.jp: Head Firstデザインパターン ―頭とからだで覚えるデザインパターンの基本: Eric Freeman, Elisabeth Freeman, Kathy Sierra, Bert Bates, 佐藤 直生, 木下 哲也, 有限会社 福龍興業: 本

 

有名なもんだし、ちょっと見て「何かいろいろ書き方ばっかり変えててオサレなつもりなんかな」とか思ってて Head First シリーズって全スルーしてたけど、いかんかったな。

 

なんだろ、結城先生のデザインパターンの本は読んでたんだけど、あっちも綺麗にまとまってて、いろいろライブラリも使ってるしで、とりあえず理解したとか思ってたけど

Head First だと失敗パターンだの何だのといろんな切り口から見せてくるから、多方面から考えることになって、考えてなかった部分が見えてくるっつーか。

いやいや、こりゃいいんじゃないか

 

まだ始めの方であまり進んでないけどとりあえず思ったこと書いてみると

まず設計するときは、処理ごとの関係性を考えるべき。どういうまとまりごとに処理があって、お互いは1 対 1 なのか、1 対 n なのか n 対 n なのか。

strategy は全体の中から一つの組み合わせを選びとるもので、おのおのは1対1になる。で observer が 1 対 n か。とりあえずこんなんか。

 

あと、関係性も何も考えず、とりあえず、一個の継承関係に収めてしまうってのは悪手。影響範囲とか限定できないぐっちゃぐちゃのコードになったり、逆に全然共有できなくなったりする。

これは自分でもう分かってたつもりではあったけど、じゃあこないだ書いたコードはどうなの?本当に大丈夫?関係性とかすぐ言える?ってーとあまり自信ない・・・

 

序盤も序盤だし、とりあえず忘れる前に書いておくか、と。

 

あ、思ったけどこれちゃんと買うか・・・