GithubHelp home page GithubHelp logo

mhmdarsyad / flutter-roadmap-and-resources-guide Goto Github PK

View Code? Open in Web Editor NEW

This project forked from mhmzdev/flutter-roadmap-and-resources-guide

0.0 0.0 0.0 13 KB

A roadmap from a beginner's point of view. Which can help you in becoming a full fledge flutter developer.

License: MIT License

flutter-roadmap-and-resources-guide's Introduction

๐Ÿ—บ Flutter Roadmap & Resource Guide

In Reference to detailed Article Here

I will be sharing a simple roadmap and resources that I use personally for improving my flutter skills. You can obviously figure out your way of learning but here's mine. I will keep on adding link from Flutter Offical Docs so that you might get an idea how helpful Flutter official documentation is. ๐Ÿ˜ƒ

๐Ÿƒโ€โ™‚๏ธ Let's Begin!

Its more like a mix of Roadmap and Resource. So, that if you are a complete beginner you will have something to jump to :)

๐ŸŽฏ Confusion Regarding Dart

A lot of people think ask whether we need to learn Dart before starting flutter or not? My opinion is:

  • If you are new programmer, you must the knowledge of OOP and Stack in Data structure will be a plus!
  • Otherwise, there is no need to learn Dart specifically its quite similar to Java/C++/C# so you will keep getting it on the way :)

๐Ÿ’ป Which IDE is BEST!?

I have seen a lot of beginners confused between which IDE to choose for Flutter development. Well, here is my suggestion for you.

  • If you have a High End machine (at least SSD & 8GB RAM) then you can go for Android Studio and feel free to use Emulator Alongside.
  • If you have a Low End machine (at least 4GB RAM) then you can go for VS Code and you Cannot User Emulator because it will slows down your system if you opened even a single tab of Chrome for searching some errors.

๐Ÿ”ด Suggestion:

I would strongly recommend you to download Android Studio even if you are not planning to use it. WHY? Well because it will get you a lot of stuff like Android Gradle, Android SDKs, Android Emulators etc built-in. Otherwise, you will need to download them manually and set each one of them. And Believe me, its pain in the ass!

๐Ÿ‘จโ€๐Ÿซ Flutter Basics

Starting a complete beginner if you are looking for some Udemy courses or YT playlist I would recommend you the following:

After this, you must have the knowledge as shown below:

๐Ÿ’พ Database

Now, you are done with the basics of flutter and its time to up your flutter game. Let's start with some Database. For flutter, I would recommend you to start with Firebase. You can use the following resources depending on which helps you to learn stuff faster:

But What if your client asks you store data locally? No problemo! You can learn SQFlite quite similar to sqlite.

๐ŸŽจ Responsive UI

Till here you are a complete flutter developer who is very good with Flutter alongside at least very common database i.e Firebase. For Flutter apps it's your responsibility to make your apps responsive for various types of screen sizes. Hence, make sure to learn Responsive UI in Flutter and you can use the following to get you started:

๐ŸŒ Networking

If you are at this stage altough you can develop apps with beautiful responsive UI alongside database. But, you need to keep learning more and more stuff so that you can manage data otherway around. For that, make sure to learn RESTful API and jSON Data. In case you are a good with socket programming you can learn that but that's optional here :)

๐Ÿ“ฑ Apps you can try:

๐Ÿ›  State Management

The next big thing you need to learn for Flutter is managing the state. There are a lot of State managment techniques that you can use. Following are few:

๐Ÿ“ฑ Store Knowledge

Since you are a cross-platform app developer now, you must know about the guidelines of uploading an app to App Store and Google Play store. So, make sure to get knowledge about uploading an app accordingly.

๐Ÿค” What's Next?

Learning never ends! Keep learning with resources, keep exploring, keep sharing your apps and projects with others to get reviews and help. And always remember:

"Achivements Don't Speak themselves!"

  • Get yourself a Nice looking GitHub profile and showcase your project with proper documentation. This shows other people who are looking for developers that you are serious about your work and career. Get a nice GitHub Readme for you. Here's mine, you can use it and customize it for yourself ๐Ÿ˜Š
  • Same goes for having a Nice looking LinkedIn profile and make connection. This will keep you going and you will get numerous opportunity on the way!
  • Another good way to present yourself will be having a live resume. Ask your friend to get you simple one.

๐Ÿ“ƒ Other Resources

Below are the resources which you can use to expand you Flutter knowledge and research:

Make sure to ๐ŸŒŸ the Repo!

Author

Muhammad Hamza ๐Ÿง‘

LinkedIn Link

๐Ÿ‘‰ You can also follow my GitHub Profile to stay updated about my latest projects:

GitHub Follow

Copyright (c) 2020 MUHAMMAD HAMZA

๐Ÿ”‘ LICENSE

  • This project is licensed under the MIT License - see the LICENSE file for details

flutter-roadmap-and-resources-guide's People

Contributors

mhmzdev avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.