midnight in a perfect world

webエンジニアのメモ

オブジェクト指向設計 実践ガイド」を読む。

面白かった。翻訳のためか多少ピンと来ない表現とか言い回しもあったが、Ruby使う機会が多い今読んでかなり学びになった。著者が自転車好きなのか、コードが全て自転車関連になっていてちょっと親近感もてた。

実際に機能を追加するべく既存のコードを読みながら迷うのは「この処理メソッドに切り出すべきかな?」とか「どのクラスに生やすのが良いか」とか「この機能はどこから呼ばれる可能性があるか」とか「なぜこの処理をモジュール化してるんだろう」とか「追加しようと思ったクラス、なんで基底クラスから継承してないんだ?」みたいなところ。色々と過去の文脈を整理した上で今時点でこの形で実装するのが良いかなーなどと考えて実装するのだが、上記の迷ってる状態の時により質の高い選択をするために設計のフレームワークを頭にインストールしている感じで読めた。先日はTrailbrazerを使った現場の勉強会に参加して学びになったが、多人数で物を作っていく上での意識合わせとか設計の重要性を改めて感じている。