本記事について
当サイトを閲覧いただきありがとうございます。 本記事はシリーズ『生成AI時代のアーキテクチャ超入門』の「ソフトウェアアーキテクチャ」カテゴリ全8記事を一覧にまとめたガイド記事です。
ソフトウェアアーキテクチャは、コードベース全体の構造・分割方針・通信方式・技術選定を決める層です。モノリスかマイクロサービスか、どの言語・フレームワークを使うか、APIはRESTかGraphQLかといった、開発チーム全体に影響する判断を扱います。
記事一覧
1. ソフトウェアアーキテクチャ概要 ― 宗派の多い領域の歩き方
モノリス・モジュラーモノリス・マイクロサービスの3大パターンを俯瞰し、規模別の推奨構造を示す概要記事です。ソフトウェアアーキテクチャは「宗派論争」になりがちですが、宗派に巻き込まれず実務で使える判断軸を提供します。
2. プログラミング言語の選び方 ― TS/Python/Java/Go/Rust
TypeScript・Python・Java・C#・Go・Rust・Ruby・PHP・C/C++を、規模・用途・人材市場・AI生成精度の4軸で比較します。「好きな言語」ではなくプロジェクト要件から言語を選ぶ判断フレームワークが得られます。
3. 全体構造の選び方 ― モノリス/マイクロサービス/モジュラーモノリス
アプリケーションの全体構造をどう決めるか。3パターンの比較に加え、規模が小さいのにマイクロサービスを採用する早すぎる分割の罠や、モノリスからの段階的移行の方法を学べます。
4. モジュール設計の選び方 ― レイヤード/ヘキサゴナル/クリーン
アプリ内部の「部屋割り」をどう引くか。レイヤード・ヘキサゴナル・オニオン・クリーンアーキテクチャの4パターンを、ドメイン複雑度・チームスキル・寿命の3軸で比較します。
5. API設計の基礎 ― REST/GraphQL/gRPC/WebSocket
REST・GraphQL・gRPC・WebSocketの主要4スタイルの用途別の使い分けを解説します。バージョニング戦略・認証方式・レート制限の数値基準など、API設計の実務で使える具体的な判断基準が得られます。
6. フレームワーク選定 ― Spring/Next.js/FastAPI/Rails
Spring Boot・Next.js・FastAPI・Railsなど言語別フレームワークを比較します。LTS管理・脆弱性対応・AI生成精度・5年後も運用できるかという観点で、流行ではなく持続性で選ぶフレームワーク選定術を学べます。
7. トランザクション設計 ― ACID/結果整合性/Saga/Outbox
ACID特性・分離レベル・分散トランザクション・結果整合性・Saga・Outbox・CAP定理・冪等性まで、データの整合性を守る仕組みを実装パターン込みで学べます。マイクロサービスやイベント駆動を採用する際には必読の内容です。
8. 認証・セッション設計 ― サーバセッション vs JWT
サーバセッション vs JWTの使い分け、OAuth 2.0/OIDCのフロー、Cookie属性の安全設定を解説します。「同一ドメインはCookie・横断はJWT」という明快な判断軸を、実装目線で理解できます。
まとめ
本記事ではシリーズ『生成AI時代のアーキテクチャ超入門』のソフトウェアアーキテクチャカテゴリ全8記事を一覧で紹介しました。如何だったでしょうか。
ソフトウェアアーキテクチャは「宗派論争」が多い領域ですが、本シリーズでは特定の思想に偏らず、プロジェクトの規模・チーム・要件に応じた判断軸を一貫して提供しています。概要記事で全体を掴んでから、気になるテーマを深掘りしてみてください。
シリーズ全体の構成やほかのカテゴリについては、以下のシリーズ総合案内をご覧ください。
それでは次の記事も閲覧いただけると幸いです。