Complete Flutter Masterclass - Beginner To Expert

Posted By: ELK1nG

Complete Flutter Masterclass - Beginner To Expert
Published 11/2023
MP4 | Video: h264, 1280x720 | Audio: AAC, 44.1 KHz
Language: English | Size: 10.34 GB | Duration: 19h 29m

Master the Flutter Framework, Learn Dart Programming, and Become a Flutter Developer!

What you'll learn

Master the Flutter framework and Dart programming language

Includes developing 10 hands-on Flutter app projects step-by-step

Create a Music app using the Spotify API

Develop a Star Wars app using the Star Wars API

Build a Social Media Chat app using the PubNub SDK

Create an E-Commerce app using the Fake Store API

Develop a News app using the New York Times API

Build a Superhero app using the Superhero API

Create a Food app using the Meal DB API

Develop a Clock app featuring an alarm, timer, and stopwatch

Build a Notes app that allows you to edit and save notes

Create a calculator app

Easily transition to Flutter from other tech stacks

Use the Material and Cupertino libraries to build apps that have native iOS and Android look and feel

All 23 Gang of Four Design Patterns

Play audio and video in your apps

Learn all about layouts, gestures, and animations

Understand how to implement navigation in your Flutter apps

Trigger and respond to local notifications and Firebase push notifications

Save data to the device to persist between app sessions

Learn state management with Redux, MobX, and BLoC Pattern

Requirements

A computer. with Windows, Mac, or Linux

Eagerness and willingness to learn Flutter development and build some awesome apps

Note: All software and programs for this course are FREE (some of the APIs require email to sign up)

Description

This comprehensive all-in-one course will take you from beginner to expert in Flutter. The goal of this course is to take a student with little or no experience with Flutter and make you an expert Flutter developer using the Flutter framework and Dart programming language. Whether you want to:Build the skills you need to land a job as a Flutter developerCreate apps that can be developed in one code base and published across Android, iOS, Web, and DesktopUnderstand client-server architecture and how to utilize APIs to dynamically use data in your app projectsLearn how to integrate Mobile SDKs into the apps you build. . . this complete Flutter tutorial is the course you need to do all of this, and more.Why should you learn Flutter?Flutter is an in-demand skill, and one of the most popular mobile app development frameworks in the industryBy developing with Flutter you can maintain one codebase and publish to various platforms while maintaining a "native app" look and feelFlutter was created by Google and is the language of their new operating system, Fuchsia OSSince Flutter and Dart are so UI focused, you can easily create beautiful and intuitive user interfacesHow is the course structured?The course goes in order building up from basic to intermediate and then advanced. Each section of this course is designed to teach you a particular skill or explore an aspect of Flutter. The topics in later sections are built on top of the concepts taught earlier, so it is important to work through this course in sequence to ensure your understanding and get the most value out of it. The sections and concepts taught include:Flutter FundamentalsHow to transition to Flutter if you are coming from another coding backgroundBasic WidgetsLayoutsThe Dart Programming LanguageMaterial Widgets (Android Style)Cupertino Widgets (iOS Style)DialogsGesturesAnimationsState ManagementNavigation & NotificationsNetworking & JSONFlutter LibrariesTesting & DebuggingDeploying your Flutter AppFlutter CommandsDesign Patterns in DartSOLID Programming in DartYou will practice the concepts taught hands-on throughout the course and combine the skills together as we build 10 hands-on Flutter apps from the ground up. In this course we will create:A calculator appA notes appA clock appA social media chat app using the PubNub SDKAn e-commerce app using the Fake Store APIA news app using the New York Times APIA food app using the Meal DB APIA Star Wars app using the Star Wars APIA superhero app using the Superhero APIA music app using the Spotify APIWho is your instructor? My name is Rob Gioia and I currently work as a Senior Solutions Architect. In my role I teach customers how to create great user experiences, seamlessly integrate SDKs and products into their apps, and troubleshoot tough technical challenges. This role requires me to work with all different types of programming languages and technologies, and having worked with Flutter, React Native, Kotlin, Swift, C#, and JavaScript along with other languages and tech stacks has enabled me to gain a deep understanding of the ideal scenarios and use-cases to work with each of them. Prior to working as a Solutions Architect I have several years of experience working professionally as a mobile app developer. What if you have questions?Any questions you have can be posted to the Q&A forum or messaged to me on Udemy. I check my Udemy account every day to see if students have questions, and do my best to be as responsive and helpful as possible.If you get stuck at any point during this course, send me a message and I will get you unstuck!There is no risk in taking this course!This course comes with a full 30 day money-back guarantee. You either end up with Flutter skills, go on to develop great programs and potentially make an awesome career for yourself, or you try the course and simply get all your money back if you don’t like it…You literally can’t lose.Are you ready to master Flutter and build an awesome set of mobile app development skills? Then enroll now using the “Add to Cart” button on the right!

