デザインパターン
タイトルについて すみません、煽りました。 いきさつ オブジェクト指向で設計した時と、 オブジェクト指向を使わなかった時について、 「単純にコード量だけで」比較してみます。 その上で、オブジェクト指向の利点について再度考えてみます。 つくるもの 1…
いきさつ 昔書いていたアプリケーションがあまりにあまりなので、 (モデルの責務がいたるところに染み出している) DDD使って書き換えられないか検討するために勉強を始めた(1日目) Repositoryからやっていきます Repositoryについて エンティティの永続…
ある日の地下アイドル 地ア「は〜あ。今日もライブは3人しかこなかったなぁ」 地ア「きょう来てくれたのは、たっくんと、しのぶんと、ゆっきーか」 地ア「この3人、いつも来てくれるんだよねぇ。大事にしなくちゃ」 地ア「私、ぜったいに売れっ子アイドル…
カレーを作るクラスを考える 玉ねぎきって、 じゃがいもをむいて切って、 カレールーをとかす。 そんな料理を実現するクラス群を作って考えてみます。 before まずはfacade patternを使わずに書いてみます。 ソースコード class Onion { cut() { console.log…
このシリーズについて このシリーズは 後先のことをなにも考えずに実装してしまう『早とちりプログラマ』 と すぐに仕様変更を加える『後出し上司』 のという魅力的な2人から、 デザインパターンの有用さを学んでいこうという素敵な企画です。 (早とちりプ…
このシリーズについて このシリーズは 後先のことをなにも考えずに実装してしまう『早とちりプログラマ』 と すぐに仕様変更を加える『後出し上司』 のという魅力的な2人から、 デザインパターンの有用さを学んでいこうという素敵な企画です。 (早とちりプ…
前回のソースコードをstrategyパターンを使用して書き換えていく 前回のソースコードから、戦略に関する部分についてクラスで切り出します。 戦略クラス(特定戦略時の振る舞いを持ったクラス)を作成 # ガンガン行こうぜのとき class StrategyGangan def se…
このシリーズについて このシリーズでは、 デザインパターンを使う場合 デザインパターンを使わなかった場合 について、 「仕様変更があった時、既存コードの書き換えがどれくらい発生するか?」 という観点で比較し、デザインパターンのメリットをより感じ…
前回のソースコードをstateパターンを使用して書き換えていく 前回のソースコードを見てみると、 状態と、その状態の時の振る舞いが描かれていることがわかります。 図の例なら、「HAPPY」「HAPPY時の振る舞い(hello, goodbye)」です。 これを状態クラスと…
デザインパターンのメリットについて今一度確認したい 業務で使ったり使わなかったりするデザインパターンですが、 なかなかメリットについてつきつめて考えたことがない。 「なんとなくソースコードがきれいになった気がする。。。」で頭がとまってしまって…