Mô tả

This comprehensive course is designed to take you from a complete novice to a confident Flutter developer, capable of building full-stack apps using clean code techniques.

I believe in laying strong foundations for learning. That's why I start by teaching you Dart, Flutter's programming language, independently, without using Flutter at all. By mastering Dart first, you'll gain a solid understanding of its syntax, concepts, and principles, setting you up for success throughout the rest of the course.

Once you've mastered Dart, we dive headfirst into the world of Flutter. Throughout the course, we'll cover various aspects of Flutter, such as widgets, layouts, responsive layouts, state management using both - Provider and Riverpod and much more. Navigation is a crucial aspect of any app. I leave no stone unturned to explore Navigator 1.0 and Navigator 2.0, helping you understand the best practices for smooth navigation within your apps.

Flutter is an incredibly powerful framework, and I want you to harness its full potential. That's why I also provide you with a brief overview of the inner workings of Flutter, including how it handles rendering, state management, and other "behind-the-scenes" magic. This knowledge will set you apart as a truly proficient Flutter developer.

Learning by doing is the best way to master any skill. Thus, in this course you'll build several exciting app projects like Currency Converter, Realtime Weather Forecast, Shopping App, Responsive Google Search Clone, Voice Assistant App powered by ChatGPT and Dall-E and a Full Stack Reddit Clone using Firebase backend (Know more about each of the apps we build in the free video previews)!

The approach to teaching goes beyond just giving you ready-made solutions. I firmly believe in empowering you to learn by teaching you various aspects of Flutter, such as Animations and Automated Testing, independently of each other. This will enable you to understand the underlying principles and apply your knowledge creatively in various scenarios, not just in building the apps we build.

I understand that learning a new language and a new framework like Flutter can be challenging, even for experienced developers. But don't worry about it! This is a zero-to-hero Flutter course, meaning we start from scratch and take you on an incredible journey to become a confident Flutter developer. You'll go from knowing nothing about Dart, Flutter (or even programming) to becoming proficient in developing clean, efficient and powerful apps.

So, if you're read to empower yourself with valuable skills that will open doors to countless opportunities in the world of app development, enrol now and let's begin this thrilling adventure together!

Bạn sẽ học được gì

Yêu cầu

Nội dung khoá học

24 sections

Introduction

1 lectures
Introduction
02:13

Introduction To Dart

3 lectures
Introduction
01:16
What is Dart?
01:35
Dart SDK
03:05

Operators, Comments & Variables

8 lectures
Print Statement
03:02
Operators
04:37
Comments
02:54
Variables
31:37
var, const and final Variables
06:01
final vs const variables
04:14
Optional/ Nullable Variables
12:08
Dart Basics: Quiz 1
5 questions

Control Flow

11 lectures
If Condition
18:06
Ternary Conditions
02:22
Switch Statement
05:50
Exercise 1
08:14
For Loop
13:23
While Loop
03:08
Do While Loop
03:33
continue keyword
02:59
Exercise 2
00:18
break keyword
01:17
Dart Basics: Quiz 2
3 questions

Functions

11 lectures
Functions
08:58
Returning 2 Values from a Function (Records)
03:10
Patterns
01:49
Returning Nullable Variables/Values
02:02
Function Positional Arguments & Global Variables
07:56
Function Named Arguments
06:59
Named Records
02:18
Returning Functions from Functions
01:52
Arrow Function
00:52
Anonymous Functions
00:05
Dart Basics: Quiz 3
6 questions

Classes

15 lectures
Classes
20:09
Constructor
04:51
this keyword
00:44
Positional Constructor Arguments
06:04
Immutable Classes
02:36
Named Constructor Arguments
00:58
Classes Terminology
01:11
Private Variables
04:19
Getters
03:40
Setters
01:56
Note About Setters
00:18
Static Variables
04:59
Static Functions
00:42
When to use static keyword?
02:00
Dart Basics: Quiz 4
5 questions

Object Oriented Programming (OOP)

11 lectures
Inheritance
18:48
implements keyword
10:15
Abstract Classes
04:49
Object Oriented Programming (OOP) in Dart
02:06
Polymorphism
03:43
Abstraction
02:19
Encapsulation
01:59
OOP Brief
01:03
Mixins
07:26
Class Modifiers
07:10
Dart Basics: Quiz 5
3 questions

