UPDATE: My Flutter course is now live! Check it out at fluttercrashcourse.com š
ā
Throughout this past yearās explosion of popularity in Flutter, Iāve seen many fresh newcomers to mobile development. Itās been really exciting and rewarding taking part in mentoring others, making sure developers from all over the world learn Flutter efficiently and effectively. Thatās why Iām launching my very own course this month.
So on that note, Iād like to provide some thoughts on learning styles, what I believe is effective and finally, what are some of the core skills Flutter engineers need to succeed in writing great mobile apps.
So there are two types of developers Iāve seen out there. One type of developer will take a quick start from the official documentation, then try to play around with some random examples and after that heavily rely on Stack Overflow answers. Hereās the problem with that: a) playing around is all well and good, but if youāre playing around with features you wonāt need anytime soon, youāre not using your time effectively and b) Stack Overflow answers can too easily include poor quality code examples. I sound like Iām making a generalization but all too often with junior developers, from my experience, I see things play out like this.
Another type of developer though will make a plan on what they need to learn, write a few simple example apps and most importantly find quality content to learn properly from day one. Personally, I always love reading through a proper book first, soaking things in, then trying to write an app myself.
So for the rest of this article, Iām going to focus on the latter developer Iāve mentioned above, the one who learns effectively by focusing on exactly what they need to learn to become a competent mobile developer.
Iāve seen a lot of recurring patterns in 90% of the apps out there. The patterns can be broken down into two major areas, screens and widgets. You may want to set the following as personal learning goals. If youāre working on coding examples, being able to create a example from each of these will be major milestone for you:
In this case, something with a nice looking image or avatar at the top, stylized text, a list of sections that contain some text and really thatās most of it.
Think of a news feed, it scrolls vertically (doesnāt have to be infinite) and is backed by some data source somewhere. Each item is implemented with a clean, āDRYā approach.
This can be a login or registration form or an edit form. Forms are central to mobile apps and designing forms that look good and function well is something to be proud of.
Iām going to compliment the list above with a list of Flutter specific widgets that, at least for me, have been fundamental to getting to a confident level of Flutter development skills.
Note, there are a lot of Widgets out there, the key is to focus on the basic ones first. Hereās a starter list of skills with accompanying Widgets that I recommend learning as a beginner:
I know what youāre saying, this is a very basic list, but youād be surprised what you can achieve with just this. I always say to be people to focus on writing dead simple apps first with the basic skills you have before going overboard on using more widgets than this. You donāt have to submit them, just show them to friends and family. The point is that you write end to end apps as a lot more than you think is learned by this process. In short, learn by doing!
You can check out my free Flutter video course, fluttercrashcourse.com which cover all of these basics and of course more. Also, feel free to follow me on Twitter for regular Flutter tips.
Happy Fluttering,
Nick