Flutter

Flutterとは



Flutterは、Googleによって開発されたオープンソースのUIフレームワークです。このフレームワークの最大の特徴は、単一のコードベースで複数のプラットフォーム(Android、iOS、Web、デスクトップ)に対応したアプリケーションを開発できる点です。

歴史



Flutterの初期バージョンは「Sky」と呼ばれており、Android上で動作していました。2015年には、120fpsでの安定したレンダリングを実証しました。

  • - 2018年12月4日: Flutter 1.0がリリース。iOS風のウィジェットキットCupertino Themeの強化、Firebaseのサポート、Dart 2.1のサポート、バイナリサイズの最適化などが実装されました。
  • - 2019年: 次期プレビュー版に向け、既存アプリへのFlutter組み込み(Add to App)、ネイティブUIコントロールの利用(Platform Views)、デスクトッププラットフォーム対応(Flutter Desktop Embedding)、Webプラットフォーム対応(Hummingbird)の開発が進められました。
  • - 2021年3月3日: Flutter 2がリリース。CanvasKitレンダラーの導入、Webアプリサポート、デスクトップアプリの早期アクセス、Add-to-App APIの改善などが行われました。また、健全なnull安全性が導入されました。
  • - 2021年9月8日: Dart SDK 2.14とFlutter 2.5がリリース。Androidのフルスクリーンモード対応、Material Youの導入、Dartのlintルールの標準化、Apple Silicon対応などが含まれます。

フレームワークのアーキテクチャ



Flutterは、以下の主要コンポーネントで構成されています。

1. Dartプラットフォーム
- FlutterアプリはDart言語で記述され、高度な機能が活用されています。
2. Flutterエンジン
- C++で記述され、Skiaを利用した低レベルのレンダリングをサポートしています。ネイティブSDKとの連携も可能です。
3. 基本ライブラリ
- Dartで記述され、エンジンとの通信APIやアプリ開発に必要な基本クラス、関数を提供します。
4. ウィジェット
- FlutterのUIは、様々なウィジェットで構成されます。テキスト、図形アニメーションなど全ての描画をウィジェットで行います。複合的なウィジェットも作成可能です。
5. 特定デザイン体系向けのウィジェット
- マテリアルデザインウィジェット(Googleのデザイン言語)、クパチーノウィジェット(iOSのデザイン)が含まれています。

ウィジェットについて



FlutterにおけるUI構築の中心となるのがウィジェットです。Flutterのウィジェットは、UIの不変な部分を表します。テキスト、画像、アニメーション、ボタン、リストなど、あらゆる要素がウィジェットとして扱われます。これらのウィジェットを組み合わせることで、複雑なUIを構築することができます。

マテリアルデザインウィジェット


Googleが提唱するマテリアルデザインに基づいて設計されたウィジェット群です。統一感のある美しいUIを簡単に実現できます。

クパチーノウィジェット


AppleのiOSのデザインガイドラインに準拠したウィジェット群です。iOSアプリのようなネイティブなUIを提供できます。

まとめ



Flutterは、クロスプラットフォーム開発の強力なツールとして、多くの開発者に利用されています。その柔軟性とパフォーマンスの高さは、今後のモバイルアプリ開発においてさらに重要な役割を果たすでしょう。

外部リンク



もう一度検索

【記事の利用について】

タイトルと記事文章は、記事のあるページにリンクを張っていただければ、無料で利用できます。
※画像は、利用できませんのでご注意ください。

【リンクついて】

リンクフリーです。