こんにちは!クオーレ新人の中村です。私の自己紹介はこちらをご覧ください。
今回はFlatterとは何なのか、初心者の視点から解説・思ったことを書き連ねていこうと思います。
そもそもFlutterとは?
Flutter公式ホームページは英語なので早々に読むのを諦め、大学の教授には怒られるWikipediaに頼ると
『Flutter(フラッター)は、Googleによって開発されたフリーかつオープンソースのUIのSDKである。単一のコードベースから、Android、iOS、Linux、macOS、Windows、Google Fuchsia向けのクロスプラットフォームアプリケーションを開発するために利用される。』*¹
とあります。例えばIOSとAndroidで同じアプリケーションを作ろうとするとOSの数だけコードが必要です。しかしFlutterを用いれば同じコードを使ってアプリケーションを作る事が出来ます。なるほど、これは便利だと初心者ながらに思います。懸ける労力が 1/リリースするOSの数 になるわけですから。実際はこんなに労力が減ることはないのでしょうがそれでも素晴らしいSDK(Software Development Kit)です。
当然開発コストだけではなく、保守運用コストも減りますのでその点でもメリットがあります。また、書くコードの量も減りますのでバグの発生件数も抑えられます。いいことづくめですね。類似のものにReact NativeやApache Cordovaがあるようです。私は使ったことがないのでわかりませんが、それぞれ長所、短所があるようですので実際に開発する際はよく吟味したいですね。
使用する言語は?
実際に開発するにあたって使用する言語は非常に重要なポイントです。Flutterでは「dart」という言語を用いて開発します。最初は知らなかったのですが、あまりメジャーな言語ではないそうです。「dart」の詳しい説明は省きますが、一言で言ってしまえば「JavaScript」になれなかった言語です。
私が経験したことのある言語は「JavaScript」だけでしたので多少なりとも似ていたのはありがたかったです。ベテランの皆様も経験したことののある方は少ないかもしれませんが、「JavaScript」や「TypeScript」、「Java」に近いと言われている言語ですのであまり気負いせずに始めることができるのではないでしょうか?
使っていて個人的に驚いたこと
これだけではFlutterの魅力があまり伝わらなさそうなのでもう少し詳しく書いていきます。最近知った中で感動した機能はやはり「Hot Reload」です。この機能はコードを書き換えた後、即座に実機やシミュレーターにUIを反映させることができる機能です。これは多少なりともプログラミングを経験したことのある人なら、この機能のありがたみがわかるのではないでしょうか?
従来であれば変更箇所を確認するには、プログラムを起動しなおして該当のページに行って。。。など多くの時間を取られます。しかしHot Reloadであれば再起動などする必要がなく、即座に変更箇所の確認ができます!これは使ってみればわかる最高の機能です。
他にはFlutterはUIを各プラットフォームに依存せず、Googleが提供するマテリアルデザインを採用しています。これにより異なるOSでも同じ、かつ見やすいUIを作る事が出来ます。私の感想ですがこのデザインは見やすく、また直感的に操作が可能なデザインとなっています。これをうまく活用すれば私のようなデザイン素人でも”それっぽい”画面を作る事が出来ました(笑)。
終わりに
今回はFlutteについての簡単な説明とそれに関しての私の感想を書かせていただきました。次回はFlutteの環境構築とつまずいたところを解説したいと思います。ここまで読んでいただきありがとうございました!
引用
1 「Flutter」2021年10月20日 (水) 12:43 UTC版 『ウィキペディア日本語版』