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 app dev)
- how bad are the work-arounds (if they exist) to these compromises?
PS: any extra information would be highly appretiated 😊
Platform APIs are a mixed bag. Flutter itself provides low level IO and networking, and a framework for bridging Dart code and native code (C++/Kotlin/Swift), and not much else besides. Most of the platform stuff is exposed through packages, some of which the Flutter team maintain, but most of which are 3rd party.
Some of them are well written, actively maintained and support all platforms, but many aren’t. Some times you run into issues where the package is trying to paper over the fact that there aren’t direct equivalents for all APIs, and you just have to deal with it.
I guess the conclusion is that Flutter isn’t magic - for everything beyond the most trivial apps you are going to have to do platform specific stuff to make it work, but the existing stuff gets you most of the way there and gives you the tools to fix the problems.
Personal preference, but I really like Dart as a language. The typing system is great, async is sane, and the standard library is really well designed.
Edit: Obviously, flutter also provides a UI framework - out of the box this is designed for Material UIs, but there are packages that implement widgets for other UI design systems
Appreciate the time you took to type all these good sir…