Tutorialspoint

Flutter Advanced Course - Clean Architecture With MVVM

person icon Mina Farid

Flutter Advanced Course - Clean Architecture With MVVM

Become a job ready flutter developer.

updated on icon Updated on Sep, 2023

language icon Language - English

person icon Mina Farid

architecture icon Google Flutter,Android Development,IOS Development,Mobile Apps,Mobile Development

price-loader

30-days Money-Back Guarantee

Training 5 or more people ?

Get your team access to 19,000+ top Tutorialspoint courses anytime, anywhere.

Course Description

Flutter is defined as the 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 app. 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 that you will start coding from scratch to build clean architecture project with MVVM. You will build 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 on it to build your clean architecture with MVVM project in a professional way.  

Goals

What will you learn in this course:

  • 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 Retorfit in Android)

  • Data Layer - Calling APIs (Remote Data Source)

  • Data Layer - Adding Logger Interceptor

  • Data Layer - Caching APIs 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 toDomain 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 Concepts (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 Images 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

What are the prerequisites for this course?

  • 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
3 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

User your certification to make a career change or to advance in your current career. Salaries are among the highest in the world.

sample Tutorialspoint certificate

Our students work
with the Best

Feedbacks

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
People having fun around a laptop

Online Certifications

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

Explore Now
People having fun around a laptop

Talk to us

1800-202-0515