Flutter & Dart - The Complete Guide [2024 Edition]

A Complete Guide to the Flutter SDK & Flutter Framework for building native iOS and Android apps

4.64 (74424 reviews)
Udemy
platform
English
language
Mobile Apps
category
299,798
students
30 hours
content
Mar 2024
last update
$139.99
regular price

What you will learn

Learn Flutter and Dart from the ground up, step-by-step

Build engaging native mobile apps for both Android and iOS

Use features like Google Maps, the device camera, authentication and much more!

Learn how to upload images and how to send manual and automated push notifications

Learn all the basics without stopping after them: Dive deeply into Flutter & Dart and become an advanced developer

Description

May 2023: This course was completely updated (re-recorded from the ground up) and is now better than ever!

-

Discover the power of Flutter and Dart to create stunning, high-performance mobile apps for iOS and Android with the most comprehensive and bestselling Flutter course! With over 30 hours of comprehensive content, this course is the ultimate resource for anyone who wants to build beautiful, responsive, and feature-rich applications from scratch.

Learn from a Bestselling Udemy Instructor: Maximilian Schwarzmüller

I'm Maximilian Schwarzmüller, a bestselling, top-rated online course instructor with a vast variety of courses on web and mobile development. I'm excited to be your guide throughout this journey. My goal with this course is to teach you Flutter from the ground up, step-by-step and in a highly practice-oriented way!

Unlock Your Potential in Mobile App Development

This Flutter & Dart course is designed for absolute beginners with no prior programming experience, as well as for those with existing iOS, Android or other development skills. Through video lessons and hands-on projects, you'll learn the ins and outs of Flutter and Dart!

Throughout the course you'll build multiple demo apps - ranging from simple to more complex - and, by the end of the course, you'll be able to build your own iOS and Android apps with Flutter.

Why Choose Flutter?

  • Developed by Google, Flutter is a framework that allows you to learn one language (Dart) and build beautiful native mobile apps in no time

  • Write code only once and ship your apps both to the Apple App Store and Google Play

  • Use the rich widget suite Flutter provides to add common UI elements or build your own custom widgets

What You'll Learn:

  • 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 to add your own

  • Debugging tips & 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

  • Image upload

  • Push notifications - manual approach and automated

  • And much more!

Course Highlights:

  • On-Demand, Video-Based Learning: An immersive experience with practical examples and demo apps to help you develop your skills at your own pace

  • Lifetime Access: Revisit topics and refresh your knowledge anytime

  • Regularly Updated: The course has been updated multiple times in the past to ensure it stays up-to-date with the latest industry standards

No Experience Necessary

This course is designed to be accessible to everyone, regardless of their programming background. Whether you're a complete beginner or an experienced developer looking to expand your skillset, I will guide you through each step of the process, ensuring you gain a deep understanding of the fundamentals and advanced concepts.

Prerequisites:

  • Basic programming language knowledge will help but is not required

  • No prior knowledge of Flutter or Dart is needed

  • No iOS (Swift/ObjectiveC) or Android (Java/Kotlin) development experience required

Take the First Step Towards Your Mobile App Development Career

With the skyrocketing demand for skilled mobile app developers in today's job market, there has never been a better time to jump into the world of Flutter & Dart. By the end of this course, you'll be fully equipped to design, develop, and deploy stunning iOS and Android apps, setting yourself up for a successful career in mobile app development.

Don't let this opportunity pass you by! Enroll in "Flutter & Dart - The Complete Guide" today and start building amazing apps for the iOS and Android platforms!

Content

Introduction

Introduction
What is Flutter?
Join our Online Learning Community
Understanding the Flutter Architecture
How Flutter & Dart Code Gets Compiled To Native Apps
Understanding Flutter Versions
Flutter macOS Setup
macOS Development Environment
Flutter Windows Setup
Windows Development Environment
Flutter & Material Design
Flutter Alternatives
Course Outline
How To Get The Most Out Of The Course
Useful Resources & Links

Flutter Basics [QUIZ APP]

