The Complete Flutter and Dart App Development Course

Video description

Learn Flutter - Google's mobile development framework - and build Flutter iOS and Android apps using a single codebase

About This Video

  • Get an introduction to Flutter and understand Flutter app anatomy
  • Design, build, and debug Flutter Android and iOS apps
  • Explore the capabilities of Flutter to build robust apps

In Detail

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.

Who this book is for

Whether you’re a beginner or an advanced-level web or mobile developer new to Dart and Google Flutter Mobile SDKs, this course is for you. Android and iOS app developers who want to build apps using a single codebase and program managers looking to learn how to build Android and iOS apps will also find this course useful.

Publisher resources

Download Example Code

Table of contents

  1. Chapter 1 : Getting Started
    1. The Learning Path of This Course
  2. Chapter 2 : Why Flutter
    1. Why Flutter Development?
  3. Chapter 3 : Download Flutter Code
    1. How the Project Source Code is Structured?
  4. Chapter 4 : Development Tools Setup MAC- For Mac OX Users
    1. MAC -Setup Dart and Flutter SDK on Mac OSX - Part 1
    2. MAC -Setup Dart and Flutter SDK on Mac OSX - Part 2
    3. MAC -Setup Dart and Flutter SDK on Mac OSX - Part 3
    4. MAC -Setup Dart and Flutter SDK on Mac OSX - Final
  5. Chapter 5 : Development Tools Setup Windows - For Windows Users
    1. Download Android Studio and Setup Emulators
    2. Windows Flutter Installation - Final Setup
  6. Chapter 6 : Introduction to the Dart Programming Language - From Scratch
    1. Intro to Dart and Dart Pad - Online Editor
    2. Dart - Coding Style and Naming Convention
    3. Dart - Declaring variables - String
    4. Dart Types and Assigning Types to Variables
    5. Dart - Numbers - Integers and Doubles
    6. Dart - Booleans
    7. Dart - Const and Final Keywords
    8. Dart - Concatenation
    9. Dart Operators - Arithmetic
    10. Equality and Relational Operators in Dart
  7. Chapter 7 : Control Flow and Functions in Dart - If Statements, Logical Operators, For Loops
    1. Control Flow - If Statements
    2. Logical Operators
    3. For Loops in Dart
    4. While, Do-While and Break in Dart
    5. Switch Cases
    6. Introduction to Functions in Dart
    7. Function Return Types - String-Int-Booleans
    8. Dart - Using the => Operator for Returning Expressions
    9. Arguments and Functions in Dart
    10. Optional Parameters in Dart
    11. Lexical Scope in Dart
  8. Chapter 8 : Object Oriented Programming - Introduction
    1. Introduction to Classes and Objects
    2. Introduction to Class Creation and Instance Variables
    3. Adding Methods to Classes
    4. Introduction to Constructors - Part 1
    5. Named and Sugar Syntactic Constructors - Part 2
    6. Setters and Getters
  9. Chapter 9 : Object Oriented Programming - Intermediate - Inheritance Concepts
    1. Introduction to Inheritance with Dart
    2. Creating Classes and Inheritance Tree
    3. Override Methods
    4. Inheriting Classes with Constructors
    5. The toString() Method - Override
  10. Chapter 10 : Object Oriented Programming - Advanced - Abstract and Interface Concepts
    1. Introduction to Abstract and Interface Classes
    2. Abstract and Interface Classes in Dart - Creation
  11. Chapter 11 : Data Structures and Collections in Dart
    1. Introduction to Collections
    2. Creating Lists and Iterating through Them
    3. Creating a List with a Person Type Object
    4. Introduction to Maps
  12. Chapter 12 : Building Flutter Apps - Flutter Fundamentals
    1. Introduction to Flutter and Flutter App Anatomy
    2. Creating a Flutter Hello World App - Basics with Text Widget
    3. Understanding Material Design Basics - Text and Widget Properties
    4. Formatting Our Code
    5. Little Material Design Presentation
    6. Flutter Scaffold Widget and Properties
    7. Flutter InkWell Widget and Event Listeners
    8. Flutter Gesture Detector Widget - Creating a Custom Button
    9. Flutter Bottom Navigator and Adding a Tap
    10. Flutter Floating Action Button
  13. Chapter 13 : Build a Biz Card App
    1. App - Build a Biz card App
  14. Chapter 14 : Flutter Stateful Widgets
    1. Introduction to Stateless VS Stateful Widgets
    2. App - Build a Quotes App - Part 1
    3. App - Build a Quotes App - Finished Product
  15. Chapter 15 : APP - Build a Flutter Tip Calculator App
    1. Flutter Tip Calculator - User Interface - Part 1
    2. Flutter Tip Calculator - Top Card and Custom Colors
    3. Flutter Tip Calculator - Building the Split Row
    4. Flutter Tip Calculator - Build the Tip Row
    5. Flutter Tip Calculator - Finished User Interface
    6. Flutter Tip Calculator - Wrapup
  16. Chapter 16 : APP - Quiz App - Learn More Flutter Widgets
    1. Setup Project - Adding Image Assets
    2. Question Model Class - Setup
    3. Finishing the User Interface
    4. Finishing Quiz Logic
    5. [CHALLENGE] - Finished Logic
    6. [SOLUTION - IMPROVEMENTS] - Wrapup
  17. Chapter 17 : Flutter Intermediate Concepts - Navigation, Listviews - Building a Movie App
    1. Creating a Listview of Movies
    2. Customizing ListTile Row and Adding onTap
    3. Navigating to a Second Route - Screen
    4. Returning to the First Route/Screen
    5. Passing Data to Second Route/Screen
    6. Creating a Movie Model Class - Showing Movies - Part 1
    7. MOVIE APP - Passing a Movie Object to Details Route and Showing Image
    8. MOVIE APP - Customizing Row
    9. MOVIE APP - Adding Movie Image
    10. MOVIE APP - Finishing Custom Row
    11. MOVIE APP - Changing the Background Color
    12. MOVIE APP - Details Route - Showing Movie Thumbnail
    13. MOVIE APP - Details Route - Adding Linear Gradient
    14. MOVIE APP - Details Route - Adding Movie Poster
    15. MOVIE APP - Details Route - Movie's Header
    16. MOVIE APP - Details Route - Adding Movie's Cast
    17. MOVIE APP - Details Route - Adding Horizontal Line
    18. MOVIE APP - Details Route - Adding Bottom Movie Posters - Finished App
    19. [CODE REFACTOR] - Movie App Code Refactor
  18. Chapter 18 : Understanding Themes in Flutter
    1. Introduction to UI and UX
    2. What's Material Design?
    3. Themes in Flutter
    4. Exploring ThemeData Class - App Brightness
    5. Theming Headlines and Body1 Text
    6. Theming - Over-Writing Theme Properties
    7. Theming - Refactoring our TextTheme Further
    8. Theming - Adding Custom Fonts to Our Project
    9. Theming - Applying FontFamily to All TextTheme Properties
    10. Material Design - Material.io Overview
    11. Material Design - Understanding Color Themes
    12. Material Design - Typography and Iconography
  19. Chapter 19 : [SOLUTION] - Material Design App (Mortgage App) Solution
    1. Mortgage App - Solution - Pick Color Palette and Create Colors File
    2. Mortgage App - Solution - Theming App - Part 1
    3. Mortgage App - Solution - Theming App - Part 2
    4. Mortgage App - Solution Wrapup
  20. Chapter 20 : Connecting to the World - Networking in Flutter
    1. Introduction to HTTP and JSON
    2. Flutter Introduction to Async and Future - Http Requests
    3. Adding http Package to our Project
    4. Setup Network Class
    5. Fetching JSON Data
    6. Fetching JSON and Using FutureBuilder Widget
    7. Finalizing Fetching JSON and FutureBuilder
    8. Plain Old Dart Object ( PODO ) and Mapping JSON - Introduction Setup
    9. PODO - Creating a PostList Class and Mapping
    10. PODO - Final Implementation
  21. Chapter 21 : APP: Build a Weather Forecast Flutter App
    1. What You'll Build - Weather Forecast App Demo
    2. OpenWeather - Setting up our APPID
    3. Setup Our Weather Forecast Project
    4. Creating Our Forecast Model Class
    5. Pulling JSON Data from API and Showing Data
    6. Using FutureBuilder to Show Data
    7. Adding City and Country Names
    8. Getting City Name Dynamically from TextField
    9. Formatting and Showing Date
    10. Showing Current Temp
    11. Adding Humidity, Wind and Max to the User Interface
    12. Utilizing FontAwesome Icons
    13. Setup getWeatherIcon Helper Function
    14. Setup Bottom ScrollView - Part 1
    15. Setup Day in Bottom ScrollView
    16. Adding WeatherIcon to our ScrollView
    17. Finished App
    18. Code Refactoring and User Interface Improvements
  22. Chapter 22 : Flutter Google Maps - Building the Earthquakes App
    1. Introduction to Google Maps and API Key Android Setup
    2. [OPTIONAL] Google Maps iOS Setup
    3. Showing a Google Map - Problem to be Fixed - AndroidX Update
    4. Fixing AndroidX Issues
    5. Running our Map on Both Android and iOS
    6. Adding Markers onto Map
    7. Showing Another Marker
    8. Implementing CameraPosition Animations
    9. Quakes App - Demo
    10. Quakes App - Our Quakes API and Chrome Extension
    11. Quakes App - Setting up Project and TypesHelper Class
    12. Quakes App - Fixing the Types Issue
    13. Quakes App - Getting All Quakes and Setup Markers
    14. Quake App - Markers Fixed and Working
    15. Quake App - Adding Zooms and Finished App
  23. Chapter 23 : Firestore - Realtime Database - Building a Community Board App
    1. Introduction to Firebase/Firestore and Realtime Database
    2. Setting up Firestore in our Project
    3. Reading Data from Firestore Database
    4. Board App - Setup Form
    5. Board App - Saving Data to Firestore Database from the App
    6. Board App - Custom Card - Accounting for Nulls
    7. Board App - Restructuring Custom Card
    8. Board App - Custom Card - Quick Code Refactoring
    9. Board App - Delete a Document
    10. Board App - Update Document
  24. Chapter 24 : OPTIONAL: Deconstructing Flutter Topics
    1. Deconstructing the Flutter Syntax - Part 1
    2. Deconstructing the Flutter Syntax - Understanding Named Parameters - Part 2
    3. Deconstructing BuildContext
  25. Chapter 25 : Publishing Flutter Apps in the Appstore and Playstore
    1. Creating App Icon - With Online Tools
    2. Dynamically Generating iOS and Android Icons Using Plugin
    3. Adding Splash Screen - Android
    4. Adding Launcher Image - iOS
    5. Signing Android App - Generating a Keystore and AppBundle
    6. Publishing App to Google PlayStore
    7. Setup iOS App to Publish in the Appstore
    8. Creating the iOS Archive and Uploading It
  26. Chapter 26 : The App Development Process
    1. The App Development Process

Product information

  • Title: The Complete Flutter and Dart App Development Course
  • Author(s): Paulo Dichone
  • Release date: June 2020
  • Publisher(s): Packt Publishing
  • ISBN: 9781800563322