Home Features Docs Blog Support GitHub

Cross-platform UI Layer on top of MOE

(Ivan) #1


How nice if MOE can create a top layer and hide all this ios specific things behind… kind like a wrapper…

MOE it is good but bit hard to pickup as every things are direct bind to iOS…

hopefully MOE can provide some things like Codenameone… kind like a wrapper and make it more friendly to Java developers…


(Eugene) #2

I kinda like that I can use iOS api to build native-looking and behaving apps for iOS using Java and run existing Java code on backend.

(Gergely Kis - Migeran) #3

Hi Ivan,

this is a very complex topic. There are a lot of competing UI paradigms one could follow:

  • the good old Java Swing style, like Codename One or Xamarin Forms
  • React Native style
  • Angular 2 style
    just to name a few.

I don’t see a clear winner that could be the standard solution for MOE. If you look at Xamarin Forms, which is a similar offering: they only recommend it for simple projects, and more complex UIs have to be created using the platform native UI toolkits.

MOE will always keep a base layer that is very closely mapped to the native APIs, so you can do everything with MOE that you can do in ObjC or Swing.

That said, I also see the benefit of a cross-platform UI solution as an add-on.

Personally, I think that the old Java Swing model is a dead end. I see much greater potential in a React Native like UI layer on top of MOE (or even one that is compatible with existing React Native components, but you can use your favourite JVM language).

What do you all think? Which UI programming model you like best?

Best Regards,

(Ivan) #4

Dear Gergely,

Ya… this is not easy…really toke me some times to play around MOE.
Yes, I think I quite like MOE way but a bit hard to write a cross platform in GUI section.
There’s good and bad in this area. I had being using Eclipse SWT as my app main GUI section.
I quite like SWT as it is quite simple and it give me "real“ native widgets/controls. MOE, I can refer iOS doc or search internet for solution.
The only section I found a bit difficult to map back is the way the MOE caling methods. probably I’m not familiar enough with MOE and iOS.
conclusion, MOE very powerful but for a new comer from Java world, it is not straight forward at all like CodenameOne but I don’t like the CodenameOne GUI section and I think it is a bit slow if compare to
the “real” native widgets/controls like what MOE provided.

After a lot of help from you all and play around MOE… Ya, I quite like MOE just bit hard to pick it up this beast.
@ekuleshov , I think I agreed with you.

Thanks all

(Tobium) #5

I would like to use JavaFX with MOE…

(Ivan) #6

Hi ,

You can check it out http://gluonhq.com

Best regards ,

(Kirill Prazdnikov) #7

I think this is out of scope of MOE itself. MOE is a compiler, and everyone wants it to be good compiler with fast generated code.
So it would be nice if compiler team is focusing on compiler.

Multiplatform UI is another task. One can think about and solve it in his own context.
We have developed MP UI for us, it works in MOE, RoboVM, GWT, TeaVM and Android systems.

It is not very good, but it portable and works and we are working to make it better.

Here is our app