Tags
246 ページ目
Design-Pattern
割引ルールを足すたび数千行のServiceを直す。計算をデータの側へ戻す【Tell, Don't Ask】
JSONで年齢が文字列になり、電話番号の先頭の0が消える。値を専用のクラスで包む【Value Object】
0〜3の数字で持つ注文状態、発送済みにキャンセルが通った。状態をクラスにする【State】
ポイント付与の機能を継承で組み合わせたら、機能3つで8クラス。外から重ねて足す【Decorator】
在庫更新を1か所直すと、メール通知やダッシュボードが止まる。通知で受け手を分ける【Observer】
CSV出力のバグを直すと、コピペした隣にも同じ修正が要る。手順を親にまとめる【Template Method】
形式を足すたび5000行のif-elsifに書き足す。形式ごとのクラスに分ける【Strategy】
コード探偵ロックの事件簿 連載目次【困りごとから探す案内板】
evalでルールを動かしたら監査でコードインジェクション判定。文法をオブジェクトで組む【Interpreter】
種類を1つ足すと、ref()の分岐を全関数に書き足す羽目に。操作を外に出す【Visitor】
設定を上書きして、うまくいった時の値に戻せない。時点ごとに保存して戻す【Memento】
機能を1つ足すだけで全モジュールを修正する。やり取りを仲介役に集める【Mediator】
フラグの組み合わせで、ありえない状態に入り込む。状態ごとにクラスを分ける【State】
アラートを1つ足すたびに別のアラートが誤爆する。判定を担当ごとの鎖に分ける【Chain of Responsibility】
デプロイが途中で失敗すると手で戻すしかない。操作ごとに取り消しを持たせる【Command】
1
…
13
14
15
…
17