How do I start learning Dart with hopes of using Flutter to build a mobile app?
Dart is easy to pick up if you know Java/JS/C#.
To start learning Dart, try writing a few standard programs like finding the factorial, checking if a number is a prime number, etc. like you’d do while learning any new language. If you have a good understanding of object-oriented programming languages, getting acquainted with the syntax is not a big problem at all and you’d easily get comfortable with it with practice. Do check out Dart’s documentation as well which has super easy examples to learn from.
“Are Dart and Flutter even ready to be used for mobile development yet?” - Certainly, let me tell two stories related to this.
Story #1: The not-so-mysterious language
Everyone thought Dart was dead, but it was just that a lot of developers outside of Google weren’t using it. Dart is being used at Google internally for a few years now.
One day, the Dart team at Google asked some of the developers there to code using this unknown language. The developers had no clue about what it was and had no documentation to look at. They just started writing code using that.
After a while, the developers were asked if they knew which language they were coding in? The developers said that they didn’t know. It’s just that the syntax was super easy to pick up and the coding using that came to them naturally.
The language discussed above was Dart.
Story #2: The not-so-mysterious app
The Google team was using an Android app at Google internally. They wanted to build the iOS client for that Android app. Instead of doing that using Swift/Objective C and native iOS, they decided to code the whole app again completely, using Flutter. They did that and shipped it to both Android and iOS. When they asked the Android users if they noticed any performance issues or design discrepancies with the new update? The answer was, no.
So, even when Flutter was in alpha or probably even before that, the team at Google was able to replicate an existing app entirely in Flutter without any design or performance related issues.
^Source for both the stories: FragmentedCast episode #13
——
So, is Flutter even ready to be used for mobile development yet? - Absolutely.
Given below are a few screenshots that depict a number of apps in production that use Flutter:
^Source: FAQ
Other companies that use Flutter at production include Posse Digital, Alibaba and Groupon.
^Source: Ready for Production Apps: Flutter Beta 3
To get started with Flutter, I compiled a list of the best resources to learn about it: "Flutter is awesome, but where do I start learning?"