DEV Community

Flutter, React Native, Ionic and Native platform: A visual guide

rubensdemelo on August 04, 2019

Cross-platform development has another big player: Flutter, the Google toolkit that allows us to create apps to iOS and Android (and soon to deskto...
Collapse
 
seanmclem profile image
Seanmclem

Is the concensus that Ionic 4 (capacitor) has a slow Native Bridge?

Collapse
 
mhartington profile image
Mike Hartington • Edited

Hey there! This is quite the opposite. The bridge layer between the webview and native APIs is fast, but has also never really been slow. There's a misconception that the native bridge is slow due to the fact that the plugins take a while to become available. With Capacitor, the plugins are loaded and bridge and created right at start up, so you can have a fast interaction between your JS code and native layer. Here's a small example just in terms of perceived startup time.

twitter.com/mhartington/status/113...

The splashscreen is only visible for a second before the actual app hides it on startup.

EDIT: If you're speaking about anything in particular, I'd love to know what issues you've faced and if you have a demo to look out.

Collapse
 
rubensdemelo profile image
rubensdemelo

Thank you for clarification. Would you suggest any adjust about Ionic?

Collapse
 
chimon1984 profile image
Ryan Edge

The bridge itself is not slow. Rather it can be a bottleneck depending on how much data is sent thru it due to the serialization/deserialization. Think in terms of JSON.parse in the browser. Parsing a couple hundred records is fast, but if you try 50k records, then your performance suffer.

Collapse
 
seanmclem profile image
Seanmclem

Same for react native I'd think.

Collapse
 
bkairu5 profile image
Halafu

I have never understood why every article on the web about Flutter suggests that learning Dart is a disadvantage. It's almost as if to use RN, Ionic or to go purely native you don't have to learn anything other than booting up your computer, or that every mobile developer (existing or new) on the planet already knows JavaScript, Kotlin, Java and Swift and therefore learning a "new" language is a disadvantage.

Collapse
 
tomavelev profile image
Toma

All cross platform frameworks have the weak point - plugins in terms of being up to date with all the platforms and changes, beside their own way of work-arounding adapting and fixing the framework to speed, size, performance, features. I've tried Flutter and Cordova (with released apps), and played with react native and native script. It is actually pretty expected to be hard. All platforms have their own things to be careful about.

Collapse
 
ipoool profile image
Asep saepulloh

cordova is yesterday 😁

Collapse
 
_t0p1 profile image
TOP1.0

now i know what is their weakness for each platform. Thanks

Collapse
 
rubensdemelo profile image
rubensdemelo

Great :D

Collapse
 
rubensdemelo profile image
rubensdemelo

Thank you