मैं एक AngularJS स्टाइल गाइड का उपयोग करता हूं। इस गाइड के भीतर एक शैली है folder-by-feature
, जिसके बजाय कहा जाता है folder-by-type
, और मैं वास्तव में उत्सुक हूं कि सबसे अच्छा दृष्टिकोण क्या है (जावा के लिए इस उदाहरण में)
मान लीजिए कि मेरे पास एक एप्लिकेशन है जहां मैं उपयोगकर्ताओं और पालतू जानवरों को पुनः प्राप्त कर सकता हूं, सेवाओं, नियंत्रकों, रिपॉजिटरी और डोमेन डोमेन ऑब्जेक्ट का उपयोग करके।
फ़ोल्डर-दर-शैलियों को लेते हुए, हमारे पास हमारी पैकेजिंग संरचना के लिए दो विकल्प हैं:
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
, नियंत्रक, भंडार और सेवा के इलाके से लाभ होगा । किस स्थिति में मुझे कभी भी सभी नियंत्रकों की आवश्यकता होगी, लेकिन गैर-विचारों, रेपो या सेवाओं के बिना?