Categories
Flutter

Introduction to Flutter

HelloWorld! In this article, you will learn about what is Flutter, why Flutter, then a comparison between Flutter with other frameworks, and finally Flutter’s pros and cons.

What is Flutter

Flutter is an SDK for UI development. It is developed by Google to build standard UI & UX for mobile, web & desktop applications from a single code base. Flutter has released its first version in 2017. For now, the Flutter as stable release only for mobile applications, for desktop and web apps are still in the development stage. It’s based on the Dart programming language, which is also developed by Google.

Why Flutter

Using Flutter we can develop a mobile app for both Android and iOS from a single code base, we only have to modify the native code while getting into permissions like for notifications, accessing the file manager, to change logo and splash screen, etc. Apart from those, we can code using Flutter for logics and functionality of the application,

And Flutter has hot reloading it renders the widget at runtime and has restart it will render the app from the root widget, if we change any global variables have to go for restart, not while initialization.

Flutter is based on a Dart programming language so it directly compiles to arm machine code using the Dart compilers. This helps in improve the app performance.

Flutter uses Skia is a 2D graphic engine written in C++ and it’s also developed by Google, which is used to render widgets and draw animations smoothly.

What is widget

In Flutter everything is a widget, widgets are the elements in the screen used to construct the UI. Flutter has a lot of predefined widgets, to build the standard applications. There are two types of widgets,

  • State full widgets and
  • Stateless widgets

Comparison


Frameworks/
Attributes

Flutter ReactNative Xamarin Ionic

Programming language
DartJava scriptC# with .net Javascript
PerformanceAmazingClose to nativeClose to nativeModerate
GUIUsing proprietary widgetsUsing Native UI controllersUsing Native UI controllersUsing HTML, CSS
Community SupportIt’s being popularVery strong supportStrongStrong

Popular apps built

Google Ads, Alibaba, Hamilton

Facebook, Instagram, Airbnb

Storoyo,
World Bank, Insightly, Just giving 

Just Watch, Honeyfi,
Chefsteps
Developed byGoogleFacebookMicrosoftDrifty

Pros

  • Flutter hot reloading helps in rapid prototyping,
  • Reusable widgets,
  • Directly compile to ARM machine code, using Dart compilers helps in to make app performance closer to native,
  • From a single code base able to develop an app for both Android and iOS, helps in code maintenance also reduces the cost of development,
  • Ahead of time compiling etc.

Cons

  • When compared to React Native, Flutter has limited library support,
  • For now, Flutter mobile-only has a stable version, Flutter web in beta, and for a desktop application in alpha release.