On Monday, May 22, 2017 at 7:55:01 PM UTC+1, stuckagain wrote: > > I guess he is going through the same steps like most devs who relied on > GWT. I recognise the same reactions I initially had. We also have huge > applications build on GWT and we don't like rewriting hings that work. But > sometimes it is a good moment to reflect on the choices that were made. > With Java 8 support in place I have the tendency to do things different > anyway. > > After working iwth JsInterrop and Elemental2 (and the ability to quickly > interface with other js based widgets) I noticed that my code is much > smaller and maintainable. > > Right now I still depend on UiBinder and CellWidgets, but I plan to move > too Elemento2 and possibly vaadin grid instead or bootstrap datatable. > > Superdevmode is also fine in most cases. Sure sometimes it is a fight to > put a breakpoint in the right location, but with pretty mode the mapping > between js and java is very readable. > > Now I just need a replacement for GWTP with annotation processors. If > needed I would even like to help out in getting it done. > Check out Errai. Full annotation driven development with HTML templating (similar to AngularJS and what Singular promised). It provides a modern web app dev experience on top of GWT. http://erraiframework.org
Mark > > On Mon, 22 May 2017 at 14:32, Paul Stockley <[email protected] > <javascript:>> wrote: > >> You are putting words in my mouth. Try reading my comment again. All I >> said was the approach we took was a lot faster and resulted in smaller code >> size, both of which are true. I said it came with some compromise, which >> for our use case and I suspect many others isn't a big deal. However, it >> also comes with other benefits. For example, we can easily communicate with >> non-java backends and services using the same JSON based approach. >> >> It sounds like your use case isn't applicable to this approach. Google >> have made it pretty clear they don't want to use or support GWT RPC >> anymore. To be honest they are totally in their right to do this. This is >> one of the most one sided open source projects I have seen. Virtually all >> the work has been done by google over the years. Over the last few years >> all I have seen is people complain that their use cases (RPC, UiBinder, >> etc) are being abandoned. Now is the time to step up as a community and >> actually start contributing back. Our company relies on base widgets, >> UiBinder and Resources. If google doesn't offer these going forward, we >> will help to come up with alternatives that will work with J2CL. >> >> I would suggest you gather up support from everyone who still wants RPC >> and start planning to build an alternative. It sounds like you have lots of >> ideas how to make a better version. Talk is cheap, why not make something >> happen. >> >> >> On Sunday, May 21, 2017 at 9:03:55 AM UTC-4, Learner Evermore wrote: >>> >>> >>> >>> 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] >> <javascript:>. >> To view this discussion on the web visit >> https://groups.google.com/d/msgid/google-web-toolkit-contributors/81724bf2-552d-4461-9f92-b6fc388f4840%40googlegroups.com >> >> <https://groups.google.com/d/msgid/google-web-toolkit-contributors/81724bf2-552d-4461-9f92-b6fc388f4840%40googlegroups.com?utm_medium=email&utm_source=footer> >> . >> For more options, visit https://groups.google.com/d/optout. >> > -- 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/5872a3bd-f03e-4ce1-a68b-556d26ea16ae%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.
