Я использую руководство по стилю AngularJS. В этом руководстве есть стиль, который называется folder-by-feature
вместо folder-by-type
, и мне действительно любопытно, каков наилучший подход (в этом примере для Java)
Допустим, у меня есть приложение, в котором я могу получать Users & Pets, используя сервисы, контроллеры, репозитории и объекты домена ofcourse.
Принимая стили папок -....., у нас есть два варианта нашей структуры упаковки:
1. Папка по типу
com.example
├── domain
│ ├── User.java
│ └── Pet.java
├── controllers
│ ├── UserController.java
│ └── PetController.java
├── repositories
│ ├── UserRepository.java
│ └── PetRepository.java
├── services
│ ├── UserService.java
│ └── PetService.java
│ // and everything else in the project
└── MyApplication.java
2. Папка за функцией
com.example
├── pet
│ ├── Pet.java
│ ├── PetController.java
│ ├── PetRepository.java
│ └── PetService.java
├── user
│ ├── User.java
│ ├── UserController.java
│ ├── UserRepository.java
│ └── UserService.java
│ // and everything else in the project
└── MyApplication.java
Что было бы хорошим подходом, и каковы аргументы для этого?
Pet
, контроллера, хранилища и сервиса. В какой ситуации мне понадобятся все контроллеры, кроме представлений, репозиториев или сервисов?