-
Notifications
You must be signed in to change notification settings - Fork 2
Comparision: Mvp4g vs. Mvp4g2
Frank Hossfeld edited this page May 1, 2018
·
7 revisions
Due to the fact that Mvp4g2 is based on a different technique, some things of Mvp4g are not possible to implement in Mvp4g2.
Mvp4g2 is based on APT instead of GWT generators.
Why do Mvp4g2 use APT?
GWT 3 will remove the GWT generators feature. Therefore all GWT generators based frameworks will not work anymore with GWT 3 - including Mvp4g!
Using APT instead of GWT generators brings some major changes:
- APT are triggered during the Java compile step in opposite to GWT generators which is triggered during the GWT compile
- APT is a different approach compared to GWT generators. Things, which are quite easy to do with GWT generators are impossible to do with APT
- No replacement-rules, no generate-with-rules, etc.
Also, Mvp4g2 should be a small, tiny framework. So, we removed some features of Mvp4g, we think that they aren't be used.
If you are missing something, feel free to contact us.
Feature Comparison
Feature | Mvp4g | Mvp4g2 |
---|---|---|
Loader at application start | No | Yes |
Event bus interface | Yes | Yes |
Place Management | Yes | Yes |
Broadcast events | Yes | No |
Annotated method in handler / presenter to add the method as event handler to the event bus | No | Yes |
Debug feature | Yes | Yes |
Filter event feature | Yes | Yes |
Activate/Deactivate event feature | Yes | Yes |
Passive event feature | Yes | Yes |
Pass event feature | Yes | Yes |
onBefore event feature | Yes | Improved |
view delegate support | Possible | Default |
inject view into presenter | Yes | Yes |
inject presenter into view | No | Yes |
support for handler (presenter without view) | Yes | Yes |
support for multiple presenter feature | Yes | Yes |
Multi module support | Yes | Planned |
Cycle view feature | Yes | No |
HTML 5 History Support | Yes | Default |
Custom Place Service | Yes | No |
Hyperlink History Token | Yes | No |
Crawlable History Token | Yes | Yes |
Mvp4g needs the following libs to run:
- GWT
- GIN
- guice-assistedinject
- GUICE
- AOPAllience
- javax.inject
Mvp4g2 depends on
- elemental2-dom
on the client side.
The Mvp4g2 processor depends on
- Mvp4g2
- JavaPoet