タブレット スタンド アルミ ホルダー 角度調整可能 Lomicall stand : 卓上 縦置き スタンド タブレット 置き台 デスク台 立てる 設置 aluminium テレワーク 在宅 ワーク Zoom 会議 タブレット対応(4~13'') ミニ エア プロ ipad 10 第十世代 ipad9 第九世代 ipad Air mini Pro第六世代 S7 S8 Note 対応 - シルバー
¥1,759 (2025年4月28日 13:05 GMT +09:00 時点 - 詳細はこちら価格および発送可能時期は表示された日付/時刻の時点のものであり、変更される場合があります。本商品の購入においては、購入の時点で当該の Amazon サイトに表示されている価格および発送可能時期の情報が適用されます。)Anker Prime Charging Station (6-in-1, 140W) 【独自技術Anker GaNPrime採用/コンセント差込口 2口 / USB-C 2ポート / USB-A 2ポート / PSE技術基準適合】iPhone Galaxy Android スマートフォン MacBook ノートPC 各種 その他機器対応(ブラック)
¥14,990 (2025年4月28日 13:11 GMT +09:00 時点 - 詳細はこちら価格および発送可能時期は表示された日付/時刻の時点のものであり、変更される場合があります。本商品の購入においては、購入の時点で当該の Amazon サイトに表示されている価格および発送可能時期の情報が適用されます。)USB Type C ケーブル【1m 4本セット】etguuds 3A 急速充電 タイプc 高速データ転送 超耐久ナイロン コード Galaxy S20 S10 S9 A20 A21 A22 A30, Note 8/9/10, Xperia XZ3 XZ2 XZ, LG, Sense3/4等USB-C 機種対応
¥999 (2025年4月28日 13:11 GMT +09:00 時点 - 詳細はこちら価格および発送可能時期は表示された日付/時刻の時点のものであり、変更される場合があります。本商品の購入においては、購入の時点で当該の Amazon サイトに表示されている価格および発送可能時期の情報が適用されます。)
はじめに
Javaのデザインパターンを勉強する際に参考にしているサイトはいくつかありましたが、実際にプロジェクト階層になっていて、ソースが確認しやすい方法がなかなか見つからず悩んでいました。
しかしGitHubを探しているうちに、種類豊富なデザインパターンと、それぞれをわかりやすい表現で解説している素晴らしいプロジェクトを見つけました。今回はそのプロジェクトをご紹介します。
※GitHub全体に言えることですが、リポジトリをクローン・ダウンロードする際は自己責任でお願いします。
URL
https://github.com/iluwatar/java-design-patterns
こちらのリポジトリには、様々な種類のデザインパターンがプロジェクト単位で整理されており、読みやすく理解しやすい構造になっています。
解説は各READMEに記載されています。
一例:abstract-factory
パターン
- 王国(Kingdom)に例えて、種族(エルフ、オーク)ごとに城、王、軍隊などのオブジェクト群が一貫して表現されています。
- 拡張性のある設計になっており、新しい種族を追加する際にも既存コードの変更は最小限で済む点など、非常に実践的な内容となっています。
関連パターンの記載
各デザインパターンの説明ページでは、関連する他のデザインパターンへのリンクも記載されています。
これにより、似たようなパターンや組み合わせて使うべきパターンをすぐに確認できるため、学習効率が非常に高まります。
終わりに
デザインパターンはどの設計にも必ずしも必要なわけではありませんが、それぞれのパターンを理解しておくことで、状況に応じて最適な選択をすることができます。
オブジェクト指向の理解を深めるためにも、また頭の整理や引き出しを増やす意味でも、このGitHubプロジェクトは非常に参考になると思います。
ぜひ一度覗いてみてはいかがでしょうか?