Flutter – Cross Platform App Development Framework from Google

Flutter is a new cross-platform app development framework from Google that allows apps to be created for both Android (KitKat or later) and iOS (iOS 5 or later). It's all open source and still being developed by engineers at Google and you can follow two engineer's profile at Chinmay Garde & Devon Carew. The main focus of Flutter is to provide low-latency input and high frame rates (60fps) for high performance on Android & iOS.

Flutter Architecture

Flutter is built with C, C++, Dart, Skia (a 2D rendering engine), Mojo IPC, and Blink’s text rendering system. To have better understanding of the main components, please check the below architecture diagram:-

High-Level Overview of Flutter Architecture
Flutter has three main components:-
  1. A heavily optimized, mobile-first 2D rendering engine (with excellent support for text)
  2. A functional-reactive framework
  3. A set of Material Design widgets, libraries, tools, and a plugin for Atom

How do Flutter apps work on Android & iOS?

For Android, the engine’s C/C++ code is compiled with the Android NDK (Native Development Kit); the majority of the framework and application code runs on the Dart VM, which generates JIT-compiled optimized native code on the device. For iOS, the C/C++ code is compiled with LLVM; Dart code is AOT (Ahead-of-time) compiled into native code. Apps use a native instruction set & on both platforms you can call native services via Mojo’s IPC system.

Why is Flutter better than other cross-platform frameworks?

Flutter is different than most other options for building cross-platform mobile apps because Flutter uses neither WebView nor the OEM widgets that shipped with the device. Instead, Flutter uses its own high-performance rendering engine to draw widgets. Flutter also offers developers a highly productive and fast development experience, fast runtime and engine performance, and beautifully designed widgets that make for beautiful apps.

Platform & IDE support for Flutter

The programming language used is Dart which is also open source & which became available about a year ago. Dart is a mix between c++ and Java and supports classes with single inheritance. It supports interfaces, abstract classes, reified generics and optional typing.

Flutter uses Atom as its IDE with the dartlang plugin which currently contains functionality related to creating the app from the template, syntax highlight, code complete, refactor, launch apps, show type hierarchies, jump to definition and running Flutter projects.

Flutter currently supports developers on Mac and Linux. Windows support is in the works.

Are apps production ready?

At present, Flutter isn’t suitable for production apps and you can’t yet produce installable apps that easily (work is still in progress).

Comments

  1. Thank you for the auspicious writeup. It in fact was a amusement account it.
    Look advanced to far added agreeable from you! However,
    how can we communicate?

    https://knowthistech.com/android-q-beta-debuts-how-to-download-compatible-devices-new-features-and-more/

    ReplyDelete
  2. Thank you for sharing this information. Great Work!! It is really helpful for people who are looking for flutter app development services .

    ReplyDelete
  3. Amazing Content!! Thank you for sharing this helpful information. It helps to those who wants to know more about Flutter App Development Services which helps creates apps for both android and iOS.

    ReplyDelete
  4. Thanks for sharing such impressive perspective with us. Your information is delicate in which there is a description about Android App Development Company In UK who provides the best android app development services.

    ReplyDelete
  5. I admire this article for the well-researched content and excellent wording. I got so involved in this material that I couldn’t stop reading. I am impressed with your work and skill. Thank you so much.It is really helpful for people who are looking for mobile app development services for development of different application in platforms like iOS, Android Windows.Visit here for Product engineering services | App Modernization Services .

    ReplyDelete

Post a Comment