1. TOP
  2. ブログ
  3. GoogleのFlutterとは?魅力・将来性・バージョンアップ内容を紹介します

GoogleのFlutterとは?魅力・将来性・バージョンアップ内容を紹介します

この記事を読むと、以下の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向けの広告ライブラリもベータ版ですが提供が始まっており、アプリの収益化も見込めます。実はあのGoogle 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つのコードを書かなければいけません。Android用はAndroid StudioとKotlin、Javaといった言語が必要で、iOSならXCodeとSwiftなどの言語が必要です。

実質2つのアプリを開発するようなものですが、Flutterなら1つのアプリをAndroid用、iOS用と自動で変換できます。

クロスプラットフォームを持つツールは、Flutter以外にもFacebookが開発した「React Native」、Xamarin社が提供する「Xamarin」、ゲームではUnityなどが有名です。(※2)

ホットリロード機能で変更をリアルタイムで確認

Flutterにはホットリロード機能があります。ホットリロード機能とは、開発でプログラムを変更したと同時にUIに反映させる機能のことです。

UIの変更を確認する時、一般的にはコードを書いたり変更したりすれば毎回ファイル編集から保存を行わなくてはいけません。しかしホットリロード機能はファイルの変更がトリガとなり、リアルタイムでUIへ反映してくれるのです。(※3)

毎日膨大な回数のコード編集を行うエンジニアにとって、このホットリロード機能はかなりありがたいものです。Flutterにもホットリロードがあるので、エンジニアはUIをチェックするために毎回リロードする必要がなく、効率的に作業できるのです。

Flutterは2021年3月にバージョンアップを発表

効率的でスムーズなモバイルアプリが開発できる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の将来性について、国内外の事例を元に解説します。

IT先進企業がFlutterを導入

海外では、MicrosoftやCanonicalといったIT先進企業がFlutterの導入を発表しています。

Microsoftは、折りたたみ式Android端末であるSurface DuoでFlutterを使うために、APIをFlutterエンジンにしました。

またLinux OSとして有名な「Ubuntu」の開発支援を行うCanonical社は、Flutterをデスクトップに導入するためにGoogleと連携しています。(※9)

また、今後Canonicalによって作られるデスクトップやモバイルアプリのデフォルトをFlutterにすることも明言しており、UbuntuをはじめCanonical社の開発ツールでも活用されていくでしょう。

あのトヨタもFlutterを導入

国内では、トヨタが車載システム開発でFlutter2を採用したことを発表しました。(※10)トヨタは情報と娯楽の両方を搭載したシステム“インフォテインメント”の構築にFlutterを使う計画を明らかにしていて、2021年7月現在ですでにFlutterを使える人材を募集しています。

トヨタのように、車業界ではカーナビ以外にオーディオやDVチューナーといった娯楽要素を合わせたインフォテイメントの開発が進んでいます。そのため、トヨタ以外にもFlutterの導入を計画している企業は決して少なくないでしょう。

上記の事例のように、Flutterの導入を進める企業は国内外問わず増えています。つまり、Flutterを使えるエンジニアの需要が高まるということです。

オープンソースであり誰でも気軽に触れられるFlutterですから、今後の需要に備えて今から勉強してみてはいかがでしょうか。エンジニアやプログラミングが好きな人はぜひ試してみてください。

建設・土木業界向け 5分でわかるCAD・BIM・CIMの ホワイトペーパー配布中!

CAD・BIM・CIMの
❶データ活用方法
❷主要ソフトウェア
❸カスタマイズ
❹プログラミング
についてまとめたホワイトペーパーを配布中


▼キャパの公式Twitter・FacebookではITに関する情報を随時更新しています!

参照サイト
※1 https://www.fenet.jp/infla/column/technology/126-2/
※2 https://rekaizen.com/article/detail/app-development/11016
※3 https://crieit.net/posts/90d2d9333da1e59c8ba89783b91fe3f7
※4 https://developers.googleblog.com/2021/03/announcing-flutter-2.html
※5 https://forest.watch.impress.co.jp/docs/news/1310923.html
※6 https://japan.zdnet.com/article/35167374/
※7 https://qiita.com/koher/items/e4835bd429b88809ab33
※8 https://type.jp/et/feature/15075/
※9 https://developers.googleblog.com/2021/03/announcing-flutter-2.html
※10 https://developers.googleblog.com/2021/03/announcing-flutter-2.html

    ホワイトペーパーフォームバナー

    【DL可能な資料タイトル】

    • ・プログラムによる建築/土木設計のQCD(品質/コスト/期間)向上
    • ・BIM/CIMの導入から活用までの手引書
    • ・大手ゼネコンBIM活用事例と建設業界のDXについて
    • ・デジタルツイン白書
    • ・建設業/製造業におけるデジタルツインの実現性と施設管理への応用

    詳細はこちら>>>

    PAGE TOP