読み方 : フラッター

Flutter

Flutterとは?

米グーグル(Google)社が開発・公開しているマルチプラットフォーム対応のアプリケーション開発環境。モバイルアプリやデスクトップアプリケーションWebアプリケーションを同じプログラムコードで開発することができる。
Flutterのイメージ画像

主にアプリケーションの表示・操作画面(UI:ユーザーインターフェース)を開発することに主眼を置いたフレームワークで、単一のコードからAndroid、iOS、Windows、macOS、LinuxWebブラウザのそれぞれに適した配布形式のアプリケーションを作成できる。

コーディングには独自の「Dartダート」と呼ばれるプログラミング言語を用いる。これはWebブラウザスクリプトで標準的なJavaScriptを元に考案された言語で、型システムの改善などで性能やセキュリティ、大規模開発などでJavaScriptの抱える問題を緩和している。

従来、アプリケーションのUI部分は手続き的なコードで記述することが多かったが、Flutterでは宣言的な記法が採用されており、開発者はどのようなUIにしたいかを定義するだけで、各プラットフォームに適したUIを生成するコードに自動的に変換される仕組みとなっている。

UIは「ウィジェット」(widget)と呼ばれる構成要素の組み合わせとして定義される。テキスト、図形、画像、ボタン、アイコン、メニュー、レイアウトなど様々なウィジェットが用意されており、Androidのマテリアルデザインを実装した「Material Components」、iOS風デザインを実装した「Cupertino」など、特定環境に馴染むデザインのウィジェット群も用意されている。

プラットフォームにおける表示・描画機能を実装した「Flutterエンジン」は、Google社の「Skia」ライブラリを基盤としている。ネイティブコードのように高速な実行を可能にしながら、プラットフォーム間の差異を吸収して同じように振る舞わせることができる。各プラットフォーム固有の機能にアクセスする仕組みも用意されている。

初版は2017年に発表され、当初はAndroid向けとiOS向けを同じコードで開発できるモバイルアプリ向けフレームワークだったが、2021年のFlutter 2でデスクトップ向け、Web向けも開発できるようになった。BSDライセンスに基づいてオープンソースとして公開されており、WindowsやmacOS、Linuxで開発することができる。

この記事の著者 : (株)インセプト IT用語辞典 e-Words 編集部
1997年8月より「IT用語辞典 e-Words」を執筆・編集しています。累計公開記事数は1万ページ以上、累計サイト訪問者数は1億人以上です。学術論文や官公庁の資料などへも多数の記事が引用・参照されています。