Skip to content

Latest commit

 

History

History
70 lines (49 loc) · 1.67 KB

File metadata and controls

70 lines (49 loc) · 1.67 KB

app

app 配下は次のような構成になっています。

本システムは三層アーキテクチャに基づいたディレクトリ構成を採用しています。

.
├── application
│   ├── dto
│   |    └── application_dto.go
│   └── services
│       └── xxx_service.go
├── config
│   └── services
│       └── xxx.go
├── infrastructure
│   ├── dto
│   |    └── infrastructure_dto.go
│   ├── external
│   |    └── services
│   |        └── xxx_service.go
│   └── repository
│       └── xxx_repository.go
├── presentation
│   ├── dto
│   |    └── presentation_dto.go
│   └── controllers
│       └── xxx_controller.go
└── utils
    └── xxx.go

application

  • アプリの中核となる処理を管理する層

services

  • ビジネスロジックを管理
  • controller と一対一対応
  • presentation層からの入力を用いてinfrastructure層を利用しながらビジネスロジックを作る

config

  • 環境変数の読み込みなど実行前の設定の処理を記述

infrastructure

  • データアクセスに関連する処理を記述

external

  • 外部ストレージにアクセスする処理を記述

repository

  • DB にアクセするための処理を記述

presentation

  • エンドユーザからの入力・出力を管理する層

controllers

  • HTTP による入力をパースし、application層に受け渡し、その結果を出力する

utils

  • 層を跨いで汎用的に利用される処理を記述