はじめに
自分はFlutterからプログラミングを始めました。完全に独学でです。
プログラミングの基礎がないままFlutterを始めたことで、色々と大変なことがあったので初心者目線で何につまずいたかを振り返りたいと思います。
基礎が全く無い人の世界
自分は公式ドキュメントや動画教材, 書籍などからFlutterを勉強し始めました。結構一般的かなと思います。
そういった教材で勉強していくと、カンタンなUIの作り方や画面遷移の仕方など、それっぽいことは割とすぐにできます。
この時点では「なんだか動くモノが作れて楽しい!」という気持ちでいっぱいです。
今ならChatGPTとかで更に簡単に動くモノが作れるはずです。
ただ、自分はすぐに壁にぶち当たりました。
- コードにはわからない部分がたくさんある
- 調べてもその中でわからないモノが登場し、疑問点が解消しない
- 結局なんで上手く動いているかわからず、コントロール感を持ってアプリが作れない
問題は、Flutterに特有の概念とプログラミングの基本概念の区別がつかず全部わからないモノとして認識していたことだと思います。
プログラミング経験者であれば、「ふむふむなるほど、既存言語とこう違うのか」とFlutterの特徴にフォーカスしてモノを見ることができると思います。
ではどうするか
わからないモノがわからない言葉で説明されても一生わからないままなので、わからないを分類し、順序立てて理解していく必要があります。
そのための自分なりの結論としては
まずオブジェクト指向プログラミング (OOP)を理解しよう
です。
その理由は
- クラス, インスタンス, 継承などみんなが前提無しに使っている言葉がわかるようになる
- サンプルコードなどが読みやすくなる
- まだ知らなくても良いことの区別がしやすくなる
ということです。
こういった本で勉強してみるのがとっつきやすくて良いのかなと思います。
https://amzn.asia/d/6uHzfNr
自分も初心者の域を脱してないのであくまで仮説ですが笑