我利用了AngularJS样式指南。在本指南中,有一种称为的样式folder-by-feature
,而不是folder-by-type
,我很好奇什么是最佳方法(在此示例中为Java)
假设我有一个应用程序,可以在其中使用服务,控制器,存储库以及当然的域对象来检索“用户和宠物”。
以文件夹.....样式为例,对于包装结构,我们有两个选择:
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
,控制器,存储库和服务的本地性。在什么情况下,我将需要所有控制器,但不需要视图,存储库或服务?