Overview

Section 1: Introduction

Lecture 1 Introduction

Lecture 2 Why Learn Flutter?

Lecture 3 Who is your Instructor?

Lecture 4 Choosing a Flutter IDE

Section 2: Downloading & Installing Programs

Lecture 5 Section Introduction

Lecture 6 iOS Prerequisite Setup: XCode + Simulator (Mac only)

Lecture 7 Android Prerequisite Setup: Android Studio + Emulator

Lecture 8 Download Visual Studio Code (Mac)

Lecture 9 Download Visual Studio Code (Windows)

Lecture 10 Flutter Setup (Mac)

Lecture 11 Flutter Setup (Windows)

Lecture 12 Section Summary

Section 3: Flutter Fundamentals

Lecture 13 Section Introduction

Lecture 14 What is Flutter?

Lecture 15 Flutter vs. Other Solutions

Lecture 16 Hello World in Dart

Lecture 17 Creating a New Flutter Project

Lecture 18 Flutter Project Architecture

Lecture 19 Hello World in Flutter

Lecture 20 Under the Hood: The Layered Model

Lecture 21 Introduction to Widgets

Lecture 22 The Widget Tree

Lecture 23 Stateful, Stateless and Inherited Widgets

Lecture 24 Introduction to Layouts

Lecture 25 Introduction to Gestures

Lecture 26 Introduction to Animations

Lecture 27 Running a Flutter App in VS Code

Lecture 28 Hot Reload

Lecture 29 Section Summary

Section 4: Coming from Another Coding Background? (If not, skip!)

Lecture 30 Section Introduction

Lecture 31 Android Developer to Flutter Developer

Lecture 32 iOS Developer to Flutter Developer

Lecture 33 React Native to Flutter Developer

Lecture 34 Web Developer to Flutter Developer

Lecture 35 Xamarin Developer to Flutter Developer

Lecture 36 Section Summary

Section 5: Basic Widgets

Lecture 37 Section Introduction

Lecture 38 Text

Lecture 39 RichText

Lecture 40 Container

Lecture 41 Column

Lecture 42 Row

Lecture 43 FlutterLogo

Lecture 44 Image

Lecture 45 Placeholder

Lecture 46 Section Summary

Section 6: Layouts

Lecture 47 Section Introduction

Lecture 48 Align

Lecture 49 AspectRatio

Lecture 50 Baseline

Lecture 51 Center

Lecture 52 ConstrainedBox

Lecture 53 Expanded

Lecture 54 FittedBox

Lecture 55 FractionallySizedBox

Lecture 56 IntrinsicHeight

Lecture 57 IntrinsicWidth

Lecture 58 ListView

Lecture 59 LimitedBox

Lecture 60 Offstage

Lecture 61 OverflowBox

Lecture 62 Padding

Lecture 63 SizedBox

Lecture 64 SizedOverflowBox

Lecture 65 Transform

Lecture 66 GridView

Lecture 67 Table

Lecture 68 Stack

Lecture 69 IndexedStack

Lecture 70 Wrap

Lecture 71 Section Summary

Section 7: The Dart Programming Language

Lecture 72 Section Introduction

Lecture 73 Variables & Types

Lecture 74 Operators

Lecture 75 Collections

Lecture 76 Control Flow Statements

Lecture 77 Functions

Lecture 78 Object Oriented Programming