Module Introduction
Creating a New Project
An Overview of the Generated Files & Folders
More on Git (Version Control System)
Analyzing the Default App
Dart Basics
More Dart Basics
Dart Basics - Summary
Dart Fundamentals
Building an App From Scratch
Running the App on an Emulator
Class Constructors & Named Arguments
First Summary & Additional Syntax
Flutter App Basics
Building a Widget Tree
Visible (Input / Output) & Invisible (Layout / Control) Widgets
Adding Layout Widgets
Widget Basics
Connecting Functions & Buttons
Anonymous Functions
Updating Widget Data (Or: Using StatelessWidget Incorrectly)
[DART DEEP DIVE] Understanding Lists
Updating Correctly with Stateful Widgets
Stateful & Stateless Widgets
A Brief Look Under The Hood
Using Private Properties
Creating a New, Custom Widget
First Styling & Layouting Steps
Enums & Multiple Constructors
Official Docs & The Widget Catalog
Passing Callback Functions Around
Introducing Maps
Mapping Lists to Widgets
final vs const
Advanced Flutter & Dart Basics
Introducing "if" Statements
[DART DEEP DIVE] More on "if" Statements
[DART DEEP DIVE] The "null" Value
Outputting Widgets Conditionally
Splitting the App Into Widgets
Calculating a Total Score
Getters & "else-if"
Resetting the Quiz
Wrap Up
Module Resources

Running Apps on Different Devices & Debugging Apps

Module Introduction
Running the App on a Real Android Device
Running the App on an iOS Emulator
Running the App on a Real iOS Device
Working with the Emulators / Using the Emulators
Understanding Error Messages & Fixing Errors
Using the Debugger
Getting Started with the Dart DevTools
Understanding the Repaint Rainbow
Wrapping up the Dart DevTools
Useful Resources & Links

Widgets, Styling, Adding Logic - Building a Real App [PERSONAL EXPENSES APP]

Module Introduction
An Overview of the Core Flutter Widgets
Planning the App
Combining Widgets
Understanding Column Alignment
Columns & Rows
Not a Widget: Adding a Transaction Model & Transaction Data
Mapping Data Into Widgets
Building a Custom List Item
Styling a Container
Styling Text
More Styling!
Styling Time!
Containers vs Columns vs Rows
Using String Interpolation
Installing External Packages & Formatting Dates
DateFormat Patterns
Adding Text Input Widgets (TextField)
Fetching User Input
Splitting the App Into Widgets
Connecting Widgets & Managing Data / State
Adding User Transactions to the List
Making the List Scrollable!
Working with ListViews
Lists, Scrolling & Text Input
Further Input & Output Styling and Configuration
Adding AppBar Buttons & Floating Action Buttons
Showing a Modal Bottom Sheet
Improving & Styling the Modal Bottom Sheet
Configuring & Using Themes
Custom Fonts & Working with Text Themes
Theming
Adding Images to the App
Planning the Chart Widget
Looping Through Lists
More on "for" Loops
Deriving Recent Transactions
Creating Bars for our Chart
Populating the Chart with Values
Finishing the Chart Bars
Flexible & Expanded: Deep Dive
Adding a ListTile Widget
Improving the Overall Chart
Widgets & Configuring Widgets - Summary / Overview
Getting Started with Date Selection
Showing a DatePicker
Adding Transactions with a Date
Deleting Transactions & Using IconButtons
Final Polishing!
Wrap Up
Useful Resources & Links

Responsive & Adaptive User Interfaces and Apps

Module Introduction
What does "Responsive" and "Adaptive" Mean?
Examples: Where we could improve the App!
Calculating Sizes Dynamically
Working with the "textScaleFactor"
Using the LayoutBuilder Widget
Responsiveness
Controlling the Device Orientation
Rendering Alternative Landscape Content - 1
Finishing Landscape Mode
Showing Different Content Based on Device Orientation
Respecting the Softkeyboard Insets
Using the Device Size in Conditions
Managing the MediaQuery Object
Checking the Device Platform
Using Cupertino (iOS) Widgets
Using the SafeArea
More Cupertino Styles
Using Cupertino Buttons
Creating Custom Adaptive Widgets
Adaptive Widgets
Wrap Up
Useful Resources & Links

