Video description
Take this course and learn Flutter in no time at all: it’s a must.
Alain Lompo, Software Developer, Senacor
In 2018, mobile app downloads topped 194 billion, and experts forecast that number to rise another 30% or more by 2022. As a developer, you need a fast, safe, efficient way to take advantage of this incredible opportunity! Enter: Flutter, a game-changing software development kit designed for building lightning-fast, stunning apps that run on iOS and Android.
Flutter in Motion walks you through a complete Flutter application start to finish! Through rich visual content and seasoned developer Scott Cornell’s expert instruction, you’ll learn about widget trees, element trees, reactive programming with Flutter, and the differences between implicit, transition, and explicit animations. You’ll discover key Flutter design patterns and best practices, learn how to handle asynchronous calls, and use ahead-of-time (AOT) and just-in-time (JIT) compilation for customization, general performance, and hot reloading.
You’ll also learn how to take advantage of Flutter’s built-in widgets while you build a fully functioning money management application. Along the way, you’ll gain exposure to Google’s Dart programming language, easy to learn for anyone with experience with a high-level language.
Flutter, a ground-breaking cross-platform software development kit created by Google, makes it easier than ever to create highly responsive, secure, beautiful native apps for iOS and Android. Flutter embraces modern design patterns, so its applications are loosely-coupled and easy to scale. And because Flutter compiles Dart code to platform-specific programs with no need for a JavaScript bridge, it’s blindingly fast. Flutter’s built-in widgets and rich motion APIs make you productive fast, so your Flutter apps are as responsive as they are gorgeous!
Inside:
- Reactive programming with Flutter
- Using AOT and JIT for production and development
- Widget keys and when to use them
- Handling asynchronous calls
- Using implicit, explicit, and transition animations
- How to handle user input
- Flutter design patterns, anti-patterns, and best practices
For intermediate developers with experience in a high-level language like Java, JavaScript or C#. You’ll need some prior exposure to object-oriented and asynchronous programming.
Scott Cornell has been a developer for over 18 years. His work has run the gamut from desktop applications to Web and mobile apps. He loves to learn new technologies, including cross-platform mobile frameworks such as React Native, Xamarin, Ionic, NativeScript and Flutter.
A great introduction to cross platform mobile application development with Flutter.
Julien Pohie, Software Engineer, Dell
Excellent step by step guide to bootstrap your Flutter development.
George Onofrei, DevEx Solutions
Table of Contents
- INTRODUCTION
Course overview
00:04:10
First look at Flutter
00:11:33
Flutter Architecture
00:06:42
Alternatives to Flutter
00:05:15
- INSTALLATION AND SETUP
Setting up: Windows, macOS, Linux part 1
00:07:14
Setting up: Windows, Mac OS, Linux part 2
00:07:46
Setting up VS Code
00:05:30
Call the doctor: Flutter doctor
00:07:20
Review initial Flutter project
00:07:12
Working with simulators and emulators
00:07:33
Looking at documentation
00:03:23
- WIDGETS AND THEMES
Creating a project
00:03:17
Looking at main.dart
00:07:05
What is a widget?
00:04:54
Stateless widgets and understanding the build method
00:03:50
Material Design and Cupertino
00:06:13
Working with text, icons, and images
00:04:22
Dart classes and constructors
00:04:24
- LAYOUTS AND NAVIGATION
The most used widget: the Container widget
00:06:53
Decorating with the BoxDecoration widget
00:08:24
Layout with rows and columns
00:11:08
Adding more screens
00:05:12
Navigating with routes
00:06:59
Styling our menu
00:07:00
- FORMS AND STATE
Basic input screen
00:10:03
Async/Await and more route options
00:05:32
Just another form
00:06:39
Budget item entry
00:08:48
Finish the last form
00:06:59
- STORAGE AND LISTS
SQLite, provider package, and a model
00:07:47
Saving data
00:05:25
Retrieving data
00:09:13
Lets do it again with types
00:07:40
Populate dropdowns from SQLite and save with transactions
00:09:33
How to view a SQLite database
00:05:13
Deleting an item with the Dismissible widget
00:05:35
Getting totals
00:04:42
- MORE WIDGETS AND CLASSES
Additional layouts with GridView and Table
00:04:14
Stacking widgets with Stack
00:03:07
Clipping with ClipOval and ClipRect
00:04:08
Notify with SnackBar
00:03:12
Managing orientation
00:04:22
Prevent navigating backwards
00:03:51
Listen for route changes
00:03:00
App lifecycle
00:02:49
- ANIMATION
We need a hero: the Hero widget
00:04:07
Implicit animations
00:04:16
Transition animations
00:05:24
Explicit animations
00:04:57
A little more animation
00:04:56
- NETWORKING
Backend setup
00:06:33
Login plumbing
00:05:55
Login screen
00:05:24
StreamBuilder
00:09:03
Do it again with item types
00:03:49
Adding budget items to the mix
00:08:21
Finish up the app
00:06:03
- DEPLOYMENT
Prep for publishing an Android app
00:04:36
Publishing to the Google Store
00:02:52
Prep for publishing an iOS app
00:02:21
Publishing to the Apple store
00:02:56
Wrap up: What’s next for Flutter?
00:02:38