24
loading...
This website collects cookies to deliver better user experience
useState
or useReducer
in the componentUsing reactive object such as Rx
Do it outside of the Presentation System. We should depend on the reactivity only provided by the view library (React, Vue, etc.) in the inside of the system.
Separating Command/Query like frontend CQRS
Do it outside of the Presentation System. We should consider the data flow separately with Flux, in the system.
Concentric layered architecture3
Do it outside of the Presentation System. The presentation system corresponds to the outer layer(shell) since it is the presentation4.
DDD in frontend
Do it outside of the Presentation System. Maybe the system depends on either the primitive values or DDD domain models and/or usecases5.
Various component design patterns
It should be closed in the Presentation System. I have not seen the component design pattern which crossing the system boundary.
Component library/framework
It should be closed in the Presentation System.
It's too large to call it as a "layer", so I call it as a "system". Moreover, just using presentation "layer" seems like that its target is only around the Presentational Component. ↩
Initially I started writing this article with Pattern 1 in mind. However, I currently feel that Pattern 2 will be the mainline through the layer division of Container Component in the future. ↩
Such as Hexagonal Architecture, Clean Architecture, and Onion Architecture. ↩
I believe, however, the most important part is the Presentation System in frontend. ↩
To be honest, I do not have an experience of DDD in frontend. This is just a wild guess. ↩