この地図の役割

匠は、知識を動くソフトウェアへ変換するための実践地図です。言語の文法だけでなく、変更を安全に積み重ねる設計、検証、レビュー、リリースの仕組みまでを扱います。

推奨する順序

  1. 言語ごとの特徴と比較 (Language Features and Comparisons)コンパイラとインタプリタ (Compilers and Interpreters)で、言語の表現力と実行モデルを押さえる。
  2. ソフトウェアアーキテクチャの設計判断アーキテクチャパターン (Architectural Patterns)SOLID原則など設計原則 (SOLID Principles etc)で、変更に耐える境界を設計する。
  3. ドメイン駆動設計 (Domain-Driven Design)API設計 (API Design)で、業務の意味と外部契約をコードへ写像する。
  4. テスト駆動開発 (Test-Driven Development - TDD)品質保証とテスト戦略 (QA & Testing Strategies)デバッグとトラブルシューティング (Debugging & Troubleshooting)で、正しさを検証し失敗から学ぶ。
  5. バージョン管理 (Version Control)CD (Continuous Integration Continuous Delivery)で、変更を短いフィードバックループに乗せる。

設計と実装を分離しない

設計はコードを書く前の図面ではなく、実装・テスト・運用を含む意思決定です。抽象化が変更点を隠せる一方で、過剰な抽象化は理解コストを増やします。この判断はソフトウェア設計におけるトレードオフ意思決定記録 (ADR)に残します。

詳細マップ