I have been using GWT and MVP for 2 years and so. I loved the way MVP provides flexibility of working with multiple views. In GWT or Swing based application design muddles very quickly. Maintenance becomes nightmare. We don’t think about the separation of concern, then mix up the UI code and business logic together. MVP (Model View Presenter) proposes following things - · View is an interface which is a contract for presenter. here you can define the operations and expose widgets that will be present in the UI. for example if an UI needs an input box for user name and a button then you can expose two methods getName() and getOkButton(). Get name can be implemented using whatever widget user wants- a textbox or a custom widget. · View implementaion implements the view interface and only concentrate on layout or grouping of widgets. Doesn't perform and logic, doesnt attach any DOM handler to any wi...