Top 10 Reasons To Choose Flutter For Mobile App Development
November 16, 2018
There’s a new player in the game of mobile app development and it’s causing quite a stir. Or a Flutter. The mobile framework was developed by Google and is completely open source. It can be used to build mobile apps for Android, iOS and Google Fuchsia. It’s based on Dart, Google’s own programming language, as well as the Skia graphics library–what Chrome uses. But is Flutter suitable for you, or your business? We review the advantages, as well as the disadvantages below.
1. Flutter updates quickly
When teams are working on a project together, Flutter has hot reload, meaning developers can see the changes they’ve made to any code straight away. This facilitates collaboration as developers and designers can instantly see if their new features work. They can then can quickly fix bugs and play around. This may not sound like much but normally with native app development, you have to wait a few minutes after each change to see it reflected.
2. Flutter is great for minimum viable product (MVP) products
If you’re looking to build an app quickly and show it to investors, Flutter is really efficient. It is also lauded to be the best choice. It takes about 250 hours to develop an average app with Flutter for both Android and iOS. Compare this to the 400 hours it traditionally takes and you can see how Flutter can save companies time and money.
3. Flutter overcomes the typical limits with cross-platform approaches
4. An extensive widget catalogue
Flutter provides that native application feel with customisable widgets for iOS, making it easier to produce the exact design and brand experience desired. Ultimately, rather than having separate views and layouts, Flutter is based on a unified object model, which is the widget. Widgets can be used as structural elements, for stylistic aspects like a font, as padding, and more. They then work together in a hierarchy, with those below inheriting the property of their parent.
Along with widgets, Flutter designs layouts to be intuitive. The individual widgets, as they are developed, specify the layout information, meaning they don’t have to go through processing rules that may not apply to them. Flutter has a tonne of optimisations for these layouts, including things like caching.
5. No need to build a back end
Google provides Firebase as the backend, and that includes support for cloud storage and functions, authentication, database hosting, and more.
6. Flutter works with Google’s new operating system, Fuchsia
Tech experts believe that Fuchsia will be the “heart” of millions of Internet of Things devices because it will be usable on low-powered devices. Others are stressing its upcoming role with AR and VR. Ultimately though, Fuchsia is being built to be the Google operating system used across all kinds of devices, including Chromebooks and phones. It will also rely on Flutter.
7. Less code
8. Access to native features
With Flutter, you feel like you’re developing on a native platform when it comes to using native languages to implement platform-specific functions like geolocations or camera. You can use any existing Java, Swift, and Objective-C code.
9. Easy to get started
Flutter doesn’t require powerful computers, and there’s no need to worry about your operating system being able to handle it.
10. Ongoing support
As a Google initiative, the Flutter framework is backed by thousands of developers who are happy to participate in the community and to help the framework grow. There are already almost 50 videos that developers can access in order to learn how to build with Flutter.
As a new framework that is still undergoing development, it goes without saying that Flutter does have a few flaws. Some developers may be cautious about using something so new for commercial apps and may feel that it is more appropriate for simple apps for prototyping. On the other hand, some companies have thrown caution to the wind, with Tetsuhiro Ueda using Flutter to make the overly successful CarTune app.
1. Mobile only
Flutter isn’t supported by web browsers yet, making it a bit more complicated for those designing apps to be used on phones and laptops.
2. Flutter’s libraries are limited
While long-standing native apps may have everything they need in their native SDKs, including Twilio, Stripe, and streaming services like WoWza and Ustream, Flutter’s developers are still coming up with these things from scratch. So, while Google’s support means there are many helpful libraries, you won’t find everything you need yet.
3. Limited support for TV
At the moment, Flutter offers little support for Android TV and Apple TV. Apps built with Flutter probably won’t work on those platforms.
Google announced the Flutter Release Preview 2 in September, stating it was the “last major milestone before Flutter 1.0”. Google Adwords and Alibaba, for example, are already building apps with Flutter, and popular apps like Reflectly, a meditation app driven by AI, and Hamilton Musical, the official app for the Broadway musical, were built with Flutter.
If you’d like to know more about Flutter, or about services for developing apps using it, get in touch with Itomic. With a team based around the world, and experience building bespoke web app solutions and software, Itomic is well positioned to deliver solutions with Flutter as well.