On Sunday, May 21, 2017 at 7:04:19 AM UTC-4, Paul Stockley wrote:
>
> I am really interested to hear how you can make a version of GWT RPC as 
> fast as a pure JSON approach. We take a tree of thousands of objects and 
> just use one JSON.parse / JSON.stringify call to deserialize / serialize 
> which happens within the browser in C++ code. No other processing is 
> required. We use Overlay types to access the data and that is it. In the 
> future we will switch to JsInteop types instead of overlays, that way we 
> only have one version of our DTO's that are used on the client / server.
>

As I suspected, you are comparing apples to oranges...


   1. You made dumb DTOs for this which means that you have to have the 
   code that copies data into them specifically for this purpose. And while 
   DTOs have followers for some cases they are *downright antipatterns* in 
   other cases. But we don't need to discuss that.
   2. You either don't have/use polymorphism or have had to code around 
   that as well.
   3. Any logic you have has to be either outside of the overlay types or 
   not polymorphic and you need to deal with that too.
   4. You also probably excluded the cost of delayed type conversion.
   5. How are you communicating long/Long? There are other examples.
   6. You can't include data of a third party library unless you have the 
   means to make full copies of it and keep in sync with that.
   7. Enjoy communicating cyclic graphs?


Then we come to the point of how much work you spend addressing the above, 
esp. for complex types. We don't have to spend any of that. None. Zilch. 
Nada. We have spent that time ensuring that we *never* have to send so many 
objects even if we have to show millions (literally) and made our product 
better overall.

-- 
You received this message because you are subscribed to the Google Groups "GWT 
Contributors" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit-contributors/144eac41-ae28-408c-be89-fbe4d02e407e%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to