メインコンテンツまでスキップ

モジュールの責任と依存方向

APIの変更場所を判断するための図です。VideoQでは、機能ごとの関数やモジュールを組み合わせます。下の箱は責任の区分で、同名のクラスがすべて存在するという意味ではありません。

どこに何を書くか

区分責任
共有契約操作名・入力・出力・認証要件タグ作成で必要な名前と色
ハンドラーHonoのリクエストとサービスをつなぐ認証した利用者IDを渡す
サービス業務上の手順を組み立てる動画を登録し、処理を依頼する
repositoryデータを許可された範囲で読む・書く所有者のタグ一覧を取得する
スキーマテーブル、型、制約、indexを定義する同じ関係の重複を防ぐ

共有契約にHono固有の値やDB接続を持ち込まず、API側のコンテキストで処理を接続します。詳しくはtRPC API設計を参照してください。

認証と業務データ

認証のアカウント・セッション・確認トークンはBetter Authのスキーマを使います。動画・講座・タグの所有者は users と関連付けます。独自の AuthSession クラスや古い auth_sessions テーブルを追加する構成ではありません。

現在のテーブルと関係はデータ辞書ER図を参照します。

実装を読む練習

タグ一覧の呼び出しを追うでは、実際のファイルをこの順に読めます。新しい処理を追加するときも、近い既存機能を1つ選んで同じ責任の分け方を確認してください。