It really depends on the size of the object graph and how your application is structured. For example, for search results we use small DTOs that only contain the information that appears in the search result grid. Once you click on a particular result, that result is fetched from the server side and the entire object graph is returned and displayed.
In general, most of our GWT client side code is structured around an MVP implementation. Since the idea of GWT is to build complex clients, you're not going to only reserve it for the P in MVP. In most of our GWT applications, a lot of the logic happens on the client side while the server is reserved for security (although we have that on the client side too, of course), database communication and other non-GWT pieces. -- Arthur Kalmenson On Tue, Jun 9, 2009 at 5:16 PM, Eduardo Nunes<[email protected]> wrote: > > On Tue, Jun 9, 2009 at 2:41 PM, Dhanji R. Prasanna<[email protected]> wrote: >> >> >> On Tue, Jun 9, 2009 at 6:47 AM, Eduardo Nunes <[email protected]> wrote: >>> >>> Hello guys, >>> >>> First of all, I would like to congratulations Jesse and Dhanji for >>> the google io guice presentation, it's nice to see how you look like >>> too. >> >> Glad that you enjoyed it! But I have since gotten a much cooler haircut... >> >>> >>> One point that I think you could talk about (considering the name >>> of the presentation) is about wiring modules to generate the final >>> application. AFAIK I can wire modules using the install method or >>> listing all modules at the injector creation time. My first question >>> is about it, what is the difference between: >>> - create general module and use install method to add new other ones >> >> The only problem with this is that module recombination is limited. Any >> installed modules are tightly depended on by the installing module. >>> >>> - create the injector passing a list of all modules >>> - a combination of the two above >> >> This is probably a more flexible choice if you would like to pick and choose >> from finer grained module combinations. >> >>> >>> The other question is related to GWT + Guice, I'm starting to >>> develop an application with these two frameworks and a question came >>> up to my mind. How do you deal with the data that must be transfered >>> to gwt through rpc. For example, consider this situation: >>> >>> - The system has a entity named User with many attributes. >>> - The system interface has to show the username, first and last names. >>> >>> Does your service method return directly the entity User (even with a >>> lot of unnecessary attributes) ? Or, does your application has a >>> "controller like" service that take the information from a business >>> service and transform it into a DTO before send it to the interface >>> (gwt) ? >> >> This is purely a performance/api tradeoff. I am paranoid about performance >> so I would probably return just the fields that the UI absolutely required. >> Typically you would create a separate transport class that contains only >> those fields. >> However, if the object is rarely passed back and latency is not a key >> concern then it may be acceptable to use the same class on client and >> server. >> > > Yes, I'm very worried about performance too, usually I use DTOs in the > applications, but my service interface tends to be totally client > oriented, doesn't it break a little bit the MVC pattern? > >>> >>> I know that this second question should best fit in the GWT mailing >>> list but I think you could answer it better. >>> >>> PS: Is there a document or something like this, that describes the set >>> of libraries/frameworks used in google wave? >> >> I am not aware of one, but I can tell you that we make liberal use of >> Google's open source technologies like Guice (particularly, Guice Servlet >> 2.0), GWT, Google Collections and so on. >> Dhanji. >> >> > >> > > > > -- > Eduardo S. Nunes > http://e-nunes.com.br > > > > --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "google-guice" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/google-guice?hl=en -~----------~----~----~----~------~----~------~--~---