Lists, Maps & Enums

6 lectures
Lists
42:13
Sets
02:34
Maps
24:53
Enums
07:50
Enhanced Enums
04:40
Dart Basics: Quiz 6
5 questions

Asynchronous Programming

4 lectures
Exception Handling
08:41
Futures (Promises)
44:45
Streams
23:16
Dart Basics: Quiz 7
5 questions

More on Records, Patterns & Extensions

4 lectures
Creating Records
04:10
Patterns & Pattern Matching
12:14
Extensions
06:13
Dart Basics: Quiz 8
4 questions

Flutter Installation

11 lectures
Introduction
00:21
Installing Flutter
09:24
Installing Android Studio & Configuring for Android
04:37
Installing Xcode & Configuring for iOS
02:10
Installing VS Code
01:37
Exploring VS Code
04:16
Creating Flutter Project
01:46
Exploring Folders Flutter Creates
09:01
Increasing Font Size in VS Code
01:31
Highlighting Code in VS Code
01:37
Running Flutter App
12:33

Flutter Basics

18 lectures
Writing First Flutter Code!
01:23
Importing Packages and material.dart
02:43
runApp function in Flutter
02:07
What are Widgets?
00:46
Text Widget
16:11
Types of Widgets
01:58
What is State in Flutter
01:26
What is Stateless Widget in Flutter?
12:54
Material & Cupertino Design
02:15
What is MaterialApp in Flutter?
04:01
What is Scaffold in Flutter?
04:15
Center Widget
04:53
Widget Tree
02:41
Splitting & Extracting Widgets
05:28
What is BuildContext?
02:49
Importing Files & Magic of Flutter Extension
02:26
Relative Importing
02:42
Flutter Basics: Quiz 1
5 questions

Currency Converter App

27 lectures
Breaking Down The Currency Converter App
00:46
Column Widget
08:36
ColoredBox Widget
00:51
Color Class
03:52
TextStyle
07:29
Colors
02:26
TextField Widget
42:11
Why Build Function Should Contain NO Complex Tasks
00:57
Changing Keyboard Type For TextField Input
04:14
Padding Widget
06:39
Container Widget
01:10
Padding vs Margin - The Difference
05:54
TextButton Widget
05:39
Print Statement & Warnings (Flutter Lints)
05:14
TextButton Widget contd.
14:39
ElevatedButton Widget
07:09
Shortening the ButtonStyle!
03:49
AppBar Widget
06:18
Understanding the need For StatefulWidget
18:00
StatefulWidget
14:50
Build Function Can Be Called How Many Times?
02:32
setState
07:27
Handling Edge Cases
06:38
CupertinoApp & iOS Styled Widgets
16:55
initState and dispose
02:51
Recap & Widgets LifeCycle
10:18
Flutter Basics: Quiz 2
4 questions

Weather App

29 lectures
Weather App Demo
01:12
Analysing the default Flutter Code
07:27
Weather App Setup
08:14
GestureDetector and InkWell Widget
02:35
IconButton Widget
00:54
Planning the Body of Weather App using PlaceHolder Widget
04:05
Card Widget
11:12
ClipRRect Widget
01:28
Backdrop and ImageFilter Widget
05:54
Text For Weather App
04:15
Row Widget
09:33
SingleChildScrollView Widget
05:45
Working on Additional Info Section
11:34
Passing Arguments Using Constructor
09:54
http plugin in Flutter
03:11
OpenMapWeather API
06:42
Handling Future in initState
03:08
Extracting Data from API in Flutter
13:17
Displaying Loading Indicator
05:33
FutureBuilder Widget
12:33
Extracting Data From AsyncSnapshot
10:56
for loop in Flutter UI
09:15
ListView.builder Widget
10:42
Date Formatting using intl
14:09
Switching Themes
01:02
Layout Principle In Flutter Explained
05:22
Flutter Behind The Scenes, 3 Trees & BuildContext
22:17
Flutter Basics: Quiz 3
5 questions
Flutter Advanced: Quiz 1
3 questions

Shopping App

