ミヤトモこの記事を読むと、以下の3つの事がわかります。1.Googleが開発するFlutterの基本情報とメリット2.バージョンアップした「Flutter2」の変更点3.Flutterの将来性Googleは2021年3月、Flutterをバージョンアップさせた「Flutter2」を発表しました。このバージョンアップによってさらに汎用性の高い言語となり、エンジニアたちに注目されています。Flutterは2018年の登場からわずか数年ですが、すでに15万を超えるアプリがリリースされ急成長しているツールの1つです。エンジニアや開発の勉強をしたい人に向けて、Flutterの特長やメリット、バージョンアップ内容をご紹介します。FlutterとはフレームワークのことFlutterとは、Googleが開発したオープンソースのフレームワークです。Googleが2018年に正式版を発表したマルチプラットフォームのツールで、モバイルアプリ向けのツールとなっています。FlutterはGoogleが開発したDart言語の他にCやC++が使われています。そのため、それらのコードを編集したり書いたりした経験がある人は、Flutterに慣れるのも早いかもしれません。天下のGoogleが開発した言語という事で注目度も高く、わずか2~3年の間で既に15万を超えるAndroidアプリがリリースされました。Pythonなどと比較すると普及率は高くないものの、確実に導入が進んでいる言語です。Flutter向けの広告ライブラリもベータ版ですが提供が始まっており、アプリの収益化も見込めます。PayでもFlutterが使われており、様々なGoogleサービスで導入が進んでいるフレームワークです。Dart言語とはDart言語はGoogleが開発したWebブラウザ組み込み用のスクリプト言語です。GoogleはJavaScriptの代替を目指してDartを開発していて、JavaScriptに比べて高いパフォーマンス性があります。(※1)Googleは元々Dart言語をChromeに統合する計画でしたが、Dart言語があまり普及せずに断念しています。そこで2018年にDart2として改良を加え、再びDartを世に広めようと動いているのです。Flutterの魅力Flutterには、以下のようなメリットがあります。クロスプラットフォームでアプリ開発を効率化できるFlutterでまず魅力とされるのは、iOSとAndroidの両方を開発できるクロスプラットフォームである点です。FlutterならiOS用、Android用とアプリを変換することなく1度の工程で2つのアプリを開発できます。通常なら1つのアプリを開発するために、モバイルエンジニアはiOSとAndroidという2つのコードを書かなければいけません。StudioとKotlin、Javaといった言語が必要で、iOSならXCodeとSwiftなどの言語が必要です。実質2つのアプリを開発するようなものですが、Flutterなら1つのアプリをAndroid用、iOS用と自動で変換できます。Native」、Xamarin社が提供する「Xamarin」、ゲームではUnityなどが有名です。(※2)ホットリロード機能で変更をリアルタイムで確認Flutterにはホットリロード機能があります。ホットリロード機能とは、開発でプログラムを変更したと同時にUIに反映させる機能のことです。UIの変更を確認する時、一般的にはコードを書いたり変更したりすれば毎回ファイル編集から保存を行わなくてはいけません。ホットリロード機能はファイルの変更がトリガとなり、リアルタイムでUIへ反映してくれるのです。(※3)毎日膨大な回数のコード編集を行うエンジニアにとって、このホットリロード機能はかなりありがたいものです。Flutterにもホットリロードがあるので、エンジニアはUIをチェックするために毎回リロードする必要がなく、効率的に作業できるのです。効率的でスムーズなモバイルアプリが開発できるFlutterですが、2021年3月に「Flutter2」としてバージョンアップした発表しました。(※4)このバージョンアップにより、Flutterはさらに広範囲に使える言語となったのです。Webの正式サポートを発表GoogleはFlutter2で、Webとデスクトップの両アプリをサポートすることを発表しました。Webサポートではベータ版から安定版へと移行しているので、アプリ構築の正式なターゲットとなります。これにより、iOSやAndroidといったモバイルアプリやChrome・Safariに加えて、SPAやPWAといったWebアプリでもコードを変えることなく開発できるようになったのです。(※5)また、Flutterはスクリーンを搭載した自動車、テレビ、家電といったIoTデバイスに組み込むこともできます。(※6)そのため、国内外でFlutterを導入する企業が増えているのです。導入事例については、詳しくは後述します。Googleは2018年にFlutterをリリースした後、2019年に対象となるプラットフォームをデスクトップアプリにまで拡大しています。デスクトップの方はまだα版であり、安定したとまではいえません。完全にデスクトップをサポートするには、もう少し期間が必要なようです。デスクトップアプリの開発で導入している企業もあり、多少の不具合を気にしなければ十分に利用できます。“null安全”がデフォルトになったFlutter2を発表した同日、Flutterを支えるDart言語も「Dart2.12」としてバージョンアップしています。Dart2.12では、null安全な開発をサポートすることを発表しました。(※6)null安全は近年注目されている機能で、PythonやKotlin、Swiftといった言語もnull安全を採用しています。(※7)null安全とは、開発時と実行時においてコードの中にnull値が変数として混入しないことを保証するものです。コンパイラーで厳密にチェックされ、バグを早期発見できるメリットがあります。null値はバグの中でもかなり上位なので、null安全によって多くのプログラマを助けているのです。Flutterの将来性は高い「Flutterに興味はあるけれど、勉強する価値があるの?」と心配する方も多いでしょう。Flutterの将来性は大変高く、国内でもFlutterを採用してフルDart体制にした企業もあるほどです。(※8)Flutterの将来性について、国内外の事例を元に解説します。海外では、MicrosoftやCanonicalといったIT先進企業がFlutterの導入を発表しています。DuoでFlutterを使うために、APIをFlutterエンジンにしました。OSとして有名な「Ubuntu」の開発支援を行うCanonical社は、Flutterをデスクトップに導入するためにGoogleと連携しています。(※9)また、今後Canonicalによって作られるデスクトップやモバイルアプリのデフォルトをFlutterにすることも明言しており、UbuntuをはじめCanonical社の開発ツールでも活用されていくでしょう。国内では、トヨタが車載システム開発でFlutter2を採用したことを発表しました。(※10)トヨタは情報と娯楽の両方を搭載したシステム“インフォテインメント”の構築にFlutterを使う計画を明らかにしていて、2021年7月現在ですでにFlutterを使える人材を募集しています。トヨタのように、車業界ではカーナビ以外にオーディオやDVチューナーといった娯楽要素を合わせたインフォテイメントの開発が進んでいます。そのため、トヨタ以外にもFlutterの導入を計画している企業は決して少なくないでしょう。上記の事例のように、Flutterの導入を進める企業は国内外問わず増えています。Flutterを使えるエンジニアの需要が高まるということです。オープンソースであり誰でも気軽に触れられるFlutterですから、今後の需要に備えて今から勉強してみてはいかがでしょうか。https://developers.googleblog.com/2021/03/announcing-flutter-2.htmlこの記事を読んだ人は、こちらの記事も読んでいます。建設資材のコスト予測。