0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Spring公式ドキュメント / Spring Official Documentation

Last updated at Posted at 2025-12-10

Spring Boot Architecture & Design Pattern Resources

目次 / Table of Contents

  1. Spring公式ドキュメント
  2. レイヤードアーキテクチャ関連
  3. Domain-Driven Design (DDD)
  4. Clean Architecture
  5. Hexagonal Architecture (Ports and Adapters)
  6. その他の有用なリソース

1. Spring公式ドキュメント / Spring Official Documentation

Spring Framework Core Documentation

Spring Framework Reference Documentation

  • URL: https://docs.spring.io/spring-framework/reference/index.html
  • Description: Spring Frameworkの公式リファレンスドキュメント。IoC Container、AOP、Data Access、Webなど、すべてのコア機能について詳細に解説。
  • Key Topics:
    • Core Technologies (IoC, DI, Events, Resources, Validation)
    • Data Access (JDBC, Transaction Management, DAO Support)
    • Web Servlet (Spring MVC, REST)
    • Integration (JMS, JMX)

Spring Framework Documentation (PDF)

Spring Framework Version 6.x Overview

Spring Framework Architecture

Spring Framework Modules Overview

Spring Framework Architecture Guide (GeeksforGeeks)

Spring Boot Specific

Spring Boot Official Site

Spring Boot Architecture Resources


2. レイヤードアーキテクチャ関連 / Layered Architecture Resources

Spring Bootでのレイヤードアーキテクチャ実装

Spring Boot Layered Architecture (InterviewBit)

  • URL: https://www.interviewbit.com/blog/spring-boot-architecture/
  • Description: Spring Bootの4層アーキテクチャ(Controller, Service, Repository, Database)について詳細解説
  • Key Layers:
    • Presentation Layer (Controller)
    • Business Layer (Service)
    • Persistence Layer (Repository)
    • Database Layer

Understanding Spring Boot Layered Architecture

Layered Architecture & Spring Boot (Medium)

Spring Boot Architecture (GeeksforGeeks)

Spring Layered Architecture Example (GitHub)

Spring MVC Architecture

TERASOLUNA - Spring MVC Architecture


3. Domain-Driven Design (DDD)

Eric Evans - Original DDD

Domain-Driven Design by Eric Evans (Book)

  • Original Book: "Domain-Driven Design: Tackling Complexity in the Heart of Software" (2003)
  • Publisher: Addison-Wesley
  • Author: Eric Evans
  • Description: DDDの原典。複雑なドメインロジックを持つソフトウェアの設計手法を体系化。

Eric Evans Official Site

Domain-Driven Design Reference (PDF)

Domain-Driven Design Quickly (Free Book)

DDD Concepts and Implementation

Martin Fowler - Domain Driven Design

Domain-Driven Design (Wikipedia)

Domain-Driven Design Summary

  • URL: https://softengbook.org/articles/ddd
  • Description: DDDの主要概念を簡潔にまとめた記事
  • Core Concepts:
    • Ubiquitous Language
    • Entities and Value Objects
    • Services
    • Aggregates
    • Repositories

DDD Blog Posts and Tutorials

Domain-Driven Design by Eric Evans (DEV Community)

Layered Architecture and Smart UI (DEV Community)

Domain-Driven Design Part I (DEV Community)


4. Clean Architecture

Robert C. Martin (Uncle Bob)

Clean Architecture - Official Blog Post

Clean Architecture Book