Widget & Flutter Internals - Deep Dive

Module Introduction
The Problem At Hand
Widget Tree & Element Tree - What, Why and How?
How Flutter Rebuilds & Repaints the Screen
How Flutter Executes build()
Using "const" Widgets & Constructors
Widgets, Elements, build()
Writing Good Code
Extracting Widgets
Using Builder Methods
Understanding the Widget Lifecycle
Calling super.initState() etc.
Understanding the App Lifecycle
Understanding Context
A Problem with Lists & Stateful Widgets
Understanding the Problem Root
Using Keys
Keys, Lists, Stateful Widgets
Wrap Up
Useful Resources & Links

Navigation & Multiple Screens [MEALS APP]

Module Introduction
Planning the App
Starting With The App - Adding Base Data
Creating a Grid & Working with Linear Gradients
Registering a Screen as the Main Screen
Styling & Theming
Navigating to a New Page
Passing Data via the Constructor
Using Named Routes & Passing Data With Named Routes
Screens & Navigation
Diving Deeper into Named Routes
Adding a Meal Model & Data
Selecting Meals for a Chosen Category
Displaying Recipe Items & Using Network Images
Finishing the Meal List Item
Navigating to the Meal Detail Page
onGenerateRoute & onUnknownRoute
More Navigation!
Finishing the Meal Detail Page
Adding a TabBar to the Appbar
Adding a Bottom TabBar
Adding a Custom Drawer
Adding Links to the Drawer
Tabs & Drawers!
Replacing Pages (Instead of Pushing)
Popping Pages & Passing Data Back
Replacing, Popping & Data
Adding Filter Switches
Adding Filtering Logic
Adding a "Mark as Favorite" Feature
A Problem!
Wrap Up
Useful Resources & Links

State Management [SHOP APP]

Module Introduction
Planning the App
Defining a Data Model
Working on the "Products" Grid & Item Widgets
Styling & Theming the App
Adding Navigation to the App
Why State Management? And what is "State" and "State Management"?
Understanding the "Provider" Package & Approach
Using the Right Provider Package Version
Working with Providers & Listeners
[DART DEEP DIVE] Inheritance ("extends") vs Mixins ("with")
Providing non-Objects
Listening in Different Places & Ways
State, State Management & The Provider Package/ Approach
Using Nested Models & Providers
Exploring Alternative Provider Syntaxes
Using "Consumer" instead of "Provider.of"
Local State vs App-wide State
Adding Shopping Cart Data
More on State Management & The Provider Package
Working with Multiple Providers
Connecting the Cart Provider
Working on the Shopping Cart & Displaying a Total
Displaying a List of Cart Items
Making Cart Items Dismissible
Adding Product Detail Data
Providing an Orders Object
Adding Orders
Adding an Orders Screen
Using a Side Drawer
Making Orders Expandable & Stateful Widgets vs Providers
Wrap Up
Useful Resources & Links

Working with User Input & Forms [SHOP APP]

Module Introduction
Snackbars & Undoing "Add to Cart" Actions
Showing Alert Dialogs
Adding a "Manage Products" Page
"Edit Product" Screen & A Problem
Using Forms & Working with Form Inputs
ListView or Column
Managing Form Input Focus
Multiline Inputs & Disposing Objects
Image Input & Image Preview
Submitting Forms
Validating User Input
Adding Validation to All Inputs
[OPTIONAL] Working with Regular Expressions
Saving New Products
Time to Update Products!
Allowing Users to Delete Products
Wrap Up
Useful Resources & Links

Sending Http Requests [SHOP APP]

Module Introduction
On-Device vs Web Storage
How to Connect Flutter to a Database
Preparing Our Backend
How To Send Http Requests
Sending POST Requests
Working with Futures in Dart
[DART DEEP DIVE] Futures & Async Code
Http Requests & Futures
Showing a Loading Indicator
Handling Errors Gracefully
Working with "async" & "await"
Fetching Data, initState & "of(context)"
How to Transform Fetched Data
Implementing Pull-to-Refresh
Updating Data via PATCH Requests
Utilizing Optimistic Updating
Creating Custom Exceptions & More Error Handling
A Challenge For You!
Updating the "Favorite" Status Optimistically
Storing Orders in the Web
Fetching Orders & Fixing an Issue
Using the "FutureBuilder" Widget & Improving the Code
Wrap Up
Useful Resources & Links

