Keep Calm and Study On - Unlock Your Success - Use #TOGETHER for 30% discount at Checkout

Flutter and Dart App Development Online Course

The Complete Flutter and Dart App Development Course

The Complete Flutter and Dart App Development Course is the first comprehensive Dart and Flutter course, fully updated to include the latest developments. Flutter is the new cross-platform mobile app development framework created by Google that allows developers to build Android and iOS apps using a single codebase, and it is the best way to develop cross-platform apps, which would otherwise require two distinct mobile development teams. Instead of having to learn Objective-C or Swift to build iOS apps, and Java or Kotlin to build Android apps, you can now use Flutter to build apps that run natively in both iOS and Android devices using the general-purpose programming language Dart.

The course begins with an overview of Flutter's capabilities and helps you to download Flutter code and set up development tools for Windows and Mac. It then gives you a comprehensive introduction to Dart and covers the fundamentals and advanced concepts of object-oriented programming (OOP). As you advance, you’ll get to grips with Flutter's intermediate concepts and themes. Toward the end, you will build a Flutter tip calculator app and take up quizzes and challenges relating to Flutter widgets and material design.

By the end of this course, you’ll have gained complete knowledge of Flutter and be able to build both iOS and Android apps like a professional.


Course Curriculum

Getting Started

  • The Learning Path of This Course

Why Flutter

  • Why Flutter Development?

Download Flutter Code

  • How the Project Source Code is Structured?

Development Tools Setup MAC- For Mac OX Users

  • MAC -Setup Dart and Flutter SDK on Mac OSX - Part 1
  • MAC -Setup Dart and Flutter SDK on Mac OSX - Part 2
  • MAC -Setup Dart and Flutter SDK on Mac OSX - Part 3
  • MAC -Setup Dart and Flutter SDK on Mac OSX - Final

Development Tools Setup Windows - For Windows Users

  • Download Android Studio and Setup Emulators
  • Windows Flutter Installation - Final Setup

Introduction to the Dart Programming Language - From Scratch

  • Intro to Dart and Dart Pad - Online Editor
  • Dart - Coding Style and Naming Convention
  • Dart - Declaring variables - String
  • Dart Types and Assigning Types to Variables
  • Dart - Numbers - Integers and Doubles
  • Dart - Booleans
  • Dart - Const and Final Keywords
  • Dart - Concatenation
  • Dart Operators - Arithmetic
  • Equality and Relational Operators in Dart

Control Flow and Functions in Dart - If Statements, Logical Operators, For Loops

  • Control Flow - If Statements
  • Logical Operators
  • For Loops in Dart
  • While, Do-While and Break in Dart
  • Switch Cases
  • Introduction to Functions in Dart
  • Function Return Types - String-Int-Booleans
  • Dart - Using the => Operator for Returning Expressions
  • Arguments and Functions in Dart
  • Optional Parameters in Dart
  • Lexical Scope in Dart

Object Oriented Programming - Introduction

  • Introduction to Classes and Objects
  • Introduction to Class Creation and Instance Variables
  • Adding Methods to Classes
  • Introduction to Constructors - Part 1
  • Named and Sugar Syntactic Constructors - Part 2
  • Setters and Getters

Object Oriented Programming - Intermediate - Inheritance Concepts

  • Introduction to Inheritance with Dart
  • Creating Classes and Inheritance Tree
  • Override Methods
  • Inheriting Classes with Constructors
  • The toString() Method - Override

Object Oriented Programming - Advanced - Abstract and Interface Concepts

  • Introduction to Abstract and Interface Classes
  • Abstract and Interface Classes in Dart - Creation

Data Structures and Collections in Dart

  • Introduction to Collections
  • Creating Lists and Iterating through Them
  • Creating a List with a Person Type Object
  • Introduction to Maps

Building Flutter Apps - Flutter Fundamentals

  • Introduction to Flutter and Flutter App Anatomy
  • Creating a Flutter Hello World App - Basics with Text Widget
  • Understanding Material Design Basics - Text and Widget Properties
  • Formatting Our Code
  • Little Material Design Presentation
  • Flutter Scaffold Widget and Properties
  • Flutter InkWell Widget and Event Listeners
  • Flutter Gesture Detector Widget - Creating a Custom Button
  • Flutter Bottom Navigator and Adding a Tap
  • Flutter Floating Action Button

Build a Biz Card App

  • App - Build a Biz card App

Flutter Stateful Widgets

  • Introduction to Stateless VS Stateful Widgets
  • App - Build a Quotes App - Part 1
  • App - Build a Quotes App - Finished Product

APP - Build a Flutter Tip Calculator App

  • Flutter Tip Calculator - User Interface - Part 1
  • Flutter Tip Calculator - Top Card and Custom Colors
  • Flutter Tip Calculator - Building the Split Row
  • Flutter Tip Calculator - Build the Tip Row
  • Flutter Tip Calculator - Finished User Interface
  • Flutter Tip Calculator - Wrapup

APP - Quiz App - Learn More Flutter Widgets

  • Setup Project - Adding Image Assets
  • Question Model Class - Setup
  • Finishing the User Interface
  • Finishing Quiz Logic
  • [CHALLENGE] - Finished Logic
  • [SOLUTION - IMPROVEMENTS] - Wrapup

