Repolode
iluwatar

iluwatar/java-design-patterns

古典から現代までのソフトウェアデザインパターンをJavaで実装し、各パターンの解説付きサンプルコードをまとめたコレクションです。

スター
94,802
フォーク
27,346
未解決の Issue
141
最終コミット
13 日前

これは何?

このリポジトリでは、多数のソフトウェアデザインパターンをJavaで実装しており、各パターンはサンプルコードを含む独立したモジュールにまとめられています。パターンの適用方法がコメントで説明されているため、手順を追って学べるチュートリアルとして読むことができます。

パターンは名前や、Performance、Gang of Fourなどのタグ、CreationalやBehavioralなどのカテゴリで探せます。また、java-design-patterns.comには、同じ内容を説明やソースへのリンクとともに掲載するWebサイトもあります。

このプロジェクトが掲げる前提は、設計はできるだけシンプルに保ち、実用上の拡張性が必要な場合にのみパターンを導入するというものです。コントリビューションを受け付けており、別バージョンの電子書籍も提供しています。

主な機能

  • 01Gang of Fourの古典的なパターンや、Javaで広く使われているその他のパターンを収録しています。
  • 02各パターンは独立したモジュールにまとめられており、実行可能なコメント付きサンプルコードが含まれています。
  • 03パターンを名前、タグ、カテゴリから探せます。
  • 04説明とソースコードへのリンクを掲載した関連Webサイトがあります。

ユースケース

  • 実際に動作するJavaのサンプルを読んで、デザインパターンを学ぶ。
  • 自分のコードに適用する前に、特定のパターンの実装例を確認する。
  • パターンの使い方を扱うソフトウェア設計の面接やコードレビューに備える。

使う前に知っておきたいこと

  • メタデータ上のライセンスはNOASSERTIONですが、READMEにはMITと記載されています。再利用する前にライセンスファイルを確認してください。

トピック

よくある質問

java-design-patterns とは?
古典から現代までのソフトウェアデザインパターンをJavaで実装し、各パターンの解説付きサンプルコードをまとめたコレクションです。 このリポジトリでは、多数のソフトウェアデザインパターンをJavaで実装しており、各パターンはサンプルコードを含む独立したモジュールにまとめられています。パターンの適用方法がコメントで説明されているため、手順を追って学べるチュートリアルとして読むことができます。
java-design-patterns は無料で使えますか?ライセンスは?
java-design-patterns は Other ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
java-design-patterns は今もメンテナンスされていますか?
活発にメンテナンス中。java-design-patterns の最終コミットは 2026年10月8日 です。
java-design-patterns は何に使えますか?
実際に動作するJavaのサンプルを読んで、デザインパターンを学ぶ。 自分のコードに適用する前に、特定のパターンの実装例を確認する。 パターンの使い方を扱うソフトウェア設計の面接やコードレビューに備える。
java-design-patterns はどこで入手できますか?
ソースコードとインストール手順は GitHub にあります:https://github.com/iluwatar/java-design-patterns

概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。

関連プロジェクト