Adding User Authentication [SHOP APP]

Module Introduction
How Authentication Works
Prepare Backend
Adding the Auth Screen
Adding User Signup
Allowing Users to Log In
Handling Authentication Errors
Managing the Auth Token Locally (in the App)
Avoiding Issues with Provider Package
Using the "ProxyProvider" and Attaching the Token to Outgoing Http Requests
Adding the Token to All Requests
Connecting the "Favorite" Status to Users
Attaching Products to Users & Filtering By Creator
Attaching Orders to Users
Adding a Logout Functionality
Automatically Logging Users Out (After Some Time)
Automatically Logging Users In
Wrap Up
Useful Resources & Links

Adding Animations [SHOP APP]

Module Introduction
Animations From Scratch (Completely Manually Controlled)
Using the "AnimatedBuilder" Widget
Working with the "AnimatedContainer"
More Built-in Animation & Transition Widgets
Fading Loaded Images In (And Showing a Placeholder)
Adding a "Hero" Transition
Working with Slivers
Practice: Animating Order Boxes
Implementing Custom Route Transitions
Wrap Up
Useful Resources & Links

Using Native Device Features (Camera, Maps, Location, ...) [GREAT PLACES APP]

Module Introduction
Planning the App
PlaceList & Place Provider Setup
Adding the "Add Place" Screen & An Image Input
Using Image Picker & The Device Camera
Storing the Image on the Filesystem (on the Device)
Managing Data & Images via the Provider Package
Handling Errors
Testing on Real Devices
Preparing SQLite
Storing & Fetching Data with SQLite
Adding a Location Input & The "location" Package
Fetching the User Coordinates
Displaying a Static Map Snapshot
Rendering a Dynamic Map (via Google Maps)
Allowing Users to Pick a Location on the Map
Storing the Location in SQLite
Adding a "Place Detail" Screen & Opening the Map in "readonly" Mode
Wrap Up
Useful Resources & Links

Running Native Swift, ObjectiveC, Java or Kotlin Code

Module Introduction
Using a Proper Project Setup
Sending a Method Call from Flutter
Running Android Code
Running iOS Code
Wrap Up
Useful Resources & Links

Publishing to the App Stores

Module Introduction
Preparing the Code
Preparing the App Configuration
Preparing Third-Party Services
Adding Icons & Splash Screens
Publishing Android Apps
Publishing iOS Apps
Useful Resources & Links

Roundup & Next Steps

You did it!
Your Next Steps (To Become an Awesome Developer!)
How to Plan & Develop Successful Apps

Summary of the Course Update

What Changed? What's New? Why did I Update the Course?
Changes you should not miss
The [LEGACY] Sections

[LEGACY] Diving Into the Basics & Understanding Widgets

What does [LEGACY] mean?
Module Introduction
Creating a New Flutter Project
Exploring the Default Project Structure
Diving Into the "main.dart" File
Widgets in Flutter - Theory
Creating a Widget
Understanding Classes & Constructors
Adding the "Build" Method
Adding the Scaffold
Diving Deeper Into the Syntax
Adding Cards & Images
Diving Into the Official Docs
Adding a Button
Creating a Stateful Widget
Managing Data Inside Stateful Widgets
Adding the Stateful Widget & Lists
Splitting our Code Up
Creating the "Product Manager" Widget
Passing Data to Stateful Widgets
initState() and super.initState()
Understanding Lifecycle Hooks
Diving Into Google's Material Design
Understanding Additional Dart Features
Passing Data Up
Understanding "const" & "final"
Dart Types, Syntax & Core Features
Wrap Up
Useful Resources & Links

[LEGACY] Debugging Flutter Apps

Module Introduction
Fixing Syntax Errors
Understanding Runtime Errors & Runtime Messages
Dealing with Logical Errors
Using Breakpoints
Debugging the User Interface
More About Visual Helpers
Wrap Up
Useful Resources & Links