Lecture 79 Generics

Lecture 80 Error Handling

Lecture 81 Asynchronous

Lecture 82 Isolates

Lecture 83 Section Summary

Section 8: Material Widgets (Android Style)

Lecture 84 Section Introduction

Lecture 85 Common Buttons

Lecture 86 Icons

Lecture 87 IconButton

Lecture 88 BottomAppBar

Lecture 89 FAB (Floating Action Button)

Lecture 90 ExtendedFAB

Lecture 91 SegmentedButton

Lecture 92 Badge

Lecture 93 ProgressIndicator

Lecture 94 Snackbar

Lecture 95 BottomSheet

Lecture 96 Card

Lecture 97 Divider

Lecture 98 ListTile

Lecture 99 AppBar

Lecture 100 NavigationBar

Lecture 101 NavigationRail

Lecture 102 Drawer

Lecture 103 TabBar

Lecture 104 Checkbox

Lecture 105 Chip

Lecture 106 DatePicker

Lecture 107 Menu

Lecture 108 RadioButton

Lecture 109 Slider

Lecture 110 Switch

Lecture 111 TimePicker

Lecture 112 TextField

Lecture 113 Section Summary

Section 9: Cupertino Widgets (iOS Style)

Lecture 114 Section Introduction

Lecture 115 CupertinoPageScaffold

Lecture 116 CupertinoButton

Lecture 117 CupertinoActionSheet

Lecture 118 CupertinoActivityIndicator

Lecture 119 CupertinoContextMenu

Lecture 120 CupertinoDatePicker

Lecture 121 CupertinoListSection and CupertinoListTile

Lecture 122 CupertinoNavigationBar

Lecture 123 CupertinoPicker

Lecture 124 CupertinoPopupSurface

Lecture 125 CupertinoScrollbar

Lecture 126 CupertinoSearchTextField

Lecture 127 CupertinoSegmentedControl

Lecture 128 CupertinoSlidingSegmentedControl

Lecture 129 CupertinoSlider

Lecture 130 CupertinoSwitch

Lecture 131 CupertinoTabBar

Lecture 132 CupertinoTextField

Lecture 133 CupertinoTimerPicker

Lecture 134 Section Summary

Section 10: Dialogs

Lecture 135 Section Introduction

Lecture 136 Dialog

Lecture 137 SimpleDialog

Lecture 138 AlertDialog

Lecture 139 CupertinoAlertDialog

Lecture 140 AboutDialog

Lecture 141 DatePickerDialog

Lecture 142 DateRangePickerDialog

Lecture 143 TimePickerDialog

Lecture 144 Section Summary

Section 11: Gestures

Lecture 145 Section Introduction

Lecture 146 Pointers

Lecture 147 Tap

Lecture 148 Double Tap

Lecture 149 Long Press

Lecture 150 Vertical Drag

Lecture 151 Horizontal Drag

Lecture 152 Pan

Lecture 153 Section Summary

Section 12: Animations

Lecture 154 Section Introduction

Lecture 155 Animation Basics

Lecture 156 Implicit and Explicit Animations

Lecture 157 AnimatedContainer

Lecture 158 AnimatedContainer - Animate a Widget's Color

Lecture 159 AnimatedContainer - Animate a Widget's Border

Lecture 160 AnimationController

Lecture 161 AnimationController - Animate a Text Widget's Scale

Lecture 162 AnimatedBuilder

Lecture 163 AnimatedBuilder - Animate a Button Widget's Color

Lecture 164 Tween

Lecture 165 Tween - Animate a Text Widget's Value

Lecture 166 TweenSequence

Lecture 167 TweenSequence - Animate a Container Widget's Color

Lecture 168 Transition

Lecture 169 FadeTransition

Lecture 170 ScaleTransition

Lecture 171 RotationTransition

Lecture 172 SlideTransition

Lecture 173 SizeTransition

Lecture 174 Hero

Lecture 175 Curved Animations

Lecture 176 Physics Simulations

Lecture 177 Section Summary

Section 13: State Management

Lecture 178 Section Introduction

Lecture 179 Updating the UI