Flutter Intermediate Concepts - Navigation, Listviews - Building a Movie App

  • Creating a Listview of Movies
  • Customizing ListTile Row and Adding onTap
  • Navigating to a Second Route - Screen
  • Returning to the First Route/Screen
  • Passing Data to Second Route/Screen
  • Creating a Movie Model Class - Showing Movies - Part 1
  • MOVIE APP - Passing a Movie Object to Details Route and Showing Image
  • MOVIE APP - Customizing Row
  • MOVIE APP - Adding Movie Image
  • MOVIE APP - Finishing Custom Row
  • MOVIE APP - Changing the Background Color
  • MOVIE APP - Details Route - Showing Movie Thumbnail
  • MOVIE APP - Details Route - Adding Linear Gradient
  • MOVIE APP - Details Route - Adding Movie Poster
  • MOVIE APP - Details Route - Movie's Header
  • MOVIE APP - Details Route - Adding Movie's Cast
  • MOVIE APP - Details Route - Adding Horizontal Line
  • MOVIE APP - Details Route - Adding Bottom Movie Posters - Finished App
  • [CODE REFACTOR] - Movie App Code Refactor

Understanding Themes in Flutter

  • Introduction to UI and UX
  • What's Material Design?
  • Themes in Flutter
  • Exploring ThemeData Class - App Brightness
  • Theming Headlines and Body1 Text
  • Theming - Over-Writing Theme Properties
  • Theming - Refactoring our TextTheme Further
  • Theming - Adding Custom Fonts to Our Project
  • Theming - Applying FontFamily to All TextTheme Properties
  • Material Design - Material.io Overview
  • Material Design - Understanding Color Themes
  • Material Design - Typography and Iconography

[SOLUTION] - Material Design App (Mortgage App) Solution

  • Mortgage App - Solution - Pick Color Palette and Create Colors File
  • Mortgage App - Solution - Theming App - Part 1
  • Mortgage App - Solution - Theming App - Part 2
  • Mortgage App - Solution Wrapup

Connecting to the World - Networking in Flutter

  • Introduction to HTTP and JSON
  • Flutter Introduction to Async and Future - Http Requests
  • Adding http Package to our Project
  • Setup Network Class
  • Fetching JSON Data
  • Fetching JSON and Using FutureBuilder Widget
  • Finalizing Fetching JSON and FutureBuilder
  • Plain Old Dart Object ( PODO ) and Mapping JSON - Introduction Setup
  • PODO - Creating a PostList Class and Mapping
  • PODO - Final Implementation

APP: Build a Weather Forecast Flutter App

  • What You'll Build - Weather Forecast App Demo
  • OpenWeather - Setting up our APPID
  • Setup Our Weather Forecast Project
  • Creating Our Forecast Model Class
  • Pulling JSON Data from API and Showing Data
  • Using FutureBuilder to Show Data
  • Adding City and Country Names
  • Getting City Name Dynamically from TextField
  • Formatting and Showing Date
  • Showing Current Temp
  • Adding Humidity, Wind and Max to the User Interface
  • Utilizing FontAwesome Icons
  • Setup getWeatherIcon Helper Function
  • Setup Bottom ScrollView - Part 1
  • Setup Day in Bottom ScrollView
  • Adding WeatherIcon to our ScrollView
  • Finished App
  • Code Refactoring and User Interface Improvements

Flutter Google Maps - Building the Earthquakes App

  • Introduction to Google Maps and API Key Android Setup
  • [OPTIONAL] Google Maps iOS Setup
  • Showing a Google Map - Problem to be Fixed - AndroidX Update
  • Fixing AndroidX Issues
  • Running our Map on Both Android and iOS
  • Adding Markers onto Map
  • Showing Another Marker
  • Implementing CameraPosition Animations
  • Quakes App - Demo
  • Quakes App - Our Quakes API and Chrome Extension
  • Quakes App - Setting up Project and TypesHelper Class
  • Quakes App - Fixing the Types Issue
  • Quakes App - Getting All Quakes and Setup Markers
  • Quake App - Markers Fixed and Working
  • Quake App - Adding Zooms and Finished App

Firestore - Realtime Database - Building a Community Board App

  • Introduction to Firebase/Firestore and Realtime Database
  • Setting up Firestore in our Project
  • Reading Data from Firestore Database
  • Board App - Setup Form
  • Board App - Saving Data to Firestore Database from the App
  • Board App - Custom Card - Accounting for Nulls
  • Board App - Restructuring Custom Card
  • Board App - Custom Card - Quick Code Refactoring
  • Board App - Delete a Document
  • Board App - Update Document

OPTIONAL: Deconstructing Flutter Topics

  • Deconstructing the Flutter Syntax - Part 1
  • Deconstructing the Flutter Syntax - Understanding Named Parameters - Part 2
  • Deconstructing BuildContext

Publishing Flutter Apps in the Appstore and Playstore

  • Creating App Icon - With Online Tools
  • Dynamically Generating iOS and Android Icons Using Plugin
  • Adding Splash Screen - Android
  • Adding Launcher Image - iOS
  • Signing Android App - Generating a Keystore and AppBundle
  • Publishing App to Google PlayStore
  • Setup iOS App to Publish in the Appstore
  • Creating the iOS Archive and Uploading It

The App Development Process

  • The App Development Process

Tags: Flutter and Dart App Development Online Course