おじいちゃんであそぼう

この記事は広島大学ITエンジニア Advent Calendar 2020 - Adventarの25日目の記事です。

春はあけぼの冬はアドカレということでアドカレに初参加しました。

(最終日がアドカレ初参加の人間でいいのでしょうか。)

 

 僕は今月勉強し始めたFlutterについて話そうと思います。

とりあえずFlutterでとても簡単なアプリを作ってみたのでITに興味がない人もぜひこれだけは見ていってください。

 

 

 

作ったもの

f:id:goodmourning:20201222020003g:plain

 

今回作ったのはランダムなおじいちゃんの画像とランダムな文章を表示するアプリです。色んなおじいちゃんに色んな事を言わせたい気分になった時に使えます。

 

本当はザ・たっちのたくやとかずやを仕分けるアプリなど、もっと色々作って並べたかったのですが時間が無くて断念しました。

 

 

ちなみに兄たくやは辛い物が苦手で、弟かずやは逆に辛い物が好きだそうです。
たくやとかずやを見分けられなかったらキムチでもあげて反応を見てみてください。

 

 

 

 

 

Flutterとは

FlutterとはGoogle社が開発している、クロスプラットフォームに対応したアプリケーションフレームワークです。

正確性を欠く恐れがありますが超ざっくり言うと、Flutterでアプリを作ると一つのソースコードを書くだけでiPhoneアプリAndroidアプリ、Webアプリ、パソコンのアプリとして動かせるよ!ってことです。ドラえもんの道具で言うとほんやくコンニャクといったところでしょうか。

Flutterで採用されている言語はDartです。個人的にDartJavaに似ているなあという印象を受けました。情科生は授業でJavaを触ったのでわりと取っ付きやすいかなと思います。

 

 

 

なぜFlutterを選んだか

元々モバイルアプリ開発に興味があり、iOSアプリはMacを持ってないため厳しいのでAndroidアプリを開発してみようと思いました。

Androidアプリを開発する手段は現在ではKotlinとFlutterの2つの選択肢が主だと思います。僕はその2つのうち学習コストの低い(らしい)Flutterを選びました。ちなみにKotlinもJavaに似てるらしいです。

学習コストに加え、Flutterの特徴の一つであるホットリロードに惹かれたということもFlutterを選択した理由の1つです。詳しくは説明しませんが、ホットリロードを使うと記述したコードがリアルタイムにアプリに反映されて高速な開発が可能になります。HTMLとかCSSを書いてるときに近いスピード感での開発ができます。

 

 

ホットロードはホットリロードとは何の関係もありませんが能年玲奈がかわいいので全員観てください。

 

 

 

 

Flutterに興味を持ってくれた方へ(僕の学習方法)

ぼくはこの記事を参考にして、公式ドキュメントのチュートリアル→UdemyのThe Complete 2020 Flutter Development Bootcamp with Dartをやりました。(まだまだ勉強途中です)

medium.com

正直最初にチュートリアルをやった段階では何が何だか分からなくてUdemyで学んでようやく理解しました。Udemyの講座は僕のような初学者にもかなり分かりやすく、個人的に先生の教え方もとても好きなのでやってよかったです。あとこの講座は全部英語なのでリスニング力が鍛えられます。Udemyは頻繁にセールが開催されてるのでこの記事で興味を持ってくださり購入しようと思った方はセールを待つ方がいいです。

とはいえ結局はFlutterの仕様に沿った開発をすることになるため公式ドキュメントを読むのが一番かなと思っています。

 

 

 

 

ということでFlutterに関することをざっくりと書きました。

僕はまだ本当に初歩的なことしかできていませんがFlutterを学ぶのはとても楽しいです。何より気に入っているのはホットリロードで、少しコードを書いてはアプリを動かして確認するということをストレスなく繰り返せるのが経験の少ない自分にとっては嬉しいです。

一緒に勉強できる人がいるとうれしいのでFlutterに興味のある人はぜひ声をかけてください!