Have you ever heard about an interesting new app you’d like to download, only to learn it isn’t available for your mobile operating system? Or maybe there is a version of the app for your OS, but it’s just not as good (Snapchat for Android might come to mind). If you’ve experienced either of these moments, there’s a good reason: Android and iOS apps are written in different programming languages, which means developers have to start essentially from scratch when they recreate their app for a new platform or risk compromising on performance. Several companies have produced tools to help address this issue including Microsoft (Xamarin) and Facebook (React Native), but there’s always room for improvement — and that’s just what Google is promising with the public release of Flutter 1.0.
Flutter has been around in various beta iterations since 2015, but as of today, it is declaring itself a fully-fledged and mature open source engine for cross-platform mobile development, which means we can expect to see its influence on many more apps in the future.
To begin with, we can expect to see Material design elements. Material is Google’s design ethos favoring a minimal, white, and rounded look. The company is in the process of rolling out the latest version of Material across the majority of its products, so you’re probably familiar with it and have already decided whether you’re a fan or not. Some call it elegant, others prefer a little more color and texture, but either way, app developers that use Flutter will be given all the tools to enable “the ultimate realization of Material Design.”
We might also see a little more diversity in how apps created by Flutter look and feel. Google’s engine promises to allow designers more precision in creating apps. The engine lets designers control every pixel on the screen, and there are fewer limitations on where and how they can overlay and animate graphics, video, text, and controls. So far, these user interface capabilities have earned good reviews from those in the development communities, so hopefully we can expect fewer cookie cutter, more boundary-pushing design choices from apps made with Flutter.
Performance is a major selling point for Flutter, too. The engine is powered by the same Skia 2D graphics engine that powers Chrome and Android, and Google has optimized graphics to run at the native speed of your device, so graphics performance should be impressively smooth in Flutter apps.
One benefit for developers is stateful hot reload, a capability that lets them make changes to their app and see results instantly without restarting the app. While this doesn’t directly affect consumers, if it substantially reduces development time, it could have an interesting effect on the proliferation of apps in the marketplace.
Ultimately, it’s still a bit early to say what effects Flutter will have for consumers. For one thing, it needs to gain popularity with developers — currently, React Native (the engine behind Instagram, Airbnb, and UberEats, among others) has it soundly beat in terms of market and community support, but that could very well change now that Flutter is public. There’s also no doubt that Material Design elements are a major boon to the Android development community, making it easier than ever to mimic that operating system’s distinctive style..