Been looking at dart-flutter relationship recently… seen what it can do… pretty
amaizing! Two birds with one stone is real! Before jumping to it, i soldem
wonder; - what are the compromises that one would face upon embarking this? -
can these comporises be that bad? (compared to native ios/android a...
I can go ahead and talk about Flutter as that’s what I’m familiar with (from my limited experience).
For some context, I’m the main maintainer for Thunder, which is built purely with Flutter/Dart. I can also only speak on behalf of iOS/Android as we’re only focusing on targeting those platforms at this time.
There will undoubtedly always be some compromises when using Flutter as compared to their native counterparts. However, if your app only ever deals with handling UI and logic that is platform agnostic, then I would say that Flutter is fairly good. It makes it really easy to support both platforms and removes the need to re-write logic for each supported platform. This means you can get everything to behave pretty much the same regardless of the platform.
The moment your app needs to tie into platform specific features, it’s a mixed bag. You can either find packages that suit your needs, or write your own logic to bridge that gap. When trying to find packages, you often need to check if it supports the platforms you’re supporting as not all of them will. You also have to see how well maintained they are since most packages are from third parties and not from the Flutter team themselves. I haven’t dealt with having to write custom logic to tie into platform specific features so I can’t comment too much on that.
Dart/Flutter allows for compiling native apps and allows for better device access.
I would not recommend react-native. I would recommened Tauri instead but Tauri does not compile apps for Android and iOS currently but has this on its roadmap.