Lecture 180 Passing the State with Provider

Lecture 181 Stateful Widgets

Lecture 182 Inherited Widgets

Lecture 183 Inherited Model

Lecture 184 Inherited Notifier

Lecture 185 Redux

Lecture 186 MobX

Lecture 187 BLoC Pattern

Lecture 188 Section Summary

Section 14: Navigation & Notifications

Lecture 189 Section Introduction

Lecture 190 Navigator & Routes

Lecture 191 Local Notifications

Lecture 192 Push Notifications

Lecture 193 Section Summary

Section 15: Networking & JSON

Lecture 194 Section Introduction

Lecture 195 Networking Concepts

Lecture 196 GET Requests

Lecture 197 POST Requests

Lecture 198 PUT Requests

Lecture 199 DELETE Requests

Lecture 200 Parsing JSON

Lecture 201 Section Summary

Section 16: Flutter Libraries

Lecture 202 Section Introduction

Lecture 203 animation

Lecture 204 cupertino

Lecture 205 foundation

Lecture 206 gestures

Lecture 207 material

Lecture 208 painting

Lecture 209 physics

Lecture 210 rendering

Lecture 211 scheduler

Lecture 212 semantics

Lecture 213 services

Lecture 214 widgets

Lecture 215 Section Summary

Section 17: Calculator App

Lecture 216 Section Introduction

Lecture 217 Project Goals & Skills

Lecture 218 UI Layout

Lecture 219 Functionality

Lecture 220 A look at the finished app

Lecture 221 Section Summary

Section 18: Notes App

Lecture 222 Section Introduction

Lecture 223 Project goals & skills

Lecture 224 App home screen

Lecture 225 Creating a new note

Lecture 226 Saving a note

Lecture 227 Displaying a list of notes

Lecture 228 Deleting a note

Lecture 229 Settings screen

Lecture 230 Note edit view

Lecture 231 A look at the finished app

Lecture 232 Section Summary

Section 19: Clock App

Lecture 233 Section Introduction

Lecture 234 Project Goals & Skills

Lecture 235 Bottom Nav Bar

Lecture 236 Settings Screen

Lecture 237 Clock Screen

Lecture 238 Alarm Screen

Lecture 239 Timer Screen

Lecture 240 Stopwatch Screen

Lecture 241 A look at the finished app

Lecture 242 Section Summary

Section 20: Social Media Chat App (PubNub SDK)

Lecture 243 Section Introduction

Lecture 244 Project Goals & Skills

Lecture 245 Integrating the PubNub SDK

Lecture 246 Creating a Chat Room

Lecture 247 Posting a Message

Lecture 248 Liking a Message

Lecture 249 Replying to a Message

Lecture 250 Deleting a Message

Lecture 251 Editing a Message

Lecture 252 A look at the finished app

Lecture 253 Section Summary

Section 21: E-Commerce App (Fake Store API)

Lecture 254 Section Introduction

Lecture 255 Project Goals & Skills

Lecture 256 Fake Store API

Lecture 257 FTUE Screen

Lecture 258 Top Nav Bar

Lecture 259 Login Screen

Lecture 260 Login and Logout Logic

Lecture 261 Home Screen

Lecture 262 Product Detail Screen

Lecture 263 Cart Screen

Lecture 264 A look at the finished app

Lecture 265 Section Summary

Section 22: News App (New York Times API)

Lecture 266 Section Introduction

Lecture 267 Project Goals & Skills

Lecture 268 New York Times API

Lecture 269 Top App Bar

Lecture 270 Bottom Nav Bar

Lecture 271 Articles Section

Lecture 272 Books Section

Lecture 273 A look at the finished app

Lecture 274 Section Summary

Section 23: Food App (Meal DB API)

Lecture 275 Section Introduction

Lecture 276 Project Goals & Skills

Lecture 277 Meal DB API

Lecture 278 Home Screen

Lecture 279 Meals Screen

Lecture 280 Recipe Screen

Lecture 281 A look at the finished app

Lecture 282 Section Summary

Section 24: Star Wars App (Star Wars API)

Lecture 283 Section Introduction

