Tutorialspoint

This Black Friday, Get lowest Price Ever! Use: BFS8

Flutter Advanced Course - Clean Architecture With MVVM

person icon Mina Farid

4.2

Flutter Advanced Course - Clean Architecture With MVVM

Become a job ready for flutter developer.

updated on icon Updated on Sep, 2024

language icon Language - English

person icon Mina Farid

English [CC]

category icon Development ,Mobile Development,Google Flutter

Lectures -172

Resources -13

Duration -19.5 hours

Lifetime Access

4.2

price-loader

Lifetime Access

30-days Money-Back Guarantee

Training 5 or more people ?

Get your team access to 10000+ top Tutorials Point courses anytime, anywhere.

Course Description

Flutter is defined as Google’s UI toolkit for building beautiful, natively compiled applications for mobile (Android, iOS ) desktop (Linux, Mac, Windows, Google Fuchsia) and the web from a single codebase. Since Flutter is cross-platform, you can use the same code base for your iOS and Android apps. This can definitely save you both time and resources. This course will help you to move from junior developer to experienced developer. You will have the knowledge of "How to implement a structured project?". Your code will be easily readable, maintainable and sustainable. You will get a real experience from a real project so you will start coding from scratch to build a clean architecture project with MVVM. You will build the presentation layer, data layer, domain layer and application layer step by step. This architecture is designed to make it easier to create stable apps even when outer elements such as UI, databases, or external APIs are always changing. It’s essentially a collection of best practice design principles that help you keep business logic, or domain logic, together and minimize the dependencies within the system. After completing this course you can reuse the source code of this course and customize it to build your clean architecture with MVVM project in a professional way.  

Goals

  • Clean Architecture Design Pattern

  • MVVM - Model - View - View Model Pattern

  • ViewModel Inputs and Outputs

  • Base ViewModel and Base UseCase

  • Application Layer - Dependency Injection, Routes Manager and Application class

  • Application Layer - Extensions and Shared Functions

  • Data Layer - Data Sources (Remote Data Source/ Local Data Source)

  • Data Layer - API Service Client (Same as Retrofit in Android)

  • Data Layer - Calling APIs (Remote Data Source)

  • Data Layer - Adding Logger Interceptor

  • Data Layer - Caching API responses (Local Data Source)

  • Data Layer - JSON Serialization and Annotations

  • Data Layer - Repository Implementation

  • Data Layer - Mapper (Converting responses into Models)

  • Data Layer - Mapper (Using domain Concept)

  • Data Layer - Applying Null Safety

  • Data Layer - Creating Mock APIs (Stub APIs)

  • Domain Layer - Models

  • Domain Layer - Repository Interfaces

  • Domain Layer - UseCases

  • Domain Layer - Either Concept (Left - Failure) / (Right - Success)

  • Domain Layer - Data Classes

  • Presentation Layer - UI (Splash - Onboarding - Login - Register - Forgot Password - Main - Details - Settings - Notification - Search))

  • Presentation Layer - State Renderer (Full-Screen States - Popup States)

  • Presentation Layer - State Management (Stream Controller - RX Dart - Stream Builder)

  • Presentation Layer - Localisations (English - Arabic), (RTL - LTR)

  • Presentation Layer - Assets Manager (Android and Ios Icons and Image sizes)

  • Presentation Layer - (Fonts - Styles - Themes - Strings - Values - Colors) Managers

  • Presentation Layer - Using JSON Animations

  • Presentation Layer - Using SVG images

  • Using 18 Flutter Packages

  • Getting Device Info (Android - Ios)

  • Using Abstract classes

Prerequisites

  • Dart and Flutter Knowlege is a MUST

  • Install Android Studio or Visual Studio and have Flutter SDK ready

Flutter Advanced Course - Clean Architecture With MVVM

Curriculum

Check out the detailed breakdown of what’s inside the course

Introduction
3 Lectures
  • play icon About the Course 02:23 02:23
  • play icon Content of the Course 07:58 07:58
  • play icon Who Can Attend this Course? 01:06 01:06
Presentation Layer - Resources Manager
16 Lectures
Tutorialspoint
Presentation Layer - Splash Screen
5 Lectures
Tutorialspoint
Presentation Layer - OnBoarding Screen
8 Lectures
Tutorialspoint
Presentation Layer - MVVM
7 Lectures
Tutorialspoint
Data / Domain layers - Clean Architecture Design Pattern
27 Lectures
Tutorialspoint
Presentation Layer - Login Flow
11 Lectures
Tutorialspoint
Application Layer - Dependency Injection
4 Lectures
Tutorialspoint
Presentation Layer - State Renderer
22 Lectures
Tutorialspoint
Presentation Layer - Handling Pre Login Flow
3 Lectures
Tutorialspoint
Assignment #1 - Forgot Password Flow
2 Lectures
Tutorialspoint
Assignment #2 - Adding Success State Renderer
2 Lectures
Tutorialspoint
Data / Domain Layers - Registration Flow
2 Lectures
Tutorialspoint
Presentation Layer - MVVM - Register Flow
20 Lectures
Tutorialspoint
Presentation Layer - Main Flow
3 Lectures
Tutorialspoint
Data / Domain Layers - Home Flow
8 Lectures
Tutorialspoint
Presentation Layer - MVVM - Home Flow
9 Lectures
Tutorialspoint
Assignment #3 - Refactor Home
2 Lectures
Tutorialspoint
Data Layer - Caching (Local Data Source)
4 Lectures
Tutorialspoint
Assignment #4 - Store Details Flow
2 Lectures
Tutorialspoint
Presentation Layer - Setting Screen
2 Lectures
Tutorialspoint
Presentation Layer - Localisation
7 Lectures
Tutorialspoint
Source Code
1 Lectures
Tutorialspoint
Q&A
1 Lectures
Tutorialspoint

Instructor Details

user profile image

Mina Farid

Course Certificate

Use your certificate to make a career change or to advance in your current career.

sample Tutorialspoint certificate

Our students work
with the Best

Related Video Courses

View More

Annual Membership

Become a valued member of Tutorials Point and enjoy unlimited access to our vast library of top-rated Video Courses

Subscribe now
Annual Membership

Online Certifications

Master prominent technologies at full length and become a valued certified professional.

Explore Now
Online Certifications

Talk to us

1800-202-0515