Mobile App Development with Flutter and Dart
Build beautiful, fast mobile apps for Android and iOS from a single code base.
About this course
Build beautiful, fast mobile apps for Android and iOS from a single code base. You will start with Dart, Flutter's modern, null-safe language, then set up your environment and learn to compose interfaces from widgets, design responsive layouts and move between screens.
As the course progresses you will manage state, connect to REST APIs, store data on the device and use features such as the camera and location. You finish by testing your app and preparing release builds for both platforms.
What you'll learn
- Write clear, null-safe Dart code using its core language features
- Set up a Flutter development environment with emulators and devices
- Build user interfaces from stateless and stateful widgets
- Create responsive layouts and navigate between screens
- Manage application state with a suitable approach
- Consume REST APIs and handle asynchronous data
- Store data locally on the device
- Test, build and prepare an app for release on Android and iOS
Curriculum
- Variables, types and null safety
- Control flow and functions
- Collections
- Classes and objects
- Inheritance, mixins and extensions
- Asynchronous programming with Future and async/await
- Streams
- Error handling
- How Flutter works
- Setting up the SDK and editor
- Emulators and physical devices
- Project structure and hot reload
- Stateless and stateful widgets
- Material and Cupertino widgets
- Text, images and icons
- Building custom widgets
- Rows, columns and stacks
- Lists and grids
- Adapting to screen sizes
- Right-to-left and localised layouts
- Navigating between screens
- Passing data between routes
- Forms and input validation
- Dialogs and bottom sheets
- Local state with setState
- Lifting state up
- Provider and similar approaches
- Choosing a state management strategy
- Making HTTP requests
- Parsing JSON
- Displaying remote data
- Handling loading and error states
- Shared preferences
- Local databases
- Using packages from pub.dev
- Camera, location and permissions
- Unit and widget tests
- Debugging and performance tools
- Building for Android and iOS
- Preparing an app for the stores
Who it's for
Developers with basic programming experience who want to build cross-platform mobile apps with Flutter and Dart.
Before you start
- Basic programming experience in any language
- Familiarity with object-oriented concepts
Related courses
More in Programming & Web Development →Advanced Java 9
Programming & Web Development
View course →Android Studio Development Essentials
Programming & Web Development
View course →Blockchain: An Overview for Business Professionals
Programming & Web Development
View course →Computer Vision with Python OpenCV
Programming & Web Development
View course →Database Design - Beginner
Programming & Web Development
View course →Flask Development with Python
Programming & Web Development
View course →Let's plan your next step together.
Tell us the course or certification you have in mind and we'll send the outline, upcoming dates, fees and private-team options.