記事の内容
この記事では、FlutterとDartを学習するさいの良書と動画教材を紹介していきたいと思います。
初心者向け
脱初心者のための問題集 Dart編
Dartの基礎的な文法を学習し終わった後、次に何をしようかと考えている人にオススメの本です。
基礎を学んだ後にするべきことは、アウトプットです。
この本では、そのアウトプットをするための演習課題が、55問、用意されています。
この本を読み終えた後は、まず間違いなく、初心者から中級者に向けてのステップアップができているはずです^^
Dartを勉強するさい、2冊目に最適な本です。
この本は、「Kindle Unlimited」の30日間無料体験で読むのがオススメです ^^
無料体験後も、200万冊以上の本を月額980円で読むことができる、読書好きにはもってこいのプランです。
ソフトウェアデザイン 2022年4月号
クロスプラットフォーム開発の第一の選択肢として注目を浴びているFlutterは、UIの変更を即座に反映する「ホットリロード」などの機能により、高速なアプリ開発ができると言われています。
本特集では、メモアプリやパズルゲームなどの開発を通して、Flutter固有の概念「Widget」や、UIの状態管理についての理解を深めます。
また、試作したアプリのテスト、ビルドから各プラットフォーム向けのデプロイまで行うことで、開発工程を一通り体験します。
多分1週間くらいでできるFlutter入門
簡単なTODOアプリを作っていきます。
ソースコードがGithub上に公開されているので、それに沿っていけばアプリが作れます。
入門書としてオススメです。
Dart入門 - Dartの要点をつかむためのクイックツアー
Dartの構文などを短時間で確認したい人にオススメの本です。
他の言語を全く使ったことがない人には難しいかもしれないので、ある程度の経験を積んだ人向けです。
でも、内容は簡単なので1時間もあれば、全て読み終わると思います^^
この本は、「Kindle Unlimited」の30日間無料体験で読むのがオススメです ^^
Flutter モバイルアプリ開発バイブル
Flutter開発の入門書です。
これから、アプリ開発を始めたい人にオススメの一冊です。
マルチプラットフォーム対応 最新フレームワーク Flutter 3入門
Googleの開発したクロス開発フレームワーク「Flutter」のインストールから、アプリ開発に必要な機能をひと通り解説した入門書です。
Flutterは進化が早いので、新しい情報が載っている本は嬉しいですね。
Flutter×Firebaseで始めるモバイルアプリ開発
正直、あんまりオススメはできない本です。
コードをそのまま書いても動かないです。
ただし、「Kindle Unlimited」の対象ではあるので、入会している人は読んでみて下さい。
中級者向け
現場で使える Flutter開発入門
幅広く浅く解説している本ですが、Flutterの解説において、実践的な内容だと思います。
レイアウト、アニメーション、状態管理、データベース、ネイティブ連携、課金、ローカライズ、リファクタリング・デバッグ、CI/CD、Flutter Webなどについて説明されています。
基礎から学ぶ Flutter
一冊目の本には向いてないかなと思いました。
でも、ある程度はFlutterの知識を持っている人が勉強するには、いいと思います。
内容自体は素晴らしいです。
著者の方は、この本を書くにあたってかなり苦労されたそうです。
Flutter for Beginners: An introductory guide to building cross-platform mobile applications with Flutter 2.5 and Dart, 2nd Edition
英語版ですが、出版日も新しくて人気の本です。英語が大丈夫な人には、おすすめの本です。
Flutter Complete Reference: Create beautiful, fast, and native apps for any device
英語版です。
Flutterについて、もっと詳しく知りたい。
手元にリファレンスを置いておきたいという方にオススメの本です。
上級者向け
再実装Flutter UIフレームワークをゼロから自作する
本書ではFlutterを自身で1から実装し直し、「Flume」という新たなUIフレームワークを作ります。再実装を通じて、UIフレームワークを支える複雑な世界と、Flutterの高速動作を支える差分更新システムの理解を目指します。
Flutter自体はすでに巨大かつ複雑なソフトウェアであり、隅々まで実装するのは困難です。そのためFlumeでは本質的に重要な機能のみをピックアップして説明・実装することにします。