Major components of Flutter Architecture are: –
- Dart Platform
- Flutter apps are written in the Dart language.
- While writing and debugging an application, Flutter runs in the Dart virtual machine, which features a just-in-time execution engine. This allows for fast compilation times as well as “hot reload”, with which modifications to source files can be injected into a running application.
- For better performance, release versions of Flutter apps on all platforms use ahead-of-time (AOT) compilation.
- Flutter Engine (Skia Graphics Engine)
- Flutter’s engine, written primarily in C++, provides low-level rendering support using Google’s Skia graphics library.
- Additionally, it interfaces with platform-specific SDKs such as those provided by Android and iOS.
- It implements Flutter’s core libraries, including animation and graphics, file and network I/O, accessibility support, plugin architecture, and a Dart runtime and compile toolchain.
- Foundation Library
- The Foundation library, written in Dart, provides basic classes and functions that are used to construct applications using Flutter, such as APIs to communicate with the engine.
- Design-Specific Premade Widgets
- Material Design widgets implement Google’s design language of the same name.
- Cupertino widgets implement Apple’s iOS Human interface guidelines.
- Flutter Development Tools (SDK)