. What is the hype about? After the Flutter Beta 2 release, how much promise is the platform showing? Should mobile developers switch to Flutter? Let’s take a look.
First off, let’s take a look at the official description of the platform from flutter.io:
Flutter is Google’s mobile app SDK for crafting high-quality native interfaces on iOS and Android in record time. Flutter works with existing code, is used by developers and organizations around the world, and is free and open source.
Here are the important parts from that statement:
Flutter isn’t only focused on bridging the Android-iOS gap, it’s focused more on being a better way of building a mobile app. Native android development has some inherent issues, a lot of which developers don’t have many workarounds for. Here are a few key points for Android developement in Flutter:
Although gradle is a useful tool, the gradle build times for apps are rather large and is a hindrance for fast development cycles. This is not to say Flutter apps do not need a Gradle build at all, but they don’t need it multiple times. A flutter build invokes a Gradle build the first time it runs but does not need it again for a full restart of the app. Android Studio has reduced Gradle build times over time and features like Instant Run certainly are helpful but Flutter load times beat native times by leaps and bounds. Flutter’s hot reload is immensely helpful in smaller changes.
Because Android has separate layout and Java/Kotlin files, we need to get references for views and then alter them in the backend files. Flutter uses a single language(Dart) for design as well as backend and uses a reactive framework, so we don’t need references to widgets(Flutter equivalent of views) at all.
Java has been showing it’s age for a while now and even after Java 8, it leaves a lot to be desired. Dart on the other hand borrows a lot of the most popular features of other languages without losing the familiarity of Java or similar languages. Dart was developed with common developer tasks in mind, making common things effortless and I’d really recommend checking out the: Dart Language Tour.
Common animation patterns are heavily simplified and are optimised for 60FPS. As an example, consider taking a look at Hero Animation which is common on apps like the Play Store.
No platform is perfect and sometimes the lack of a particular feature can be a dealbreaker. Here are ones I personally think should be considered before you think of switching:
I’ve been working with Flutter mostly for the the shared codebase between platforms and the UI elements and animations, and I recommend every mobile developer to give it a spin. It’s a fresh new way to see mobile app development.
A few helpful hints:
Happy Coding!
Recommended Courses:
☞ Flutter & Dart - The Complete Flutter App Development Course
☞ Real-World Projects with Flutter
☞ Flutter TabBar & TabBarView by Sample Code | Flutter Tutorial | Flutter 2023
☞ Flutter - Build Cryptocurrency App From Scratch
☞ Flutter Tutorial: Flutter PDF Viewer | Flutter PDF Tutorial | PDF in Flutter
☞ Ecommerce Furniture App UI Design - Flutter UI - Speed Code