状態が2つから3つしかない場合、状態パターンを使用するのはやり過ぎですか?
3 に答える
いいえ、やり過ぎではありません。実際の状態がほとんどなく、さらに追加する予定がない場合でも、Stateパターンを使用すると、個々の状態を個別にテストできるため、システムのテストが容易になります。
あなたが提供する情報が少なすぎるため、あなたの正確なケースでは多くを語ることはできません。
しかし、一般的に...
他の表明された意見は異なる場合がありますが...
アジャイルムーブメントは非常に強力になっています。彼らはYAGNIをお勧めします(あなたはそれを必要としないでしょう)。
アイデアは、複雑さを後でまで遅らせることです。理由は次のとおりです。
- 私たちの開発者は複雑さを好む傾向があり、時にはそれを必要のない場所に置きます。
- 後でコードをよりよく理解できるようになります。そうすれば、もっと簡単な解決策が見つかるかもしれません。
- あなたのユーザー(またはあなたであっても、何をすべきかを指定する人)は後であなたのソフトウェアを使用することになるので、要件は変更される可能性があります。したがって、予想される複雑さは、その時点では使用できないことが判明する可能性があります。
- 後で今追加するのとまったく同じ複雑さを追加する(まれな)場合でも...その間、コードベースは単純なので、他のコーディングアクティビティはより単純で高速です。それも利益です。
- また、あなたの時間は無限ではなく、おそらく誰かがこれにお金を払っていることを考慮してください(あなたの自由時間やトレーニング時間であっても)。あなたの努力は、将来のために時間を費やすよりも、現在の問題に費やす方がより役立つかもしれません...
そうは言っても、もしあなたがそのアイデアを楽しんでいるなら、それを目指して、あなたの夢に従ってください!:-)
ステートチャートについて話しているのですか?
とにかく、私はそれのために行くと言います。問題は、将来、状態を追加したいと思うかもしれないということです。そして、もう1つの状態だけなので、パターンを実装する価値はないと思いますよね?そして、4つの状態があり、別の状態を追加する必要があり、プロセスが繰り返されます。
そして、コードの書き換えが多すぎるため、状態パターンをリファクタリングして使用できない状態(しゃれを意図した状態)になります。
だから、最初から正しくやってください。