[LEGACY] Running the App on Different Devices

Testing Devices
How to Start the App
Testing a Real Android Device
Using the iOS Emulator & a Real Device
Running the App - Detailed Instructions
Using the Native IDE Consoles

[LEGACY] Working with Lists & Conditionals

Module Introduction
Creating Scrollable Lists with "ListView"
Optimizing the List Loading Behaviour
Rendering Content Conditionally
Alternative Approaches to Render Content Conditionally
One Important Gotcha
Wrap Up
Useful Resources & Links

[LEGACY] Navigation

Module Introduction
Adding Multiple Pages to our App
Adding Buttons
Implementing a Basic Navigation
Improving the Look of the Product Page
Passing Data Around ("Pushing" the Page)
Passing Information Back ("Popping" the Page)
Adding Reactions Upon Button Pressing
Adding the Basic Authentication Page & Replacing Routes
Adding the Sidedrawer & the Hamburger Icon
Understanding Stack Based Navigation
Adding Tabs
Finishing the Tab Navigation
Adding Named Routes
Parsing Route Data Manually
Lifting State Up
Using the Named Routes
Working with "onUnknownRoute" as Fallback
Adding Alert Dialogs
Showing a Modal
Wrap Up
Useful Resources & Links

[LEGACY] Handling User Input

Module Introduction
Saving User Input
Configuring Text Fields
Styling Text Fields
Fixing a Bug & Adding a Button
Using our Form to Create a New Product
Improving the Style of our Form
Fixing a Tiny "Error"
Adding a Switch
Wrap Up
Useful Resources & Links

[LEGACY] Diving Deeper Into Widgets

Module Introduction
Exploring the Widget Catalogue
There's More Than One Widget For The Job
The Most Important Widgets
Working with Text & Fonts
Working with Rows
Decorating Boxes & Styling a Price Tag
Setting Borders
Understanding "Expanded" & "Flexible"
Adding a Background Image
Centering Input Fields
Adding Icons to our Sidemenu
Adding Icon Buttons
Outsourcing Code into Separate Widgets
Refactoring our Code
Creating a Standardized Tile Widget
Adding Separate Methods for Specific Widgets
Optimizing our Project
Responsive Design Problems
Adding Media Queries
Understanding Media Queries with ListView
Working with Themes
Listening to Touch Events with the Gesture Detector
Wrap Up
Useful Resources & Links

[LEGACY] Working with Forms

Module Introduction
Using the Form Widget
Adding Form Validation
Advanced Validation
A Note on the "Price" Input and the Usage of Commas/ Dots
Closing the Keyboard
Submitting Data
Outputting Lists of Products
Re-Using the Product Create Form
Setting Initial Values
Updating Products
Ensuring Input Visibility
Wrap Up
Useful Resources & Links

[LEGACY] Improving the App

Module Introduction
Improving the List Tile
Adding the Dismissible Widget
Deleting Products Upon Swipe
Restructuring the Code & Wrap Up
Useful Resources & Links

[LEGACY] Models & State Management

Module Introduction
What can be Improved?
Adding a Product Model
Creating a Scoped Model
Connecting the Scoped Model
Providing the Scoped Model
Viewing Single Products
Editing & Deleting Products with the Scoped Model
Finishing the Product Model
A Note on Immutability
Creating the Toggle Favorite Method
Working on the Favorite Feature
Adding "notifylisteners"
Finishing the Favorite Feature
Fixing a Bug related to the "Favoriting" Feature
Adding a User Model
MUST READ: Mixins & The Latest version of Dart
Using Mixins to Merge Models
Logging in with the Main & the User Model
Connecting Models & Sharing Data
MUST READ: Changing Mixins Syntax
Improving the Code & Fixing an Error
MUST READ: Unselecting the Product after Editing
Wrap Up
Useful Resources & Links

[LEGACY] Flutter & HTTP

Module Introduction
Understanding the Backend Setup
Sending a POST Request
Using the Response
Getting Data From a Server
Transforming & Extracting Response Data
Displaying a Loading Spinner
Finishing the Loading Spinner
Updating Products
Deleting Products
Using Pull to Refresh
Adding "fadein" to the Image Placeholder
Adjusting the Scoped Model & the Selected Product
Fixing the Product Selection
Handling Error Responses
Generic Error Handling
Adding "async" "await"
Improving our Code
Wrap Up
Useful Resources & Links

