A better understanding of the Fuse architecture

Hi,

I’m trying to better understand the architecture behind Fuse…

  1. What happens when a project is compiled? What does the project compiles to?
  2. What is the engine behind Fuse? I’ve seen that on Android JS is running under V8 and on iOS probably the iOS JS engine - so I’m guessing that JS logic is interperted at run time? how does it interact with the UI?
  3. How does the UI compiled? is it also interperted at runtime? does it create native iOS XIB files before xCode compilation? Android XML files? and what about creating objects on the fly?

Basically I’m interested in knowing what happens behind the scenes when the app is running? is it fully interperted and what gets compiled to native?

Is there a place where I can read more about the architecture or maybe see a diagram? I think it’s important to evaluate performence of an enviorment before choosing it.

Thanks

  1. A project compiles to native C++ for iOS or Android.

  2. There is no engine behind Fuse. It runs native code. Your JavaScript is however run by the JavaScript engine on the platform you are using.

  3. The UI is compiled to uno code compile time, which is compiled to native C++.

Only the JavaScript is interprented. All the other parts are compiled to native code.

Hi!

What Bjørn-Olav says is correct.

There is no generation of XIB files or Android XML files, it is all handled in C++ code on both iOS and Android platforms.

In addition to native UI components, Fuse supports OpenGL ES accelerated UI controls.

Can UI components be created on during runtime? What kind of apps can be developed? small/medium? large apps?

Thanks

Yes, you can instansiate new UI components and add them to the layout runtime.

Fuse and Uno are well suited to deliver apps in all sizes. Care has been taken to make it easy regardless of the size of application you are building.

If the JavaScript is interpreted by the device’s default JavaScript Engine (V8 for Android & JavaScriptCore for iOS), then this makes the JavaScript code kinda unsecure. All this while I had thought it was also compiled to C++ or Uno :confused:

> **Bjørn-Olav Strand wrote:** > >

Yes, you can instansiate new UI components and add them to the layout runtime.

Fuse and Uno are well suited to deliver apps in all sizes. Care has been taken to make it easy regardless of the size of application you are building.

> How? Could you please give a example code