What is Flutter and Why Should You Use it?

What is Flutter and Why Should You Use it?

flutter-icon_100x100.png

What is Flutter?

Flutter is an open-source software development kit (SDK) created by google. It allows you to create applications for Android, IOS, Linux, macOS, Windows, and Web with only one codebase. This means that you can use one programming language and one codebase to create different applications for different operating systems.

How it works?

All that flutter does is it asks for a blank window on the device. So, be it on android or IOS or web or Desktop, all it’s asking for is just a simple blank window and what flutter will do is it will draw onto that blank window whatever it is that needs to be rendered or whatever animations or interactions or changes it’s all painted on by flutter. Flutter compiles the dart code to native ARM code.

So this means that instead of having to make IOS apps the apple way (SwiftUI, UIKit) and make android apps the android way (Jetpack, Java or Kotlin), you can simply use a bunch of pre-built widgets from flutter.

Screenshot from 2022-08-21 15-39-38.png

Why Flutter?

When you are thinking of building a new project, why choose flutter?

  • One of the reasons you might consider is that you’ll end up with one codebase to maintain, one place to debug your code. This is one of the huge advantage compared to creating your apps natively.

  • You don’t have to know Kotlin or Java for building on Android or Swift for building on IOS. You only need to know one language, that’s Dart. It is very easy to work with. Once you’ve learned it and understand how to use it, then you can use it to create your IOS, Android, Web, and Desktop applications. It means that you only have to get good at one language to create your apps on different operating systems.

  • Dart is very similar to a lot of modern object-oriented programming languages. It has been used internally at Google to build powerful tools such as Google Adwords, Google Fiber.

  • Flutter offers a bunch of pre-built widgets and those widgets are straight forward. For example: To place items vertically, you can simply use a Column widget and Row widget to place items horizontally.

Screenshot from 2022-08-21 13-38-27.png

  • One of the first things you must consider when bringing your app to multiple platforms is how to adapt it to the various sizes and shapes of the screens that it will run on. Worry not, Flutter offers a simple and flexible layout system to build beautiful user interfaces.

  • When we're developing apps, one of the biggest pains is when you have to run the app, because often it takes anywhere between 30 - 200 seconds to save your code, running your app, compiling it and finally seeing it on-screen. But, in flutter it offers a feature called hot reload as soon as you update your code, and you hit save your UI will change in front of your eyes in a fraction of second, and it leads to a very different way of designing the User Interface. It’s like having a refresh button on a website.

  • Flutter is open source when you are creating apps with flutter you get access to the original source code, and you can see how things are implemented.

  • Flutter has a great documentation and community.

  • Flutter official website : https://flutter.dev/

Amazing apps built with Flutter

Google Stadia

Google Stadia is a cloud-based video game streaming service that lets you stream games on a smartphone, PC, laptop, or tablet. What made this app so popular among gamers?

Google Ads

This is a mobile application that allows you to manage Google ad campaigns directly from your smartphone. It’s a condensed version of a desktop platform for you to track ad output from any location.

Alibaba

If you’re big into eCommerce, you will know Alibaba. It’s one of the world’s biggest eCommerce websites, and they decided to build their mobile app using Flutter.

Refectly

Reflectly is an AI-powered personal journaling application that combines cognitive behavioral therapy, meditation, and positive psychology to help users cope with daily stress, resolve negative thoughts, and remain positive. It enables you to express your emotions and care for your mental health.

And more….

Flutter Development Roadmap

  • In order to develop applications using flutter, you must know dart programming language.
  • After learning dart, start learning about the basics of flutter and start building applications while you learn. This playlist also covers dart programming and flutter development from the core basics.

Flutter Playlist

Conclusion

I hope that this introduction has interested you. Feel free to share this article if you liked it.

You can follow me on twitter.