Clean Architecture (O'Reilly)

Uncle Bob Consulting

Clean Architecture Resources

Summary of Clean Architecture (GitHub Gist)

Uncle Bob's Clean Architecture (Medium)

Clean Architecture by Robert C. Martin (Goodreads)

Robert C. Martin (Wikipedia)

Related Works by Uncle Bob

Clean Code - コードの品質について
The Clean Coder - プロフェッショナリズムについて
Agile Software Development - アジャイル開発原則


5. Hexagonal Architecture (Ports and Adapters)

Alistair Cockburn - Original Pattern

Hexagonal Architecture - Official Site

  • URL: https://alistair.cockburn.us/hexagonal-architecture
  • Description: Alistair Cockburn本人によるHexagonal Architectureの原典
  • Key Concepts:
    • Ports (purposeful conversations)
    • Adapters (technology-specific implementations)
    • Application isolation
    • Symmetry of primary and secondary ports

Hexagonal Architecture (Official Book)

Hexagonal Architecture Official Site

Hexagonal Architecture (2023 Presentation PDF)

Hexagonal Architecture Resources

Hexagonal Architecture (Wikipedia)

Interview with Alistair Cockburn

Ports & Adapters Architecture Explained

Understanding Hexagonal Architecture (DEV Community)

AWS - Hexagonal Architecture Pattern

Netflix Tech Blog - Hexagonal Architecture

Related Resources by Juan Manuel Garrido de Paz

Juan Manuel's Hexagonal Architecture Series

GitHub - Hexagonal Architecture Examples


6. その他の有用なリソース / Other Useful Resources

アーキテクチャ比較

Exploring Key Architectures in Spring Boot (Medium)

プロジェクト生成ツール

Spring Initializr

  • URL: https://start.spring.io/
  • Description: Spring Bootプロジェクトの雛形を生成するWebツール
  • Features:
    • 依存関係の選択
    • プロジェクト構造の自動生成
    • Maven/Gradle対応

コミュニティとフォーラム

Stack Overflow - Spring Boot

Spring Community

学習リソース

Baeldung - Spring Tutorials

Spring Guides

  • URL: https://spring.io/guides
  • Description: Spring公式のハンズオンガイド
  • Getting Started Guides:
    • Building a RESTful Web Service
    • Accessing Data with JPA
    • Building an Application with Spring Boot

推奨学習順序 / Recommended Learning Path

初級 (Beginner)

  1. Spring Framework Reference Documentation を読む

    • Core ConceptsとIoC/DIを理解
  2. Spring Boot Architecture の基本を学ぶ

    • Controller-Service-Repository パターン
  3. Spring Initializr でプロジェクトを作成し、実際にコードを書く

中級 (Intermediate)

  1. Layered Architecture の詳細を学ぶ

    • 各層の責務と依存関係の方向
  2. Domain-Driven Design の基礎を学ぶ

    • Eric EvansのDDD Reference(無料PDF)を読む
  3. 実際のプロジェクト でレイヤードアーキテクチャを実装

上級 (Advanced)

  1. Clean Architecture を学ぶ

    • Uncle BobのブログとSOLID原則
  2. Hexagonal Architecture を学ぶ

    • Alistair Cockburnの原典とNetflixの事例研究
  3. 各アーキテクチャの比較 と適用場面の理解

    • プロジェクトの規模と複雑さに応じた選択

アーキテクチャパターンの比較 / Architecture Patterns Comparison

Layered Architecture (階層型)

特徴:

  • 最もシンプルで理解しやすい
  • Spring Bootのデフォルト推奨パターン
  • Controller → Service → Repository の一方向依存

適用場面:

  • 小〜中規模のアプリケーション
  • 単一のドメイン
  • チームがアーキテクチャに不慣れ

Domain-Driven Design (DDD)

特徴:

  • ドメインロジックの明確な分離
  • Ubiquitous Languageによるコミュニケーション
  • Bounded Contextによるモジュール化

適用場面:

  • 複雑なビジネスロジック
  • 大規模プロジェクト
  • ドメインエキスパートとの密接な協業

Clean Architecture

特徴:

  • 依存性の方向が内側(ドメイン)へ
  • フレームワーク非依存
  • テスタビリティ重視

適用場面:

  • 長期運用が必要なシステム
  • 技術スタックの変更可能性
  • エンタープライズアプリケーション

Hexagonal Architecture

特徴:

  • ポートとアダプターによる明確な境界
  • ドメインロジックの完全な分離
  • 技術的詳細の交換可能性

適用場面:

  • マイクロサービス
  • 複数のインターフェース(UI/API/CLI等)
  • テスト駆動開発

まとめ / Summary

各リソースの活用方法

公式ドキュメント (Spring Framework/Boot)

  • 最も信頼性が高い
  • 新機能や変更点は必ずここで確認
  • API仕様の参照

書籍 (DDD, Clean Architecture, Hexagonal Architecture)

  • 原典から学ぶことで誤解を避ける
  • 体系的な理解が可能
  • 実装パターンの背景にある哲学を理解

ブログ記事とチュートリアル

  • 実践的な実装例
  • よくある問題と解決策
  • コミュニティのベストプラクティス

GitHubのサンプルコード

  • 実際の動くコード
  • アーキテクチャパターンの具体的実装
  • テストコードの書き方

継続的な学習

  1. 公式ドキュメントを定期的にチェック

    • Spring Bootのバージョンアップ情報
    • 新機能とベストプラクティスの変更
  2. 実際のプロジェクトで実践

    • 理論を実装に落とし込む
    • チームでレビューし合う
  3. コミュニティに参加

    • Stack Overflowで質問・回答
    • カンファレンスやミートアップへの参加
    • OSS貢献
  4. 複数のアーキテクチャを比較

    • プロジェクトに最適なパターンを選択
    • トレードオフを理解する

参考情報の更新日 / Last Updated

Document Version: 1.0
Last Updated: December 2025
Note: URLやリソースは変更される可能性があります。リンク切れの場合はWayback Machine (https://web.archive.org/) で過去のバージョンを参照してください。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?