Skip to content

omarmeciry21/Flutter-Roadmap

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 

Repository files navigation

A Roadmap for developing mobile apps using Flutter

Flutter Dash Character: we are very excited to have you on board!

This roadmap was created for the Flutter committee in IEEE Mansoura Computer Society Chapter by Omar Nabil Elmesiry, head of the committee. I hope you get the most benefit from it. Also, I would like to thank Code2Start channel very much for the amazing content provided that I built most of the roadmap on. Don't waste any time, let's get started!

Objectives:

The main goal for this committee is to prepare committee members for being able to work as a Flutter Developer, either in a company or as a freelancer. In order to achieve this main goal, we have to the following objectives to focus on:

  • Building active cooperative environment that enables everyone to communicate his/her ideas, opinions, work, or anything the member would like to share in a professional formal manner.
  • Building active individuals that have advanced public speaking skills, advanced researching and self learning skills, and advanced writing skills, especially when writing about projects or technical concepts.
  • Advancing in basic programming concepts, OOP for example, and essential methodologies such as Clean Code.
  • Advancing in basic and intermediate flutter concepts that are essential for building full simple and intermediate mobile apps.
  • Introduction to some advanced software development concepts such as Clean Architecture and Design patterns.
  • Building projects portfolio from different projects starting from the advanced level, some of the projects will be as individuals and others will be in teams.

Levels:

  • Beginner: Dart
  • Intermediate: Flutter
  • Advanced: Practical Experience in Flutter
  • Advanced Software Development

Beginner: Dart

Dart by Google

Objectives:

  • Learning concepts related to basics of programming, such as: compiler, IDE, packages, libraries.
  • Having a good background about Flutter and Dart.
  • Learning Dart Programming language basics, common data structures, OOP, exception, and Futures.
  • Solving a lot of programming problems using Dart.
  • Learning about widgets, state, stateful & stateless widgets, and some common widgets.

Weeks:

Intermediate: Flutter

Flutter by Google

Objectives:

  • Learning more advanced Flutter widgets, such as GridView and ListView.
  • Gaining very good practical experience with UI coding in Flutter.
  • Learning about pub.dev, how to add and use packages.
  • Learning how to use Git & Github as a Version Control System.
  • Learning how to use APIs using https package.
  • Learning how to store data locally using sqflite package.
  • Learning about common ways to create Animations in Flutter.

Weeks:

Final Project: Intermediate Level

First Project (Individuals)

Second Project (Groups)

Advanced: Practical Experience in Flutter

Flutter by Google

Objectives:

  • Advancing in UI coding & using APIs in applications.
  • Learning about Firebase services and how to use Firebase Authentication, Firebase Storage, Firebase Firestore.
  • Learning how to achieve State Management in your application using provider package.
  • Learning about Clean Code and SOLID Principles.

Weeks:

Final Projects: Advanced Level

To be added soon, or in the coming versions from the roadmap. If you are on GitHub, please check the repository forks for the newer versions.

Advanced Software Development

To be added soon, or in the coming versions from the roadmap. If you are on GitHub, please check the repository forks for the newer versions.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published