Flutter

Flutterによるクロスプラットフォームアプリ開発

クロスプラットフォーム開発とは、異なるプラットフォーム上で、同じ仕様のものを動かすことが出来るプログラム・ソフトウェアの開発のことです。マルチプラットフォーム開発とも呼ばれます。

モバイルアプリ開発を例に取ると、iOS向けアプリ、および、Android向けアプリを同時に開発することになります。

我々はクロスプラットフォーム開発のフレームワークとしてFlutterを活用しています。

Flutterが開発されるまでクロスプラットフォーム開発は非常に懐疑的なものでした。Flutter以前のクロスプラットフォームは、表示・反応動作が遅い、学習が非常に困難、モバイルアプリケーション開発に適していない等の欠点を抱えたものが多かったのです。(例:Cordova)

2018年12月GoogleによりFlutterという新しいフレームワークがリリースされ、2019年以降クロスプラットフォームアプリ開発の突破口が開くと期待されています。

Flutterの特徴

2Dグラフィックライブラリ「Skia」を用いた独自のレンダリングエンジン

「Skia」により高機能・高品質なUI(ユーザー・インターフェース)実現のため必要となる、高速な描画・アニメーションが可能となっています。

開発言語:Dart

Dart言語はJavaやJavaScript、Ruby等の他の言語から影響を受けたオブジェクト指向言語であり、非常に高速なアプリケーションを構築できます。通常、他のクロスプラットフォームアプリ開発においては、iOSやAndroidをそれぞれ開発したもの(ネイティブアプリ)と比べ、速度・質が劣るケースが散見されますが、Dart言語を使用することでネイティブアプリと同様の速度・質のアプリケーション開発が可能になります。

Cupertino UI

iOS・AndroidのそれぞれのUIを活用できるUIセットです。Androidの場合はMaterial、iOSの場合はiOS

likeと名前が付けられていますが、総称としてCupertino

UIと呼ばれます。

豊富なUIアニメーションのサポート

ネイティブアプリでは構築が非常に難しいアニメーション系のUIも完璧に機能させることができます。

Googleによるサポート

FlutterはGoogleにより開発されたフレームワークです。今後、Fuchsiaと呼ばれるGoogleのオペレーティングシステムにおける主流となると言われており、Googleは多大な時間と資金を投じております。一方、Appleはこれに対して異議を唱えておらず、App

StoreにもFlutterを活用し開発したアプリが多数存在します。

どの言語にも欠点があるように、Flutterにも欠点あり、開発上の限界があります。我々は皆様のご要望・技術上のリスクを分析し、最善のアプローチを検討し、解決に導くべく尽力致します。

案件によって、Flutterを使用したクロスプラットフォームアプリ開発ではなく、iOS・Androidそれぞれネイティブアプリで開発を行うという場合もございます。

その他の技術