[LEGACY] Authentication

Module Introduction
How Authentication Works
Adding a "Confirm Password" Textfield
Implementing the Signup Functionality
Handling Errors
Adding a Spinner Whilst Signing Up
Adding the Signin Functionality
Refactoring our Code
Authenticating Requests with Tokens
Storing the Token on the Device
Signing Users In Automatically
Adding a Logout Button
Adding Autologout
Route Protection & Redirection
Fixing the Manual Logout
Time for a Quick Recap Regarding our Code Structure
Adding Optimistic Updating to Store the Favorite Status
Fetching the Favorite Status
Allow Editing for own Posts Only
Wrap Up
Useful Resources & Links

[LEGACY] Adding Google Maps to our App

Module Introduction
Using MapView with the latest Flutter Version
Unlocking the Required APIs
Requesting Permissions
Preparing our Text Form Field
Adding a Static Dummy Map
Sending a Request to Convert an Address to Coordinates
Adding Geocoding & Maps with Real Coordinates
Working on the Map Control
Storing Location Data in the Database
Fixing a Bug
Loading Location Data from the Backend
Updating an Existing Product's Position
Adding the Update Method for the Location
Adding the Location Package
Using the Location Package with Version >=1.4
Getting the User Location
Preventing Memory Leaks
Displaying the Address
Showing a Fullscreen Map
Wrap Up
Useful Resources & Links

[LEGACY] Accessing the Device Camera

Module Introduction
Adding an Image Picker Button
Adding the "Use Camera" & "Gallery" Buttons
Connecting the "Choose" Buttons to the Image Picker
Adding an Image Preview
Adding Text Editing Controllers
Setting Up Firebase Cloud Functions
Adjusting Firebase Functions (Fixing an Error)
Adding Server Side Code
Reading Incoming Files & Fields
Storing Data and Move it to a Temporary Storage
Deploying our Firebase Cloud Function
Configuring the Upload Request
Setting Headers to Add the Token
Fixing an Error
Fetching & Using Images
Previewing & Editing the Image
Adding the Image Upload Flow
Deleting Images When Deleting a Product
Wrap Up
Useful Resources & Links

[LEGACY] Adding Animations to our Project

Module Introduction
Adding Floating Action Buttons (FABs)
Adding Functionality to our Favorite Button
Working on the Contact Button
Animating the Contact Icon
Animating the Favorite Icon
Animating the Options Button
Fading the Password Field In & Out
Sliding the Password Field In & Out
Adding Hero Widgets
Adding the Sliver Effect
Adding Route Transitions
Wrap Up
Useful Resources & Links

[LEGACY] Polishing & Bugfixing

Module Introduction
Fixing an Autologout Bug
Fixing the Price Input in Landscape Mode
Fixing the Filtered Product Index
Fixing the Product Title Style & the Favorite Product Selection
Toggling the Favorite Status
Clearing All Products Before Fetching
Testing the iPhone & Fixing the Product Reset Logic
Adding Space on the Product Card
Using Flutter Analyze
Possible Code Restructurings
Managing Global Values
Testing the App on an Android Device
Testing the App on an iPhone & Fixing the European Decimal Comma
Useful Resources & Links

[LEGACY] Running Platform Specific Code

Module Introduction
Understanding Material Design & Cupertino
Detecting the Platform
Using Platform Specific Widgets
Adding a Platform Specific Theme
When Should we Use Platform Specific Themes?
iOS Support since Flutter 0.8.2
Wrap Up
Useful Resources & Links

Roundup

Bonus: More Content!

Screenshots

Flutter & Dart - The Complete Guide [2024 Edition] - Screenshot_01Flutter & Dart - The Complete Guide [2024 Edition] - Screenshot_02Flutter & Dart - The Complete Guide [2024 Edition] - Screenshot_03Flutter & Dart - The Complete Guide [2024 Edition] - Screenshot_04

Reviews

