k kakkky.dev
Series Completed

【Go】Webフレームワークなしで開発する TODO API ハンズオン

GoのWebフレームワークを使わずに、認証付きTodoアプリのAPIを開発するハンズオンです。アーキテクチャにはクリーンアーキテクチャやドメイン駆動設計の考えを適用しています。 マニアックな技術は扱わず、初学者が基本的なAPI開発を一通り体験することを目的としています。概念や使用技術の説明に加えて公式ドキュメントや参考記事も逐一掲載しているので、つまづかずに進められるはずです。 扱う技術: ・Docker / Docker composeによる環境構築 ・GitHub ActionsによるCI ・クリーンアーキテクチャ / ドメイン駆動設計 ・モックを用いた単体テスト ・golang-migrate / sqlc ・JWT, Redisを用いた認証・認可 ・net/http(標準パッケージ) / ミドルウェア ・swaggoによるAPIドキュメント生成 ・エンドポイントの統合テスト / ゴールデンテスト 【対象者】 ・Goの文法をある程度知っている方 ・Goを用いた開発の初学者の方

16 articles
#アーキテクチャ#go

  1. 1

    はじめに

  2. 2

    開発環境を整える

  3. 3

    プロジェクト構成とアーキテクチャ

  4. 4

    ドメイン駆動設計

  5. 5

    ドメイン層の実装

  6. 6

    アプリケーション層 ー ユースケースの実装

  7. 7

    環境変数を管理する

  8. 8

    インフラストラクチャ層 ー データベース・キーバリューストア

  9. 9

    アダプター層 ー リポジトリの実装

  10. 10

    アダプター層 ー クエリサービスの実装

  11. 11

    認証・認可機能の実装

  12. 12

    アダプター層 ー プレゼンテーション(プレゼンター・ハンドラー)の実装

  13. 13

    アダプター層 ー ミドルウェア(ロギング・認可制御)の実装

  14. 14

    インフラストラクチャ層 ー HTTPサーバー・ルーティングの実装

  15. 15

    エンドポイントの統合テスト

  16. 16

    おわりに