Lecture 284 Project Goals & Skills

Lecture 285 Star Wars API

Lecture 286 Animated Scrolling Background

Lecture 287 Home Screen

Lecture 288 List View Screen

Lecture 289 Detail View Screen

Lecture 290 A look at the finished app

Lecture 291 Section Summary

Section 25: Superhero App (Superhero API)

Lecture 292 Section Introduction

Lecture 293 Project Goals & Skills

Lecture 294 Superhero API

Lecture 295 Displaying a list of cards

Lecture 296 Developing the Detail View

Lecture 297 Filtering

Lecture 298 Sorting

Lecture 299 A look at the finished app

Lecture 300 Section Summary

Section 26: Music App (Spotify API)

Lecture 301 Section Introduction

Lecture 302 Project Goals & Skills

Lecture 303 Spotify API

Lecture 304 Home Screen

Lecture 305 Album Screen

Lecture 306 Song Screen

Lecture 307 A look at the finished app

Lecture 308 Section Summary

Section 27: Testing & Debugging

Lecture 309 Section Introduction

Lecture 310 Unit Testing

Lecture 311 Widget Testing

Lecture 312 Integration Testing

Lecture 313 Mock Objects

Lecture 314 Dev Tools

Lecture 315 Widget Inspector

Lecture 316 CPU Profiler

Lecture 317 Memory View

Lecture 318 Network View

Lecture 319 Logging View

Lecture 320 Section Summary

Section 28: Deploying your Flutter App

Lecture 321 Section Introduction

Lecture 322 Debug Mode

Lecture 323 Release Mode

Lecture 324 Profile Mode

Lecture 325 Build Android App

Lecture 326 Build iOS App

Lecture 327 Build Web App

Lecture 328 Section Summary

Section 29: Flutter Commands

Lecture 329 Section Introduction

Lecture 330 analyze

Lecture 331 attach

Lecture 332 bash-completion

Lecture 333 build

Lecture 334 channel

Lecture 335 clean

Lecture 336 config

Lecture 337 create

Lecture 338 devices

Lecture 339 doctor

Lecture 340 downgrade

Lecture 341 drive

Lecture 342 emulators

Lecture 343 install

Lecture 344 logs

Lecture 345 precache

Lecture 346 pub

Lecture 347 run

Lecture 348 screenshot

Lecture 349 test

Lecture 350 upgrade

Lecture 351 Section Summary

Section 30: Design Patterns in Dart

Lecture 352 Section Introduction

Lecture 353 What is a Design Pattern?

Lecture 354 Abstract Factory

Lecture 355 Builder

Lecture 356 Factory Method

Lecture 357 Prototype

Lecture 358 Singleton

Lecture 359 Adapter

Lecture 360 Bridge

Lecture 361 Composite

Lecture 362 Decorator

Lecture 363 Facade

Lecture 364 Flyweight

Lecture 365 Proxy

Lecture 366 Chain of Responsibility

Lecture 367 Command

Lecture 368 Interpreter

Lecture 369 Iterator

Lecture 370 Mediator

Lecture 371 Memento

Lecture 372 Observer

Lecture 373 State

Lecture 374 Strategy

Lecture 375 Template Method

Lecture 376 Visitor

Lecture 377 Section Summary

Section 31: SOLID Programming in Dart

Lecture 378 Section Introduction

Lecture 379 Single Responsibility Principle (S)

Lecture 380 Open-Closed Principle (O)

Lecture 381 Liskov Substitution Principle (L)

Lecture 382 Interface Segregation Principle (I)

Lecture 383 Dependency Inversion Principle (D)

Lecture 384 Section Summary

Section 32: Course Summary & Wrap-Up

Lecture 385 Course Summary & Wrap-Up

Lecture 386 Bonus Video

Anyone that wants to master the Flutter framework and Dart programming language,Mobile developers looking to move to Flutter from another tech stack like iOS, Android, or React Native,App developers that want to learn Flutter as a cross-platform solution,Students that want to land an entry level position as a mobile app developer,This course is perfect for absolute beginners with no previous coding experience, to intermediates looking to sharpen their skills to the expert level