31 lectures
Shopping App Demo
01:17
Creating Shop App Project
02:26
Adding Custom Fonts
12:02
Theming, Color Scheme
03:21
Creating a Header (SafeArea Widget)
07:03
Expanded Widget in Column (For TextField Widget)
14:50
Chip Widget
16:00
How Theming Works Behind the Scenes (InheritedWidget)
07:19
Selecting Filter contd…
01:04
Adding Images and Product Dummy Data
06:31
Displaying Products List on Home Page (Image Widget)
24:39
Designing Product Details Page (Spacer and Flex Widget)
27:42
Navigation & Routing
10:46
How Navigator Works Behind The Scenes? (And State Management)
10:39
BottomNavigationBar Widget
09:11
IndexedStack Widget
02:48
Designing Cart Page (ListTile Widget)
10:39
State Management with Provider, SnackBar
28:41
State Management Note
00:17
Why I Don't Recommend Using GetX?
06:59
Dialogs in Flutter
08:58
Provider Extension Methods on BuildContext
02:51
Provider State Management Recap
06:45
Responsive UI in Flutter (GridView, MediaQuery)
23:19
InheritedWidget vs InheritedModel
02:48
Responsive UI in Flutter (LayoutBuilder Widget)
07:57
MediaQuery vs LayoutBuilder
03:22
Challenge: Make Weather App Responsive
00:24
Flutter Widgets Sizing Summary
01:05
Flutter Basics: Quiz 4
7 questions
Flutter Advanced: Quiz 2
2 questions

Google Search Clone with API Integration

15 lectures
Demo
01:20
Important Note
00:43
Creating & Setting Up Flutter Project
02:36
Creating Responsive Layout
06:46
Main Screen AppBar
10:12
Main Screen Body
22:24
Main Screen Footer
07:02
Making the Main Screen Responsive
09:11
Search Results UI
29:50
Getting API & Context Key
03:14
Building Search Results UI
27:09
Adding Pagination
08:04
Responsive Search Results UI
03:51
Changing Title Of Website
02:03
Making Some Minor Changes
03:22

Beautiful Login UI

7 lectures
Introduction
00:06
Project Setup
01:53
Adding Text & Image
02:51
Outlined Buttons
09:42
TextFields
05:37
Gradient Buttons
06:20
Conclusion
00:05

Voice Assistant App Powered By ChatGPT & Dall-E

12 lectures
Introduction & Demo
01:29
Setting up Flutter Project
05:20
Virtual Voice Assistant UI
26:09
Flutter Speech To Text
12:09
UPDATE in OpenAI API Billing
01:45
OpenAI API
06:59
ChatGPT API Integration
14:43
AI Image Generation using Dall-E API
03:43
Flutter Text to Speech / Flutter TTS
07:31
Toggling Widgets’ Visibility
06:16
Adding Animations
05:46
Conclusion
00:31

State Management with Riverpod & Code Generation

31 lectures
Introduction
00:16
Why should we use Riverpod?
00:16
Getting Started with Riverpod
00:23
ProviderScope
01:45
Provider
03:52
Reading Providers using ConsumerWidget
02:22
Reading Providers using Consumer
01:30
ConsumerWidget vs Consumer
02:50
ref.watch vs ref.read
02:13
StatefulConsumerWidget
02:26
StateProvider
07:05
StateNotifier & StateNotifierProvider
18:15
Select Property
04:06
ChangeNotifier & ChangeNotifierProvider
05:53
FutureProvider
05:44
AsyncValue
08:02
ProviderRef
06:27
StreamProvider
04:54
Modifiers
00:24
.family
06:55
.autoDispose
03:31
Recap of all Providers
02:11
Ref
02:01
Useful Methods on ProviderRef
03:21
ProviderObserver
05:07
Limitations of Riverpod
01:38
Flutter Riverpod Snippets (VS Code Extension)
01:23
Riverpod Generator + Annotation
07:31
Limitations of Riverpod Generator (till now)
01:23
New in Riverpod!
00:05
Create Custom Code Generator in Flutter
48:25

Full Stack Reddit Clone

