In the context of introducing Flutter to the audience, this presentation compares the major players in the cross-platform or multi-platform mobile frameworks.
Code reuse is the best here (web is also sharing code) • No more native views type of problems • Can better leverage a web team • Good for MVP in many cases. Not so good after that for most • Great speed. Amazing opportunity for a web team • Quality is usually the trade-off • Humans: Native devs account for some of the native look and feel • Platform: Native rigidity accounts for a lot of look and feel • Web-first mentality skews certain design and behavior decisions • Performance still an issue on some devices • "Native for free" - You get what you pay for
• Business logic is mostly the only thing shared • Opportunities • Build around C# or Js as a company • Great for MVP and even better: MLP • High quality and Speed is decent (still have to deal with platform BS) • React Native has a superb community with tons of ready-made stuff • UI work is still (pretty much) platform specific • Requires deep native knowledge • Limits of the native views apply (and platforms now share these limits) • Trading some issues for others • Limits of the base framework apply (js bridge still a bottleneck for animations) • I consider learning iOS and Android harder and worse to learn than a new language
reuse is very good. Not as good as html+css, yet • Good for MVP and many milestones beyond • Quality is native-like with freedom for complex UI • More powerful than native, Faster than RN • Closest to designers. Can actually code with a designer (peer programming) • Worst in terms of existing knowledge in your company, • But easiest to learn in my opinion • Native knowledge is not needed • Building a team is fast and cheap (can convert mostly anyone, although front- end people are the way to go)