こんにちは。長谷川です。この記事では、自分の勉強もかねて、Flutterを使ったアプリ開発をなるべく易しく解説していくので、ぜひ最後までお付き合いいただけますと幸いです。
また、私自身こういった解説記事を書くのは初めてなので、至らぬ点は多々あるかとは思います。ぜひコメントで意見いただけると幸いです。
##この記事の対象
今まで全くプログラミングしたことないけどアプリ開発してみたい人、です。プログラミングは専門用語や英語が多くて億劫。。という方も、丁寧に用語解説をしながら記事を書いていくので安心して読み進めてみてください。
##必要なもの
1、windows10以降搭載のパソコン or Mac
2、アプリを作りたいと思う熱意👈大事!!
##習得までのロードマップ
lesson0 : Flutterって?アプリ開発って?
lesson1 : とりあえずプログラミングする環境を作ってみる。
lesson2 : Dart言語を学習しよう。
lesson3 : オブジェクト指向プログラミングを学習しよう。
lesson4 : Widgetの使い方
lesson5 : Coming Soon...
#【Lesson0】Flutterって?アプリ開発って?
みなさんはAndroid、ios(iPhone)のどちらを使っていますか。
アプリ開発の話に入る前に、スマホにおけるOS(オペレーティングシステム)の違いについて簡単にお話しておきます。
まずOSとは、スマートフォンをoperating(制御)するためのソフトウェアのことで、Google社が開発するAndroidとApple社が開発するiosの二種類のOSがあります。OSが異なっていることで、若干操作の方法が変わったり、セキュリティの信頼度が変わってくるのはご存じかとは思いますが、OSが異なるということは、アプリケーションを作成するための言語が異なってきてしまうことを意味しています。
したがってアプリ開発において、androidのためのアプリ制作とiosのためのアプリ制作は全く別物です。
例えば、Youtubeのアプリはandroidのものとiosのもので見た目こそ一緒ですが、使用されているプログラミング言語が違います。
AndroidはJava、iosはSwiftという全く違った言語で書かれています。アプリ開発が初心者にとって難しいのはこの問題が大きいでしょう。
しかし、この問題をFlutterが解決してくれました。Flutterを用いれば、一つのコードを書くだけでios/androidに加え、windowsのソフトウェア、さらにはホームページまで開発できてしまうのです。
Flutterってすっごー-い!!
##で結局Flutterってなんやねん
Flutterの歴史はとても浅いです。2018年にGoogle社によってFlutterは開発されました。まだまだ歴史が浅い分、書籍やサイトが少ないですが、一つのコードを書くだけで、様々な端末上で動くアプリが作れるという革新性から今最も注目されているフレームワークと言えます。
「は?フレームワーク?なんすかそれ」
「いい質問ですね!」(やってみたかった)
##どうして両方のアプリが一つの言語で作れるのか
Flutterでiosとandroidどっちのアプリも作れるとは言っても、どうやってそれを実現できているのかをご説明しましょう。
Flutterでは、Dart言語というプログラミング言語を利用します。Dartを用いてデザインや入力機能、ボタンの機能など一通り記述してしまいます。
そして!!Dart言語で書いた処理を、android用であればJavaに、ios用であればSwiftに翻訳してくれるのです。
Flutterとは、Dart言語をJavaやSwiftに翻訳してくれる仕組みです。しかもJavaやSwiftを書くよりもらくちんです。とてもらくちんなので、初心者でも簡単に取り組むことができるのです。
##終わりに
頭がこんがらがっている人、大丈夫です。初回から飛ばしすぎましたね。次回からは、実際に手を動かして勉強していきましょう。少しずつできることが増えるたび、Flutterを勉強するのが楽しくなってくるはずです。では次回。