Flutter初心者のための学習ロードマップ
「Flutterを勉強する気はあるけど何をやればいいか分からない!」という声をよく聞きます。
今記事では、そんな方々のためにFlutter大学を2年半運営してきた経験をもとに、Flutter学習ロードマップを提案したいと思います。
基本的な学習方針
これは、プログラミングが初めてな人でも大丈夫なように想定した学習方針です。
①まずアプリ開発におけるFlutterの使い方をざっくり学び、②そのあと自分で実践、③実践した結果プログラミングの文法が分からなくてハマるのでその時に初めてDartの文法を学ぶ。
って感じの3ステップで学びます。必要になった時に学ぶというのが一番身につくと思いますので、いきなり基礎の基礎のDart言語の文法から学ぶのではなく、ゴール(アプリを作れるようになる)から逆算して、まずはアプリ開発の全体像を掴むというところからスタートしていきます。
以下に、①②③のステップにおいて具体的にどう勉強していけばいいのか解説していきます。
① Flutterアプリ開発の大枠を掴む
全体像を掴むためにオススメなのは、Flutter大学のYouTubeです。もちろん無料です。
作った自分で言うのもアレですが、Flutter大学の動画は最初から難しいことをし過ぎずに、まずはFlutterで作れるという感覚を掴めるように考えて作っているので、このロードマップのコンセプトにドンピシャです。一旦Flutter大学のYouTubeを見て全体像を掴んでみて貰えばと思います。
具体的にFlutter大学のYouTube動画をどう使えばいいのか、さらに解説します。
基礎編を真似する
まずは、以下の基礎編の動画を一通り真似してみてください。ここではDartの詳しい使い方を省いてFlutterでUIを組む上で基本的なことを解説しています。
Flutterの教科書をこなす
他にも動画はあるのですが、最短でFlutterを学習したいのであれば、基礎編を真似した後に次のプレイリストを真似してみてください。
Flutterの教科書は基礎編でやったwidgetだけではなく、Dartの構文の勉強やAPI、Firebase、状態管理などが盛り込まれています。書籍版はzennで有料なのですが、無料動画だけでも十分に使えると思いますので使ってみてください。
ここまでを1、2周したら、②Flutterアプリ開発を今の力で実践するのフェーズに行っていいと思います。
Flutter大学動画以外なら
Udemyの教材でも良さそうなやつを紹介します。英語ですが、アンジェラさんの動画はGoogle公式にも認められているそうなので信頼できます。ただし有料なので注意です。
② Flutterアプリ開発を今の力で実践する
一旦Flutterアプリ開発の全体像を掴むことが出来たら、もう実践してください。実践とはすなわちアプリを作ることです。
まずはFlutter大学の教材に少し毛が生えたくらいのシンプルなアプリを考えて、自分で作ってみるのがおすすめです。実際にこの方針でFlutter大学の方がアプリを作られているので紹介します。
以下のアプリは、いずれも、まだプログラミング始めて間もない方が、①の勉強を経た後に初めてリリースしたFlutterアプリです。
どのアプリも素晴らしく難しそうに見えるかもしれませんが、技術的には基礎的な内容の組み合わせで作られています。Flutter大学のYouTubeの動画を真似したり、若干応用すれば作ることができるレベルです。
ただ、技術としては難しくなくても、しっかり作り切る努力は必要です。
そこは頑張って乗り越えましょう。
ひとりで頑張れない方は仲間と一緒に開発するのも良いかもしれません。もし周りにFlutter開発仲間がいない場合はFlutter大学コミュニティで3ヶ月に1回結成されている共同開発チームに参加するのもオススメです。(まわりに友達がいる方は、Flutter大学に入らず、まずはその仲間たちとやるのも良いと思います。)
③ Dartを含めた基礎を学ぶ
アプリを作りきってリリースまで行けたら相当すごいのですが、エンジニアとして仕事をするレベルとしてはまだ少し足りません。というのは、実際の現場で作られているアプリはもっと複雑なことが多いからです。どんな仕様であっても対応できるスキルを身につけるためにはプログラミングの基礎(FlutterであればDartの基礎)の学習が必要です。
Dartの学習方法ですが、Flutter大学では、公式アプリに以下のようなイラスト教材というものを用意しています。基本的な型、配列、インスタンスなど、オブジェクト指向言語としての特徴もまとめてあります。
こちらで学習していただいてもいいし、Flutter大学の公式Twitterでもモーメントとしてまとめてあるので、Twitterをよく使う方はこちらから学習するのもオススメです。以下モーメントのリンク↓
そして、zennの本にもさらに詳しくまとめてあるので、そちらもチェックしてみてください。
また、基礎学習として以下の本「スッキリわかるJava入門」がオススメです。
この本はJavaなのですが、オブジェクト指向プログラミングの基礎を学ぶのに最適です。DartとJavaはかなり似ていますので、厳密にコピペはできませんが、この本で学んだことはかなり生きると思います。FlutterやDartの本でオススメがあればいいのですが、僕の見解では日本語で決定版となる本はまだありません。自分たちが書くしかないと思っています笑
④ ②と③をループする
あとは②Flutterアプリ開発を今の力で実践すると③Dartを含めた基礎を学ぶをループしてください。アプリ開発をしながらわからないところは調べながら解決して学んでいく感じです。多くのエンジニアがこのループで学習してますし、仕事しながらもこのループを回しています。
まとめ
以上です。
①Flutterアプリ開発の大枠を掴む、②そのあと自分で実践、③実践した結果プログラミングの文法が分からなくてハマるのでDartの文法を学ぶ。④②と③をループする。
この感じで学んでいくのがFlutter大学流のロードマップです。是非参考にして学習に役立ててみてください。
Flutter大学では共同勉強会や共同開発を通して仲間と一緒に学習もできますので、興味ある方は下記のリンクからチェックしてみてください!2023年2月14日現在約330人のメンバーがコミュニティで切磋琢磨しています!
Discussion