To simplify things and help our users to be more productive, we have archived the current forum and focus our efforts on helping developers on Stack Overflow. You can post new questions on Stack Overflow or join our Discord channel.
Does Vaadin help developer to somehow organize the way all the widgets are communicating with each other? (some kind of predefined MVC or MVP pattern)
I would like to write advanced application with many tabs, grids, buttons - generally: many views. How should I divide the code to make my application maintainable, readable without loosing the ability for widgets to communicate with each other.
Take a look at the Application Foundation framework, especially the View module. The view module's purpose is to simplify the communication between views and general handling of views in an application. Another add-on you might be interested in is the Blackboard.