Heim  >  Artikel  >  Backend-Entwicklung  >  E-Commerce-Plattform mit Golang: Projektverzeichnisstruktur

E-Commerce-Plattform mit Golang: Projektverzeichnisstruktur

Barbara Streisand
Barbara StreisandOriginal
2024-10-04 22:07:02531Durchsuche

E-Commerce Platform with Golang : Project Directory Structure

Unsere E-Commerce-Plattform folgt dieser Verzeichnisstruktur


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


Diese Struktur entspricht den Grundsätzen sauberer Architektur

  • cmd/: Enthält die Hauptanwendungen des Projekts.
  • intern/: Enthält den Kernanwendungscode, auf den andere Projekte nicht zugreifen können.

  • config/: Anwendungskonfiguration.

  • delivery/: Behandelt, wie die Daten dem Benutzer präsentiert und vom Benutzer empfangen werden.

  • Domäne/: Definiert die Kerngeschäftslogik und -entitäten.

  • repository/: Verwaltet das Speichern und Abrufen von Daten.

  • usecase/: Enthält anwendungsspezifische Geschäftsregeln.

  • server/: Verwaltet die Einrichtung des HTTP-Servers.

  • pkg/: Freigegebene Pakete, die von externen Anwendungen verwendet werden können.

  • Migrationen/: Datenbankmigrationsdateien.

Das obige ist der detaillierte Inhalt vonE-Commerce-Plattform mit Golang: Projektverzeichnisstruktur. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn