Monday, February 25, 2019

Re: Tips on libraries

Thanks Thomas, I imagined this answer :-) 

As I wrote in the initial post, my biggest concern is being updated with the UI, so I'm waiting for someone to show me his experience with other UI libraries, maybe even with JsInterop. I have seen the showcases of GWT Material and Domino UI, but I would like to understand how they fit together with the other technologies I have mentioned.

Your suggestions are very useful, but at the moment I do not think I can follow them. Let's me explain my point of view: one thing that struck me when reading the various blog or posts related to GWT is that there is this desire to create code that is already future-proof. But today the release of GWT 3.0 has not yet been announced, nor do we know good specifications. Correct me if I'm wrong: is the advice to avoid GWT generators just to be ready for the future? If so, I see it as a violation of YAGNI.

In particular, if I completely exclude the use of GWTP, I lose some things:
  • integration with a dependency injection framework (to this you already answered me, telling me to replace GIN with Dagger)
  • MVP architecture and consequently difficulty in carrying out TDD development
  • management of the browser history (probably in the link that you indicated to me, related to gwt-places, I can find something interesting)
  • years of experience with this library, which makes me very productive
Also, if I have to avoid GWT generators then it means that the GWT Editors and JSR-303 part (Validation) must also be replaced, right?
Finally, I had already imagined replacing RPC calls with REST (RestyGwt maybe?), but I have to do some tests first to check that it is advantageous.

So, if the answer at "Is there one or more framework that offers the same features as GWTP and whose learning curve is fast enough?" is "No", then I'll continue to use GWTP + GIN: I need to be as productive as I am now and I think that modularizing code and using best-practices in class design is the best way to get a feature-proof code (if and when GWT 3.0 is released then I'll see what do...). Otherwise, please tell me how I can replace all the features I've talked about.

Thanks again,
Ramon

Il giorno lunedì 25 febbraio 2019 12:59:15 UTC+1, Thomas Broyer ha scritto:

On Monday, February 25, 2019 at 12:33:23 PM UTC+1, Ramon Flamia wrote:
Hi everyone,
having to start a new GWT project, on average complex, which framework / technologies you recommend for the following points:

- MVP architecture (currently using GWTP)
- dependency injection (currently using GIN)
- communication with the server (currently using GWT RPC, provided by GWTP)
- UI (currently using GwtBootstrap3)

I ask this question because it seems to me that all the libraries I have mentioned do not foresee new developments; for the GIN and GWTP part this is not a problem, because these libraries are very stable; instead, the part of UI is the one that worries me the most, as there is no upgrade to version 4 of Bootstrap.

Can't give any recommendation wrt UI, as I never used any 3rd-party library and have only worked on maintaining legacy projects for the last years, or GWTP (always used plain old GWT Places and Activities), but GIN ⇒ Dagger 2 (and replace GIN Assisted Injection with either AutoFactory or AssistedInject), and I'd try to avoid GWT-RPC.
Try to avoid anything based on GWT generators these days, and this includes GWTP. People generally use a generator with GWT Places, but it can trivially be replaced with an annotation processor or hand-written code so it's future-proof (work is already done btw: https://github.com/gwtproject/gwt-places)

--
You received this message because you are subscribed to the Google Groups "GWT Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to google-web-toolkit+unsubscribe@googlegroups.com.
To post to this group, send email to google-web-toolkit@googlegroups.com.
Visit this group at https://groups.google.com/group/google-web-toolkit.
For more options, visit https://groups.google.com/d/optout.

No comments:

Post a Comment