ホームページ  >  記事  >  バックエンド開発  >  Golang を使用した電子商取引プラットフォーム : プロジェクト ディレクトリ構造

Golang を使用した電子商取引プラットフォーム : プロジェクト ディレクトリ構造

Barbara Streisand
Barbara Streisandオリジナル
2024-10-04 22:07:02532ブラウズ

E-Commerce Platform with Golang : Project Directory Structure

当社の電子商取引プラットフォームはこのディレクトリ構造に従います


rmshop-clean-architecture/
│
├── cmd/
│   ├── api/
│   │   └── main.go                 # Main application entry point
│   └── seedadmin/
│       └── main.go                 # Admin seeding command
│
├── internal/
│   ├── config/
│   │   └── config.go               # Application configuration
│   │
│   ├── delivery/
│   │   └── http/
│   │       ├── handlers/
│   │       │   ├── user_handler.go
│   │       │   ├── admin_handler.go
│   │       │   ├── product_handler.go
│   │       │   └── ...
│   │       ├── middleware/
│   │       │   ├── auth.go
│   │       │   └── ...
│   │       └── routes.go
│   │
│   ├── domain/
│   │   ├── user.go
│   │   ├── product.go
│   │   └── ...
│   │
│   ├── repository/
│   │   ├── interfaces.go
│   │   └── postgres/
│   │       ├── user_repository.go
│   │       ├── product_repository.go
│   │       └── ...
│   │
│   ├── usecase/
│   │   ├── user_usecase.go
│   │   ├── product_usecase.go
│   │   └── ...
│   │
│   └── server/
│       └── server.go
│
├── pkg/
│   ├── auth/
│   │   └── jwt.go
│   ├── database/
│   │   ├── migrations.go
│   │   └── postgres.go
│   └── ...
│
├── migrations/
│   ├── 001_create_users_table.up.sql
│   ├── 001_create_users_table.down.sql
│   └── ...
│
├── go.mod
├── go.sum
└── README.md


この構造はクリーン アーキテクチャの原則に準拠しています

  • cmd/: プロジェクトの主要なアプリケーションが含まれます。
  • internal/: 他のプロジェクトからアクセスできない、コア アプリケーション コードを格納します。

  • config/: アプリケーション構成。

  • delivery/: データがユーザーに提示され、ユーザーから受信される方法を処理します。

  • domain/: コア ビジネス ロジックとエンティティを定義します。

  • repository/: データの保存と取得を処理します。

  • usecase/: アプリケーション固有のビジネス ルールが含まれます。

  • server/: HTTP サーバーのセットアップを管理します。

  • pkg/: 外部アプリケーションで使用できる共有パッケージ。

  • migrations/: データベース移行ファイル。

以上がGolang を使用した電子商取引プラットフォーム : プロジェクト ディレクトリ構造の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。