デザインパターン

デザインパターンとは、 「ソフトウェア設計における特定の文脈で頻繁に発生する問題に対する、汎用的で再利用可能な解決策」です。デザインパターンは、プログラミング言語の文化を表現する優れた方法です。デザインパターンは言語固有のものであり、ある言語でパターンとされるものが、他の言語では言語機能により不要になったり、機能が欠けているために表現できなかったりすることがあります。

過度に使用すると、デザインパターンはプログラムに不要な複雑さを追加する可能性があります。 しかし、プログラミング言語に関する中級から上級レベルの知識を共有する優れた方法でもあります。

Rustにおけるデザインパターン

Rustには多くのユニークな機能があります。これらの機能は、問題のクラス全体を取り除くことで、大きな利益をもたらします。その中には、Rustに固有のパターンもあります。

YAGNI

YAGNIはYou Aren't Going to Need It(それは必要にならない)の頭字語です。これは、コードを書く際に適用すべき重要なソフトウェア設計の原則です。

私が書いた最高のコードは、書かなかったコードだ。

デザインパターンにYAGNIを適用すると、Rustの機能により多くのパターンを捨てられることがわかります。例えば、Rustではストラテジーパターンは必要ありません。なぜなら、単にトレイトを使えばよいからです。