Join the most comprehensive & bestselling Flutter course and learn how to build amazing iOS and Android apps! File Size: 19.95 GB
Learn Flutter & Dart to Build iOS & Android Apps 2020
What you’ll learn
Build engaging native mobile apps for both Android and iOS
Use features like Google Maps, the device camera, authentication and much more!
Learn all the basics and advanced features which you find in no other course
Course content
Expand all 605 lectures59:00:30
–Introduction
01:22:33
Introduction
Preview
01:48
What is Flutter?
Preview
05:54
Join our Online Learning Community
00:21
Understanding the Flutter Architecture
Preview
04:47
How Flutter & Dart Code Gets Compiled To Native Apps
Preview
Get immediately download Learn Flutter & Dart to Build iOS & Android Apps 2020
03:12
Understanding Flutter Versions
Preview
02:49
Flutter macOS Setup
Preview
18:50
macOS Development Environment
Preview
04:08
Flutter Windows Setup
Preview
20:12
Windows Development Environment
Preview
03:45
Flutter & Material Design
Preview
01:15
Flutter Alternatives
Preview
06:06
Course Outline
Preview
06:40
How To Get The Most Out Of The Course
Preview
02:40
Useful Resources & Links
00:05
–Flutter Basics [QUIZ APP]
04:29:49
Module Introduction
02:25
Creating a New Project
12:15
An Overview of the Generated Files & Folders
08:20
More on Git (Version Control System)
00:26
Analyzing the Default App
05:32
Dart Basics
17:17
More Dart Basics
13:06
Dart Basics – Summary
04:57
Dart Fundamentals
7 questions
Building an App From Scratch
11:02
Running the App on an Emulator
03:25
Class Constructors & Named Arguments
08:29
First Summary & Additional Syntax
08:10
Flutter App Basics
3 questions
Building a Widget Tree
07:40
Visible (Input / Output) & Invisible (Layout / Control) Widgets
03:13
Adding Layout Widgets
06:52
Widget Basics
6 questions
Connecting Functions & Buttons
07:30
Anonymous Functions
03:20
Updating Widget Data (Or: Using StatelessWidget Incorrectly)
06:36
[DART DEEP DIVE] Understanding Lists
01:30
Updating Correctly with Stateful Widgets
11:58
Stateful & Stateless Widgets
3 questions
A Brief Look Under The Hood
02:27
Using Private Properties
05:16
Creating a New, Custom Widget
11:50
First Styling & Layouting Steps
08:01
Enums & Multiple Constructors
04:06
Official Docs & The Widget Catalog
02:39
Passing Callback Functions Around
10:38
Introducing Maps
05:52
Mapping Lists to Widgets
10:24
final vs const
10:50
Advanced Flutter & Dart Basics
6 questions
Introducing “if” Statements
06:51
[DART DEEP DIVE] More on “if” Statements
11:15
[DART DEEP DIVE] The “null” Value
02:03
Outputting Widgets Conditionally
02:20
Splitting the App Into Widgets
09:57
Calculating a Total Score
07:46
Getters & “else-if”
06:34
Resetting the Quiz
04:53
Time to Practice: Flutter Basics
1 question
Wrap Up
01:53
Module Resources
00:09
–Running Apps on Different Devices & Debugging Apps
37:54
Module Introduction
02:00
Running the App on a Real Android Device
03:56
Running the App on an iOS Emulator
05:54
Running the App on a Real iOS Device
01:52
Working with the Emulators / Using the Emulators
02:25
Understanding Error Messages & Fixing Errors
05:27
Using the Debugger
06:21
Getting Started with the Dart DevTools
04:54
Understanding the Repaint Rainbow
03:23
Wrapping up the Dart DevTools
01:34
Useful Resources & Links
00:08
–Widgets, Styling, Adding Logic – Building a Real App [PERSONAL EXPENSES APP]
05:00:41
Module Introduction
03:19
An Overview of the Core Flutter Widgets
09:42
Planning the App
02:43
Combining Widgets
09:18
Understanding Column Alignment
06:11
Columns & Rows
3 questions
Not a Widget: Adding a Transaction Model & Transaction Data
08:28
Mapping Data Into Widgets
03:39
Building a Custom List Item
05:26
Styling a Container
05:12
Styling Text
02:46
More Styling!
01:55
Styling Time!
3 questions
Containers vs Columns vs Rows
03:38
Using String Interpolation
05:21
Installing External Packages & Formatting Dates
07:29
DateFormat Patterns
00:33
Adding Text Input Widgets (TextField)
09:41
Fetching User Input
09:19
Splitting the App Into Widgets
12:44
Connecting Widgets & Managing Data / State
06:33
Adding User Transactions to the List
03:58
Making the List Scrollable!
06:11
Working with ListViews
12:02
Lists, Scrolling & Text Input
3 questions
Further Input & Output Styling and Configuration
08:28
Adding AppBar Buttons & Floating Action Buttons
04:32
Showing a Modal Bottom Sheet
09:32
Improving & Styling the Modal Bottom Sheet
05:03
Configuring & Using Themes
08:42
Custom Fonts & Working with Text Themes
11:07
Theming
3 questions
Adding Images to the App
07:57
Planning the Chart Widget
04:22
Looping Through Lists
13:47
More on “for” Loops
00:28
Deriving Recent Transactions
07:24
Creating Bars for our Chart
10:59
Populating the Chart with Values
06:19
Finishing the Chart Bars
05:25
Flexible & Expanded: Deep Dive
10:23
Adding a ListTile Widget
05:29
Improving the Overall Chart
03:08
Widgets & Configuring Widgets – Summary / Overview
05:07
Getting Started with Date Selection
05:19
Showing a DatePicker
11:13
Adding Transactions with a Date
03:07
Deleting Transactions & Using IconButtons
07:02
Final Polishing!
05:34
Wrap Up
03:54
Useful Resources & Links
00:11
–Responsive & Adaptive User Interfaces and Apps
01:24:26
Module Introduction
01:37
What does “Responsive” and “Adaptive” Mean?
05:55
Examples: Where we could improve the App!
03:04
Calculating Sizes Dynamically
09:13
Working with the “textScaleFactor”
00:38
Using the LayoutBuilder Widget
07:44
Responsiveness
3 questions
Controlling the Device Orientation
03:22
Rendering Alternative Landscape Content – 1
04:42
Finishing Landscape Mode
02:58
Showing Different Content Based on Device Orientation
05:33
Respecting the Softkeyboard Insets
03:43
Using the Device Size in Conditions
04:10
Managing the MediaQuery Object
02:06
Checking the Device Platform
05:36
Using Cupertino (iOS) Widgets
09:05
Using the SafeArea
01:43
More Cupertino Styles
03:09
Using Cupertino Buttons
03:11
Creating Custom Adaptive Widgets
05:04
Adaptive Widgets
3 questions
Wrap Up
01:43
Useful Resources & Links
00:09
–Widget & Flutter Internals – Deep Dive
02:00:03
Module Introduction
02:32
The Problem At Hand
03:13
Widget Tree & Element Tree – What, Why and How?
10:45
How Flutter Rebuilds & Repaints the Screen
08:48
How Flutter Executes build()
09:18
Using “const” Widgets & Constructors
11:16
Widgets, Elements, build()
4 questions
Writing Good Code
03:57
Extracting Widgets
06:07
Using Builder Methods
10:21
Time to Practice: Builder Methods
1 question
Understanding the Widget Lifecycle
12:55
Calling super.initState() etc.
00:48
Understanding the App Lifecycle
09:25
Understanding Context
06:46
A Problem with Lists & Stateful Widgets
05:34
Understanding the Problem Root
05:09
Using Keys
11:15
Keys, Lists, Stateful Widgets
3 questions
Wrap Up
01:41
Useful Resources & Links
00:13
–Navigation & Multiple Screens [MEALS APP]
04:09:18
Module Introduction
02:23
Planning the App
04:45
Starting With The App – Adding Base Data
11:18
Creating a Grid & Working with Linear Gradients
07:49
Registering a Screen as the Main Screen
03:10
Styling & Theming
07:04
Navigating to a New Page
10:10
Passing Data via the Constructor
02:38
Using Named Routes & Passing Data With Named Routes
06:42
Screens & Navigation
5 questions
Diving Deeper into Named Routes
02:46
Adding a Meal Model & Data
12:44
Selecting Meals for a Chosen Category
04:56
Displaying Recipe Items & Using Network Images
14:59
Finishing the Meal List Item
15:21
Navigating to the Meal Detail Page
07:17
onGenerateRoute & onUnknownRoute
05:27
More Navigation!
2 questions
Finishing the Meal Detail Page
17:34
Adding a TabBar to the Appbar
10:26
Adding a Bottom TabBar
13:12
Adding a Custom Drawer
12:37
Adding Links to the Drawer
04:03
Tabs & Drawers!
2 questions
Replacing Pages (Instead of Pushing)
04:21
Popping Pages & Passing Data Back
17:06
Replacing, Popping & Data
3 questions
Adding Filter Switches
08:31
Adding Filtering Logic
16:19
Adding a “Mark as Favorite” Feature
19:57
A Problem!
02:40
Wrap Up
02:55
Useful Resources & Links
00:08
–State Management [SHOP APP]
03:50:00
Module Introduction
02:13
Planning the App
06:55
Defining a Data Model
06:32
Working on the “Products” Grid & Item Widgets
16:24
Styling & Theming the App
05:14
Adding Navigation to the App
10:30
Why State Management? And what is “State” and “State Management”?
06:29
Understanding the “Provider” Package & Approach
02:55
Using the Right Provider Package Version
00:26
Working with Providers & Listeners
19:44
[DART DEEP DIVE] Inheritance (“extends”) vs Mixins (“with”)
06:23
Providing non-Objects
00:48
Listening in Different Places & Ways
05:58
State, State Management & The Provider Package/ Approach
3 questions
Using Nested Models & Providers
14:03
Exploring Alternative Provider Syntaxes
04:42
Using “Consumer” instead of “Provider.of”
07:25
Local State vs App-wide State
15:40
Adding Shopping Cart Data
08:39
More on State Management & The Provider Package
3 questions
Working with Multiple Providers
03:03
Connecting the Cart Provider
11:31
Working on the Shopping Cart & Displaying a Total
11:37
Displaying a List of Cart Items
11:17
Making Cart Items Dismissible
08:47
Adding Product Detail Data
04:49
Providing an Orders Object
07:06
Adding Orders
02:47
Adding an Orders Screen
08:11
Using a Side Drawer
05:45
Making Orders Expandable & Stateful Widgets vs Providers
10:29
Wrap Up
03:29
Useful Resources & Links
00:08
–Working with User Input & Forms [SHOP APP]
02:02:58
Module Introduction
03:02
Snackbars & Undoing “Add to Cart” Actions
10:30
Showing Alert Dialogs
07:12
Adding a “Manage Products” Page
14:15
“Edit Product” Screen & A Problem
05:06
Using Forms & Working with Form Inputs
07:59
ListView or Column
00:49
Managing Form Input Focus
04:35
Multiline Inputs & Disposing Objects
04:11
Image Input & Image Preview
13:15
Submitting Forms
12:01
Validating User Input
04:14
Adding Validation to All Inputs
09:50
[OPTIONAL] Working with Regular Expressions
01:08
Saving New Products
03:52
Time to Update Products!
16:19
Allowing Users to Delete Products
03:39
Wrap Up
00:53
Useful Resources & Links
00:07
–Sending Http Requests [SHOP APP]
02:45:43
Module Introduction
02:05
On-Device vs Web Storage
04:08
How to Connect Flutter to a Database
03:36
Preparing Our Backend
04:31
How To Send Http Requests
05:56
Sending POST Requests
10:55
Working with Futures in Dart
07:35
[DART DEEP DIVE] Futures & Async Code
09:27
Http Requests & Futures
5 questions
Showing a Loading Indicator
06:59
Handling Errors Gracefully
12:11
Working with “async” & “await”
09:52
Fetching Data, initState & “of(context)”
08:27
How to Transform Fetched Data
07:38
Implementing Pull-to-Refresh
04:12
Updating Data via PATCH Requests
06:35
Utilizing Optimistic Updating
08:07
Creating Custom Exceptions & More Error Handling
09:05
A Challenge For You!
01:48
Updating the “Favorite” Status Optimistically
06:38
Storing Orders in the Web
11:29
Fetching Orders & Fixing an Issue
12:21
Using the “FutureBuilder” Widget & Improving the Code
10:06
Wrap Up
Get immediately download Learn Flutter & Dart to Build iOS & Android Apps 2020
01:54
Useful Resources & Links
00:08
25 more sections
Requirements
Basic programming language will help but is not a must-have
You can use either Windows, macOS or Linux for Android app development – iOS apps can only be built on macOS though
NO prior iOS or Android development experience is required
NO prior Flutter or Dart experience is required – this course starts at zero!
Description
The entire course was completely re-recorded and updated – it’s totally up-to-date with the latest version of Flutter!
—
Join the most comprehensive & bestselling Flutter course and learn how to build amazing iOS and Android apps!
You don’t need to learn Android/ Java and iOS/ Swift to build real native mobile apps!
Flutter – a framework developed by Google – allows you to learn one language (Dart) and build beautiful native mobile apps in no time. Flutter is a SDK providing the tooling to compile Dart code into native code and it also gives you a rich set of pre-built and pre-styled UI elements (so called widgets) which you can use to compose your user interfaces.
Flutter is extremely trending and gets used for major Google apps like their Adwords app – it’s now marked as “ready for production”, hence now is the time to jump in and learn it!
This course will teach Flutter & Dart from scratch, NO prior knowledge of either of the two is required! And you certainly don’t need any Android or iOS development experience since the whole idea behind Flutter is to only learn one language.
You’ll learn Flutter not only in theory but we’ll build a complete, realistic app throughout this course. This app will feature both all the core basics as well as advanced features like using Google Maps, the device camera, adding animations and more!
With Flutter, you’ll be able to write code only once and ship your apps both to the Apple AppStore and Google Play.
Use Google’s Material Design to build beautiful, yet fully customizable, apps in no time with almost zero effort. You can use the rich widget suite Flutter provides to add common UI elements like buttons, switches, forms, toolbars, lists and more – or you simply build your own widgets – Flutter makes that a breeze, too.
Here’s what’s included in the course:
Detailed setup instructions for both macOS and Windows
A thorough introduction to Flutter, Dart and the concept behind widgets
An overview of the built-in widgets and how you may add your own ones
Debugging tipps & tricks
Page navigation with tabs, side drawers and stack-based navigation
State management solutions
Handling and validating user input
Connecting your Flutter app to backend servers by sending Http requests
User authentication
Adding Google Maps
Using native device features like the camera
Adding beautiful animations & page transitions
How to publish your app to the app stores
And more!
This course is for you if …
You’re interested in building real native mobile apps for the two most popular mobile platforms – iOS and Android
You want to explore the full set of features Flutter offers
Don’t want to spend hours learning two completely different languages
Course prerequisites:
Basic programming language knowledge will help a lot but is not a hard requirement
You DON’T need to know Flutter or Dart
You DON’T need to know iOS (Swift/ObjectiveC) or Android (Java)
As mentioned above, the course was updated from scratch – old, now obsolete content (~25h) is temporarily kept around for existing students ([LEGACY] sections) and will eventually be removed.
Who this course is for:
Beginner and experienced developers who are interested in diving into mobile app development using one language for both platforms
Experienced iOS or Android developers who want to build cross-platform (iOS + Android) apps with one single programming language