Alex
November 8, 2023
It was great! It was up to date, libraries and code examples were new and everything just worked. I learned a lot and I was happy with the exercises and the little homework assignments to make sure to use the things we covered in the previous lesson. The focus on learning more about the device services (maps, camera) and using Flutter was exactly what i was looking for.
Mohammad
November 8, 2023
Just learn this course very carefully, take note so that you can use it later, you will be able to make any app you want !
Abdelrahman
November 6, 2023
the content is really good but i feel its like its too much information specially for people who r just starting programming with flatter ...... i find many things easily for me just i studied programming languages before ..... but for new programmers i think its really hard to understand
Joseph
November 5, 2023
I found this course to be very informative and well organized. This was my first endeavor learning Flutter and I feel I have a good foundation to get started building my own apps.
Daniyal
November 3, 2023
It was completely amazing . I liked the way the course is structured and now I can say I have fundamental knowledge of Flutter + Dart.
Volker
October 31, 2023
Ich bin mit dem Kurs sehr zufrieden. Das Englisch ist sehr gut zu verstehen, der Aufbau ist logisch und auch wenn man meint, die Punkte schon zu kennen, kommen noch neue Informationen hinzu.
Chris
October 29, 2023
I have just started so I cant talk about content but he is very clear and concise in the explanations about Flutter so far so that has be thinking this course will be great
Marco
October 27, 2023
The teacher has in-depth knowledge of the subject. I'm not a native English speaker and he speaks slowly enough for me to understand. I highly recommend this course.
杨庆
October 27, 2023
After studying the entire course, I can have a preliminary understanding of the use of flutter and the understanding of third-party packages, but I still have no idea how to mix development with iOS native and put it on the app store.
Daniel
October 25, 2023
Great lecturer. Every decision made is explained well. Concepts are explained in necessary detail. The example projects are chosen extremely well and bit by bit introduce new features, patterns, and concepts.
DeepCube
October 25, 2023
Ottimo corso molto completo. Suggerirei l'aggiunta di contenuti un pò più avanzati o comunque un accenno iniziale, ad esempio su come sviluppare e pubblicare un package per flutter.
Rahul
October 24, 2023
Its a good course but could have been better imo, But its not at all for those people who don't have programming experience. Course is more practical oriented which is a plus point for sure. Please include things like.. dedicated proper sections for DART only, BLoC which is currently an industry standard, Working with Shared Preferences, in detail, HTTP Authentication non-firebase, Need more animation stuffs and most importantly some common problem solving topics like how to tweak app icons, working with splash screens, loader etc.
Dev
October 24, 2023
Max is nice teacher. I am gradual getting better. Isn't it nice? Course is well organized. Keep it up :)
Robert
October 21, 2023
Jasny skrupulatny przekaz nawet dla laika, natomiast zbyt wiele wykładów dążących do tego samego efektu różnymi sposobami, zamiast nauczyć najlepszej wersji sposobu do osiagniecia jakiegoś efektu.
Karam
October 21, 2023
The lecture about classes was a bit messy and cramped for such a fundamental concept, otherwise, great course

Coupons

DateDiscountStatus
7/3/201995% OFF
expired
11/14/201993% OFF
expired
5/4/202095% OFF
expired
5/20/202094% OFF
expired
7/12/202094% OFF
expired
12/17/202094% OFF
expired
2/13/202192% OFF
expired
7/20/202192% OFF
expired
7/27/202285% OFF
expired
10/8/202285% OFF
expired
11/2/202285% OFF
expired
12/20/202288% OFF
expired
2/21/202385% OFF
expired
3/29/202388% OFF
expired
5/1/202384% OFF
expired
8/13/202387% OFF
expired
10/5/202386% OFF
expired
3/21/202484% OFF
working

Charts

Price

Flutter & Dart - The Complete Guide [2024 Edition] - Price chart

Rating

Flutter & Dart - The Complete Guide [2024 Edition] - Ratings chart

Enrollment distribution

Flutter & Dart - The Complete Guide [2024 Edition] - Distribution chart
1708340
udemy ID
5/22/2018
course created date
6/9/2019
course indexed date
Bot
course submited by