Roadmap To Become A Flutter Developer (Resources for Beginners)

Flutter roadmap

Hello Everyone, This article is inlined for those who are keen to start with flutter, A roadmap for beginners to learn gradually from all the necessary resources.

What is Flutter?

Flutter is Google’s UI toolkit for building beautiful, natively compiled applications for mobile, web, and desktop from a single codebase.

Introductory to flutter is in best summarised in below-mentioned videos;

Why Flutter??

We already know there are a lot of frameworks out there that provide the cross-platform functionality then what makes flutter standalone in this rat race?

Fast Development

Flutter’s hot reload helps you quickly and easily experiment, build UIs, add features, and fix bugs faster. Experience sub-second reload times, without losing state, on emulators, simulators, and hardware for iOS and Android. Learn more

Expressive, beautiful UIs

Delight your users with Flutter’s built-in beautiful Material Design and Cupertino (iOS-flavor) widgets, rich motion APIs, smooth natural scrolling, and platform awareness. Browse the widget catalog

Native Performance

Flutter’s widgets incorporate all critical platform differences such as scrolling, navigation, icons and fonts to provide full native performance on both iOS and Android. Examples of apps built with Flutter

Check out what Flutter is capable of

Here are the showcases of flutter apps that developers around the world have built.

What to Start With First?

Flutter is fast and easy, If you are familiar with java or any object-oriented language you are good to go but I strongly recommend that you should have the basic knowledge of Dart.

These are some videos that you might find helpful to watch.

Smartherd
freeCodeCamp.org
Tensor Programming
M T E C H V I R A L

For those who are not into watching videos

What make dart so quintessential and why flutter use it?

Why Flutter Uses Dart?

How Does Flutter work under the hood?

Your dart code is directly compiled to native using AOT (Ahead of time ) compilation because iOS doesn’t allow dynamic compilation.

To know more check out these resources below:

Flutter is fast and easy to use, now let's check out how we can install it.

How to Install Flutter?

Here’s the link to the developer docs where you can start to install the flutter in the OS you have.

Here are also some articles on Windows, Mac, and Ubuntu that might help.

Have you struck while installing flutter?

If you have any problems with installing flutter and flutter not working, those are some of the issues that have occurred.

Some common issues while installing flutter.

Every day’s a snow day in Santa’s Village! Come and play all December long

Set up an editor for Flutter

Create your flutter project

To create flutter project

flutter create <project-name>

or you can use the IDE (Intellij, Android Studio, etc)

Project overview

When you create the flutter app you will see these files and folders, Most of the code is written in dart in lib folder and when In case of the native requirement android and ios are required.

https://dev.to/jay_tillu/flutter-project-structure-1lhe

An article by Jay Tillu explaining about the project structure.

Run your first app

or you can use

To run the your first app

flutter run

and … and .. and

Have got excited when you first app launches (Technically it's not yours, Code was already there 😜 ). I got excited too 🎉.

When you create your flutter app you will see there is already code for a counter app.

When you run the code, you will see this. This is a simple counter application where you have a FAB(FloatingActionButton) and Text which indicate how many times the FAB has been pressed.

Widgets in flutter

If you see the code you will see StatefulWidget and StatelessWidget. Before we dive into that let's understand what is a Widget in a flutter.

Basically, everything you see in your flutter app is a widget.

I find this explanation very accurate about “What is a Widget in Flutter”

There’s also a youtube playlist (Widget of the week )provided by the Flutter team that only talks about Widgets in flutter.

Now

What is a Stateful and Stateless Widget?

In Stateless Widget, all of its properties are immutable which means a StatelessWidget will never rebuild by itself (but can from external events) but a StatefulWidget can.

“Flutter: Stateful vs Stateless Widget” by

Let's create your first flutter app

Google already provides a Codelab where you can learn from scratch that how to build your very first flutter app.

“Build a Flutter app from scratch” by

How to create UI in flutter?

To build the UI in a flutter, you need to get a basic understanding of the layouts and how to work with them.

There's also a great article on “Flutter layout Cheat Sheet” by

.

How to add interactions in your app?

In flutter, you cannot just assign a value and leave it

Example

String value="Hello";------------------------------
Text(value);
---SOMEWHERE IN THE CODE------onTap(){value="How are you?";}

if you think the text is going to change then you are wrong 🙅‍♂️ , you will have to use setState().

onTap(){setState({value="How are you?";});}

Adding setState() will rebuild the widget and display the change.

I would definitely ask you to follow up with the official documentation of flutter regarding the development

Everything in flutter is a Widget, you can create any custom widget on your own, but there are already defined widget by flutter.

JSON Parsing in Flutter

“Parsing complex JSON in Flutter ” by

“Working with APIs in Flutter” by

“Handling Network Calls like a Pro in Flutter” by

Use Database persistence in Flutter

SQLite

SharedPreferences

Working with firebase

Flutter Firebase by Raja Yogan

Other resources to learn Flutter

Here are some of the resources that other developers and the Flutter team have provided by giving their hearts-in to flutter:

“Resources to learn Flutter” by

“Free resources to learn and advance in Flutter” by

“Flutter Tutorial for Beginners using Dart: Develop Android and iOS mobile app ”by Smartherd

“Flutter Tutorials ” by M T E C H V I R A L

“Flutter ” by Raja Yogan

“My Favourite List of Flutter Resources” by

Q/A regarding Flutter

“Answering Questions on Flutter App Development” by

This article is only for beginners but I will be coming out with the new article with advanced resources in Flutter.

Thanks for reading this article ❤

Comments

Popular posts from this blog