Flutter & Dart App Development Online Course
Flutter & Dart App Development Online Course
This Flutter & Dart App Development course begins with mastering the setup of the Flutter development environment on both Windows and Mac, along with configuring Visual Studio Code IDE. You'll create your first Flutter app, building a strong foundation for more complex projects. As you advance, you'll explore the details of Flutter widgets, stateful vs. stateless types, and state management techniques. Real-world projects, such as the Fortune Cookie and Tip Calculator apps, will provide practical experience in integrating functionalities like JSON parsing and form handling.
Key highlights
The course also covers state management using the Provider package and explores Firebase for real-time database interactions. You’ll further develop skills in navigation, SQLite for data persistence, and handling JSON from APIs. By the end of the course, you will have the expertise to build sophisticated, scalable mobile applications, making this course ideal for both beginners and experienced developers seeking to expand their skill set.
Key Benefits
- Thorough exploration, starting from the foundational setup and advancing to complex application development.
- Project-based learning, using real-world applications to reinforce key concepts.
- In-depth modules focused on state management and seamless API integration, providing a comprehensive understanding of these critical aspects of app development.
Target Audience
This course is designed for software developers, mobile app developers, and individuals keen on mastering Flutter and Dart. It is intended for participants with a foundational understanding of programming and a basic familiarity with mobile app development concepts, making it suitable for both aspiring and experienced developers.
Learning Objectives
- Configure the Flutter development environment on both Windows and Mac systems
- Implement efficient state management with the Provider package
- Build fully functional applications, such as a Movie App and Water Tracker
- Design interactive and responsive user interfaces using Flutter's extensive widget library
- Integrate external APIs for dynamic data handling and processing
- Store and manage data effectively with SQLite databases and Firebase Realtime Database
Course Outline
The Flutter & Dart App Development Exam covers the following topics -
Module 1. Introduction
- Overview of Flutter app development
- Flutter Development Environment Setup - Overview
- Flutter Dev Website - Overview
Module 2. Setting Up on Windows
- Setup Flutter on Windows
Module 3. Setting Up on Mac
- Flutter Setup on Mac
Module 4. Visual Studio Code & First Flutter App
- Setup VS Code IDE - Installation and Setup
- Create a Flutter Project
- Running the first Flutter app on Emulator
Module 5. Why Flutter: Benefits and Motivation
- Why Flutter: Benefits and Motivation
- Fortune Cookie App Development:
- Randomizing a list of strings
- Dart Basics: Variables, Strings, Integers, and Variables
- Introduction to Functions in Dart (Void and return types)
- Passing Arguments in Functions
- Putting it all together: Function Return Types and Arguments
- Widgets in Flutter (Add a Card, Add Images as Assets)
Module 6. Flutter Widgets: Stateful vs Stateless
- Overview of Stateful and Stateless Widgets
- Widget Hierarchy and Reusability Overview
- Tip Calculator App:
- Create Project and Setup the AppBar
- Adding Containers and Decorating Them
- Widgets Documentation & Basics of Theming
- Understanding Theme and the BuildContext
- Widgets & Dart Classes and Objects - Introduction to OOP
- Creating the Bill Amount Container and the TextField
- Creating the Split Bill Section
- Adding Increment and Decrement Functionality
- Refactoring the PersonCounter Widget
- Adding the Tip Percentage and Slider Widgets
- Refactoring TipSlide Widget and BillAmount TextField
- Tip Calculation Logic
- Full Widget Refactor for Tip Calculator
Module 7. Flutter State Management: Provider & Improving Apps
- Introduction to Provider State Management Package
- Setup Provider & Understanding Flutter Packages and Dependencies
- Setup Provider Model Class and Implementing a Consumer
- Consumer vs ProviderOf - Overview
- Random Fortune App:
- Adding a Provider
- Tip Calculator App:
- Add Provider and Code Refactor
- Add ThemeProvider for Dark & Light Modes
- Intermediate Dart:
- Introduction to OOP Inheritance
Module 8. Flutter Navigation & Movie App
- Navigation - Movie App Demo
- Flutter ListViewBuilder Widget - Show Movies on a ListView
- Dart Basics:
- Arrays, Lists, Loops, and Types
- Adding and Removing Items from Lists
- Movie App Development:
- Create a Movie Provider and Decorate ListItems
- The Movie Model Class and JSON Movie File Overview
- Dart Maps and Creating a Movie Model Class
- Creating the MovieParser Class and Parsing Movies
- Async - Await Overview and Future Type
- Customizing ListItem with ExpansionTile
- Adding Navigation to Movie Details Screen
- Passing Movie Data to Movie Details Screen
- Refactoring with Custom Widgets
- Adding Image to CircleAvatar and Show Image Posters
Module 9. Data Persistence with SQLite & JSON Parsing: Book Tracker App
- Introduction to the Book Tracker App - Demo
- Create the Book Reader Project & Add BottomNavigationBar
- Setting up NavigationBarItem onTap
- Google Books API Endpoint - Overview
- Create Book Model Class and Network Class
- Fetching JSON Payload and Showing in Console
- Create List of Book Objects and Display
- Dart Basics:
- Control Flow, Branching, NOT Operator
- TryCatch and Exceptions
- Showing Book Searches in ListView and Adding GridView
- GestureDetector, Named Routes, and Show Book Details
- Implement BookDetailsArgument and Null Safety in Flutter
- Image & Book Title on Details Screen
- SQLite Database Integration:
- Creating SQLite Database Helper Class
- Methods for Insert and ReadAll Books
- Saving and Displaying Books
- Handling Favorites - ToggleFavorite Status
- Delete and Show Favorites Dynamically
Module 10. Firebase Realtime Database & HTTP Requests: Water Tracker App
- Water Tracker Demo and Overview
- Setup FloatingActionButton and AppBar
- Setup Firebase Realtime Database Backend
- Adding AlertDialog and TextField for Water Intake
- Water Model & Provider Setup:
- Use Provider to Save Water Entries
- Adding Items into Firebase and Refreshing UI
- Resolving UI Issues and Correct Item Display