Upgrade to Pro — share decks privately, control downloads, hide ads and more …

connect-goとsqlboilerで構築するクリーンアーキテクチャ

hirocy
September 26, 2024

 connect-goとsqlboilerで構築するクリーンアーキテクチャ

「PIXIV DEV MEETUP 2024」LT発表資料
https://conference.pixiv.co.jp/2024/dev-meetup

hirocy

September 26, 2024
Tweet

Other Decks in Programming

Transcript

  1. クリーンアーキテクチャ • Robert C. Martinが2012年に提唱したアーキテクチャ • 4層のレイヤー構造 ◦ Enterprise Business

    Rules(domain層) ◦ Application Business Rules(usecase層) ◦ Interface Adapters(interface層) ◦ Frameworks & Drivers(infrastructure層)
  2. クリーンアーキテクチャ • Robert C. Martinが2012年に提唱したアーキテクチャ • 4層のレイヤー構造 ◦ Enterprise Business

    Rules(domain層) ◦ Application Business Rules(usecase層) ◦ Interface Adapters(interface層) ◦ Frameworks & Drivers(infrastructure層)
  3. connect-goの特徴 • The Go implementation of Connect: Protobuf RPC that

    works. • ConnectというプロトコルのGo実装 • Protobufで記述された通信の定義に基づいてGoのパッ ケージを生成
  4. sqlboilerの特徴 • Generate a Go ORM tailored to your database

    schema. • 実際のDBスキーマからGoのORM(Object-Relational Mapping)をパッケージとして生成
  5. なぜinterface層に生成? • 例えばconnectについて... ◦ interface層 ▪ 通信の中身を見るレイヤー ◦ infrastructure層 ▪

    通信について記述するレイヤー →ハンドラーやDBのクエリをinterface層で記述したい