Hello! I’m going to make an assumption about you. Since you’re reading this article, it follows that you’re curious about Flutter. It’s also likely that you’re sceptical. So what’re the benefits of Flutter? Why Should You be Using Flutter? That’s what I’m going to answer you in this post.
First, I am going to tell you a bit about what I do, because I want you to know that I’m confident in the future of Flutter. I’ve been lucky enough to use Flutter at work since mid-2017 when it was still in its alpha stage. Before I moved to Flutter, I had seven years of experience in developing both native and cross-platform mobile apps.
What if I tell you that Flutter is much much better than any of the current exiting mobile app and web UI development frameworks? Let me prove this to you.
There are countless cross-platform libraries and frameworks out there, but a few things distinguish Flutter. First, it is entirely focused on GUI applications, primarily Android and iOS, but with support for web applications in progress and desktop applications in early preview. You can compile Flutter code to a native macOS application (this project is alpha status), or on Windows and Linux in “early technical preview.”.
Write once, deploy everywhere
You can use Flutter to deploy applications not only to iOS and Android, but also ChromeOS, browsers, macOS, Windows desktop apps, and Fuchsia. What that’s mean to you is your web, desktop and mobile apps can share all the code except each client’s views. In practical terms, this means you are super productive. You can just maintain one code, one development team for in all these platforms.
Flutter Increases Productivity
Let’s assume that you got an e-commerce project. The client wants you to develop a new web app and mobile apps to get his business online. So now you have to build three different apps for web, android and iOS. Before Flutter, when you got such a project, it had to be written and maintained three times by three different teams. This three different teams that could hardly collaborate because they had different skill sets.
Flutter solved that problem. It has proved, in front of our own eyes, that it increases productivity and collaboration by orders of magnitude. Our three teams (web, iOS, and Android) became one unified team. All our team members had the same skill set, and we could all collaborate and lend helping hands. Flutter allows us to be flexible and productive while offering users both iOS and Android apps. After a failed attempt at different cross-platform solutions, Flutter has proven to be the ideal tool for us in such use cases.
But Flutter is different. It compiles your code to actual native code, so there’s no need to translate Dart at runtime. That means your app won’t lose any performance or productivity when running on a user’s device. It will just run as a real native app.
Your app will compile in seconds
If you’re a native Android or iOS developer, one of your major pains is the development cycle because of both of them infamous for its compile times. But if you’re using Flutter, you can compile your entire app in less than 30 seconds, and incremental compiles take less than a second with Flutter’s hot reloading feature. Amazing right?
Testing got easier and faster
As I mentioned earlier, you only need to write one Flutter code for both iOS and Android platforms, and that means you only need to write tests once for both of them. When it comes to unit testing with Dart, it’s much easier than other languages. Flutter also comes with a fantastic testing library which makes easy to test widgets.
Finally, Is Flutter for you?
You can spend all day listening to people tell you the benefits or downfalls of any technology. At the end of the day, though, it’s all about the tradeoff.
If you’re working on a side project or new product, Then the answer is simple: yes. Flutter is absolutely for you. The amount of time you’ll spend getting up to speed with Dart and Flutter will pay off big time in the long run. Trust me on this. But if you’re CTO deciding if your company should adopt the technology, now there’s a bunch of things to consider like your current resources, existing developer’s experience and many. So the decision is up to you.
If you already do iOS or Android development on your machine, you likely have most of the tools needed already, and you can be up and running in a matter of minutes. You might as well give it a try. Here are a few articles that might help you to get started;
Who uses Flutter?
Many world-leading organizations already adopt Flutter. Google, Alibaba, eBay, Tencent and Square are just a few to names. You can go to the official Flutter’s showcase page to see more and get inspired.