Roadmap to learn Flutter
by Ahmad Hassan Nima

Roadmap to learn Flutter

Flutter is an open-source framework by Google for building beautiful, natively compiled, multi-platform applications from a single codebase. It is used to develop Android, iOS, Linux, Mac, Windows, Google Fuchsia, Web platforms, Embedded Devices from a single codebase.

No alt text provided for this image

Flutter Roadmap

Let’s discuss the roadmap that I am following in order to efficiently learn flutter development.

Dart Basics

what is a dart?

  • Dart is a ‘‘programming language’’ designed for client development, such as for the web and mobile apps.
  • It is developed by Google and can also be used to build server and desktop applications.
  • Dart is an object-oriented, class-based, garbage-collected language with C-style syntax.

We can do dart programming mainly in 3 paradigms/ways:

No alt text provided for this image

1 - Functional programming

Functional programming is a programming paradigm where programs are constructed by applying and composing functions.

A function is nothing but a block of organized, reusable code that is used to perform a single, related action.

2 - Object-Oriented Programming Object Oriented Programming (OOP)

is a programming paradigm that relies on the concept of classes and objects. It is used to structure a software program into simple, reusable pieces of code blueprints (usually called classes), which are used to create individual instances of objects. There are many object-oriented programming languages including JavaScript, C++, C#, JAVA, Dart, and Python.

some of the object-oriented programming Concepts are:

  • Classes and objects
  • constructors
  • Getters setters
  • Encapsulation, Polymorphism, Abstraction, Inheritance
  • Mixins
  • Abstract classes and interfaces etc.

3- Asynchronous programming

In sequential programming, synchronous operations tasks are performed one at a time, and only when one is completed, the following is unblocked. In other words, you need to wait for a task to finish to move to the next one.

In asynchronous operations, on the other hand, you can move to another task before the previous one finishes.

flutter basics

After some know-how of Dart, it’s time to dive into the world of Flutter .you should learn these things at this stage.

1 - Basics styling widgets

Basic widgets to style a static UI like Text, Container, Row, Column, Asset Image, Network Image, Stack, etc.

2 - Use of Assets

knowledge of how to use assets(image, video, SVG, images ) and how to add using pubspec.yaml file.

3 - Types Of Widgets

Know the difference between stateless and state full widgets.Knowledge of inherited widgets and data passing through inherited widgets.

4 - Navigation and Routing

How to navigate to next screen and back top previous using navigator.push( ) and navigator.pop( ).How to create routes.

5 - Design Guidelines

Flutter is a Google’s UI kit it follows Google’s material design guidelines so it's good if you have a sound knowledge of material design guidelines as well as Flat design guidelines by Apple inc for iOS apps.


Complete article soon ...


This article was written by Ahmed Hassan based on several sources such as Wikipedia and Medium




Dr. Bilal Rabah

Operational Research Specialist

3y

Good article... After this overview, you can think to be a Flutter Developer.

Like
Reply

To view or add a comment, sign in

More articles by Ahmad Hassan

Insights from the community

Others also viewed

Explore topics