FA-0764Software Development

Flutter Development with State Management and Persistence

Dart foundations, widgets, navigation, Firebase and BLoC projects

Introduction

Why this course

Move from introductory Dart concepts to building small Flutter applications with widgets, user input and navigation. Practical examples introduce state, asynchronous data and service separation.

The five-day programme is suitable for developers new to Flutter. It starts with foundations and progresses to selected Firebase and BLoC/Sembast exercises rather than promising advanced mastery or a career outcome.

Learning outcomes

Learning outcomes

  • Explain the roles of Dart and Flutter and create a basic application.
  • Compose widgets, handle input and apply themes and styling.
  • Manage screen navigation and application state.
  • Listen to a data stream and separate widget, asynchronous, BLoC and service responsibilities in an example.
  • Add a prepared Firebase authentication and favourites-data example.
  • Use Sembast local storage and BLoC state management in a small to-do application.
  • Use debugging tools to investigate the sample application.
Prerequisites

Prerequisites

Basic programming and object-oriented familiarity in another language is helpful. Dart and Flutter foundations are introduced.

A supported Flutter SDK with compatible platform SDKs, Android Studio or Visual Studio Code and a prepared device/emulator. For iOS builds, use an appropriate macOS/Xcode environment. Select Java/Gradle and platform versions from current compatibility requirements rather than assuming Java 8 is sufficient.

Access to an authorised Firebase training project or prepared emulator and adequate workstation resources. Only the installation permissions needed for the lab are required.

Training outline

5 modules

·
01Day 1 — Dart and Flutter foundations5 topics
  • Introduction to Dart
  • Getting started with Dart
  • Understanding why Flutter uses Dart
  • Introducing the structure of the Dart language
  • Introduction to OOP in Dart
  • Flutter overview
  • Flutter compilation
  • Flutter rendering
  • Widget Introduction
  • Widget-Async-Bloc-Service architecture
  • Basic Flutter App
02Day 2 — Widgets, interaction and navigation4 topics
  • Widgets
  • Handling User Input and Gestures
  • Theming and Styling
  • Routing: Navigating between Screens

Use Navigator for the small exercise and discuss routing requirements; complex deep-linking scenarios may require Router or a routing package.

03Day 3 — State and asynchronous data2 topics
  • Using Stateful Widgets(Miles to Kilometer converter)
  • Listening to a Stream of Data

Review widget state, asynchronous updates, service separation and debugging through the converter project.

04Day 4 — Firebase integration5 topics
  • Introducing Firebase
  • Project overview
  • Adding Firebase to your Flutter project
  • Adding authentication to your app
  • Writing data to Firebase: Adding the favorite feature

Configure compatible FlutterFire plugins and prepared authentication/data services; discuss permissions and scope of the training example.

05Day 5 — BLoC and local persistence3 topics
  • Project overview
  • Using sembast to store data
  • The BLoC pattern

Build and review a small to-do application. Distinguish local Sembast persistence from Firebase services and discuss maintainability of the chosen state-management pattern.

A programme built around your team.

Share your training goals and requirements.

Flutter Development with State Management and Persistence
FA-0764

Share your requirements for this programme.

Training enquiry

Flutter Development with State Management and Persistence