Flutter Architecture: The basics.

Aniket Shukla
3 min readOct 7, 2019

Knowing and Learning the basic fundamentals of any programming paradigm is one of the core skill of a seasoned developer.

The basic picture..

This brief read will help you get acquainted with some basic Flutter Internals and architecture.

The Widgets,the State classes ,the Elements, the BuildContext
How is flutter so fast, the hot reload , the trees..

How do they all work so well and their architectural behind the scenes…
Is tried to be answered here..

The Answer:

The story of flutter can be briefly divided in 3 important sections.

The Framework (The part with which developer actually interacts)
The Engine (The part with which your device interacts).
And The Embedder( The link and the facilitator between the framework ,Engine and device for all the app functioning).

In depth

* All the interaction with the user or developer and Flutter remains in the Framework section facilitated by only the dart language.
(the widgets world).

  • The Flutter Engine is a portable run-time for high-quality mobile/web applications. It implements Flutter’s core libraries, including animation and graphics, file and network I/O, accessibility support, plugin architecture, and a Dart run-time and tool-chain for developing, compiling, and running Flutter applications.
  • Flutter engine is written in C++, C , Skia , Dart.
  • Flutter Framework and Flutter engine interact via an abstraction layer called the Window . It exposes the size of the display, schedules the API, the input event callback, the graphics drawing API, and other such core services.
  • The Embedder is platform specific and is mainly responsible for bringing out each pixel that your see on your screen(surface).
    The main function of an Embedder include.
  • Rendering your widgets on your screen in specified dimensions by Framework.
  • Handling the native plugins of operating device.
  • Packaging: Some of popular Flutter Packages.
  • Thread setup for run-time memory(Dart is only single threaded).
  • And Event Handling.

Conclusion:

This article only scratched the surface of Flutter architecture in bullet points there is definitely much more depth to it but these three basic sections remain at the core of Flutter architecture.
The purpose was to make you peep in behind the scenes of Flutter Framework.
To know more keep Boring….

--

--