What are the disadvantages of using Viper?
The question is about VIPER
The disadvantages of using Viper are: increased complexity, a steeper learning curve, and a higher initial development overhead. Viper’s architecture breaks down an application into five clear-cut layers: View, Interactor, Presenter, Entity, and Router. The number of files and components can be huge; that means setup and organization is more painful, especially in smaller applications when simpler architectures would suffice.
It’s necessary for developers to follow the structure strictly, which may turn out restrictive or overly complex to teams that work without the pattern. Sometimes, the separation of concerns in Viper can feel very rigid and the amount of boilerplate code is great, slowing down development and making the codebase harder to navigate. Because of these factors, Viper doesn’t seem an ideal match for smaller projects or teams who seek an uncomplicated flow in their development process.