Mobile development
Flutter: from Dart to a published mobile app
Design an iOS and Android application with Flutter and Dart: widgets, navigation, state and persistence.
- Duration
- 21 h · 3 days
- Level
- Intermediate
- Format
- On site · Remote · Blended
- Max. group size
- 12 participants
Overview
This program teaches how to create a mobile application with Flutter. Participants discover the Dart language, build interfaces with widgets, handle navigation and state, apply architecture patterns, persist data and prepare for publication. They also use the AI assistants built into development environments to speed up their work.
Who this program is for
- Web or mobile developers who want a single codebase
- Teams launching an iOS and Android application
- Full stack developers
Prerequisites
- Basic programming knowledge (variables, functions, objects)
Learning objectives
- Place Flutter among mobile frameworks
- Set up the environment and create a project
- Program in Dart
- Build responsive interfaces with widgets
- Handle navigation, routing and state
- Apply an architecture (BLoC, MVVM)
- Persist data and test
Detailed curriculum
6 modules · 21 h · 3 days
Day 1
Discovering Flutter and Dart
50% theory · 50% practice
- Overview of mobile frameworks
- Flutter architecture
- Installation and first project
- Dart syntax
- Null safety, collections and classes
First widgets
30% theory · 70% practice
- Widget tree
- Stateless and stateful widgets
- Layouts: rows, columns, stacks
- Themes and styles
- Hot reload
🛠 Hands-on workshops
Home screen1.5 h
Build a first screen with a custom theme.
✅ Deliverable : A Flutter screen
Day 2
Rich interfaces and lists
50% theory · 50% practice
- Advanced widgets and forms
- Lists, grids and scrolling
- Adaptive interface
- Basic animations
- Accessibility
Navigation and routing
30% theory · 70% practice
- Navigating between screens
- Named routes and parameters
- Tab bar and drawer
- Passing data
- Deep links
🛠 Hands-on workshops
Multi-screen application2 h
Link several screens with navigation.
✅ Deliverable : A navigable application
Day 3
Architecture and state management
50% theory · 50% practice
- Why structure your code
- BLoC pattern
- MVVM pattern
- Dependency injection
- Widget tests
Persistence and publication
30% theory · 70% practice
- SQLite and Drift
- Preferences and files
- Network calls and APIs
- Internationalization
- Build, signing and publishing
🛠 Hands-on workshops
Finalization2 h
Add persistence and network calls to the application.
✅ Deliverable : A complete application
Tools and technologies
Android StudioDartFlutterSQLiteVisual Studio Code
Teaching methods
- Alternating short lectures and hands-on work
- Live demonstrations by the trainer
- Capstone project built throughout the modules
- Group corrections and discussion of best practices
Assessment
- Hands-on exercises corrected in each module
- Mini-project completed at the end of the course
- Knowledge-check quiz
Required equipment
- A computer with an internet connection
- Flutter SDK, Android Studio or VS Code, and an emulator
Resources provided
- Course materials and repository of corrected exercises
Career outcomes
- A working mobile application on an emulator and on a device
- A clean architecture
- The publication steps