For larger project
phuongphally opened this issue · 1 comments
I agree with your good structures. But for larger project should be compare like
Example smaller project
Controllers
src/controllers/customer.dart
src/controllers/user.dart
src/controllers/order.dart
Repositories
src/repositories/customer.dart
src/repositories/user.dart
src/repositories/order.dart
Bindings
src/bindings/customer.dart
src/bindings/user.dart
src/bindings/order.dart
......
Larger project
src/customer/controller/customer_controller.dart
src/customer/repository/customer_repository.dart
src/customer/binding/customer_controller.dart
src/user/controller/user_controller.dart
src/user/repository/user_repository.dart
src/user/binding/user_controller.dart
src/order/controller/order_controller.dart
src/order/repository/order_repository.dart
src/order/binding/order_controller.dart
......
Yes yes, thinking about it our friend william silva put the proposal in modules, sign separating by modules, formed by controller, page, binding and reusable or componentized widgets in that module.
In the readme in English on github, it has only the structure in modules, on the website each implementation has a written tab, packages and modules selecting you can see the two different architectures.
In packages is the one you mentioned, especially for small projects and unviable for large projects.
here is an example of the modular structure.
app
- date
- services
- repositories
- provider
-api
-db
- modules
- home
-page.dart
-conttoller.dart
-binding.dart
/ widgets
-custom_text.dart
- core
-theme
-values
/ strings
/ colors
/ utils
......
take a look at this readme.
thanks for contributing and i hope you like this modular proposal, i'm evolving it to suit any language.