46 lectures
Introduction
01:27
Project Setup
04:05
Folder Structure Explanation
03:52
Login Screen UI
15:01
What is Firebase?
01:57
Firebase Setup
11:39
Google Sign In Firebase Authentication
29:00
Storing Data to Firebase
16:05
Efficient Exception Handling Technique
16:47
Storing Data to Provider
14:37
Route Management
04:25
Firebase State Persistence
18:25
Home Screen AppBar UI
03:06
Community List Flutter Drawer
08:29
Create Community Screen UI
07:38
Creating Communities and Storing to Firebase
21:03
Displaying User Communities
12:51
Community Profile UI
22:47
Mod Tools UI
08:09
Edit Community Screen UI
20:13
Editing Community
23:49
Searching Communities
15:51
Logging User Out
02:42
User Profile Drawer UI
05:39
Joining & Leaving Communities
09:54
Adding Moderators
16:48
User Profile UI
06:48
Edit User Profile
16:47
Toggling Theme
13:58
Bottom Nav Bar
06:40
Add Post Screen UI
07:05
Sharing Link, Image & Text Only Posts
35:00
Fetching Feed Posts
35:21
Deleting Posts
05:09
Upvoting/Downvoting Posts
07:55
Moderator Option on Posts
06:15
Displaying Posts on User Profile
09:38
Comments on Posts
29:03
Updating User Karma Based on Activities
10:31
Awarding the Post/User
21:11
Firebase Login as Guest
04:00
Restricting Guest Features
14:43
Running on Web - Flutter Responsive UI
29:46
Note About GoRouter in Flutter
00:17
[OPTIONAL] GoRouter - Navigator 2.0
11:27
Conclusion
00:14

Animations

21 lectures
Introduction & Prerequisites
00:35
Code Explanation of Color Palette
06:51
Demo of Animated Color Palette
00:35
Implicit Animation Example 1: Coding Animated Color Pallete
10:19
Demo of Animated Shopping App Cart Button
00:57
Implicit Animation Example 2: Coding Animated Shopping App Cart Button
12:33
ImplicitlyAnimatedWidget
02:03
Implicit Animation Example 3: TweenAnimationBuilder
21:46
Recap: Implicit Animations
01:37
Explicit Animations
01:04
Login Animation
14:01
Recap Part 1: Login Animation Till Now
02:27
Login Animation Slide Contd.
14:37
List Animation (Staggered Animations)
14:47
Recap: Interval Explanation
02:40
Loading Animation
08:58
Recap: Explicit Animations
01:04
Implicit vs Explicit Animations
02:00
Page Route Animations w/ Explicit Animations
26:05
Custom Painter & Animations
19:18
Recap: Custom Painter
03:11

Bloc State Management + BLoC Architecture

12 lectures
Before Starting This Section...
00:39
Introduction
00:30
Project Setup + Bloc Installation
02:55
State Management with Cubit
26:59
State Management with Bloc
19:10
Similarity between Bloc & Cubit
00:30
More on Cubits
21:40
More on Bloc
44:32
BlocObserver
04:37
BLoC Architecture/Pattern
29:09
BLoC Pattern Recap
03:18
Is BLoC unnecessary work?
00:38

Flutter Automated Testing

8 lectures
Introduction To Testing
02:36
Unit Test Basics & Writing Testable Code: Counter App
31:06
Unit Test Mocking & Stubbing: API App
33:02
Widget Test: Counter App
17:19
Widget Test: API App
12:49
Widget Test: Animations App
15:58
Integration Test
17:05
Testing Firebase Apps
00:22

[EXTRA] Image Editing App without Plugins!

17 lectures
Demo
04:30
Setting Up The Project
03:16
Picking Image from Gallery
06:28
Adding New Text UI
10:29
Adding New Text Logic
15:33
Creating an AppBar
07:58
Selecting Text
02:23
Changing Text Colour
02:46
Increasing Font Size
01:25
Decreasing Font Size
00:31
Aligning Texts
01:33
Bolding Texts
01:12
Italic Text
01:09
Adding Lines for Text
02:59
Deleting Text
02:10
Saving Image to Gallery
12:50
Conclusion
00:46

Đánh giá của học viên

Chưa có đánh giá
Course Rating
5
0%
4
0%
3
0%
2
0%
1
0%

Bình luận khách hàng

Viết Bình Luận

Bạn đánh giá khoá học này thế nào?

image

Đăng ký get khoá học Udemy - Unica - Gitiho giá chỉ 50k!

Get khoá học giá rẻ ngay trước khi bị fix.