저희 전자상거래 플랫폼은 다음 디렉토리 구조를 따릅니다
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
이 구조는 클린 아키텍처 원칙을 준수합니다
internal/: 다른 프로젝트에서 액세스할 수 없는 핵심 애플리케이션 코드가 있습니다.
config/: 애플리케이션 구성.
delivery/: 데이터가 사용자에게 어떻게 제시되고 수신되는지를 처리합니다.
domain/: 핵심 비즈니스 로직과 엔터티를 정의합니다.
repository/: 데이터 저장 및 검색을 처리합니다.
usecase/: 애플리케이션별 비즈니스 규칙을 포함합니다.
server/: HTTP 서버 설정을 관리합니다.
pkg/: 외부 애플리케이션에서 사용할 수 있는 공유 패키지
migrations/: 데이터베이스 마이그레이션 파일.
위 내용은 Golang을 이용한 전자상거래 플랫폼 : 프로젝트 디렉토리 구조의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!