デザインパターンとは「過去のソフトウェア設計者が発見し編み出した設計ノウハウを蓄積し、名前をつけ、再利用しやすいように特定の規約に従ってカタログ化したもの」。
GoF(Gang of Four)のデザインパターンが特に有名ですが、世界中にはその他にもさまざまなデザインパターンが存在します。
本日紹介する「Awesome design patterns」は、これら多種多様なデザインパターンをあつめたリンク集です。開発者Dov Amir氏が作成したもので、Gofを始めとしたさまざまなデザインパターンの実装例や、解説記事がリンクされています。
目次
GoFの他にもまざまなデザインパターンが
同リンクの分類は以下のようになっています。
特に有名なGoFのデザインパターンに関しては、アダプターやビルダー、コマンドなどお馴染みのパターンを各種言語で実装したたGitHubリポジトリのリンクが集められています。もともとC++やJavaといった静的言語向けのものとして公開されたGofのデザインパターンが、他の言語(特に動的言語)でどのように実装されるのか確認したい場合に役立てることができます。
▲例えばRubyで実装した「Design Patterns in Ruby」など。
そのほかのデザインパターンに関しては、一般アーキテクチャ、クラウドアーキテクチャ、モバイル、IoT、ビッグデータなど大きなカテゴリごとに分類され、パターンを解説する記事やスライドがリンクされています。
▲例えば「Cloud Architecture」ではAWSやAzureなど今流行のサービスに関するパターンが存在することがわかります。
先人が苦労して作り上げてきた数々のデザインパターンをチェックして、開発作業を効率化したい方におすすめの情報です。