Dart言語のフレームワーク「Flutter 2」公開。単一コードでiOS/Android/Web/Win/Mac/Linuxのネイティブアプリ実現。WebAssemblyによるレンダリングエンジン搭載

今回は「Dart言語のフレームワーク「Flutter 2」公開。単一コードでiOS/Android/Web/Win/Mac/Linuxのネイティブアプリ実現。WebAssemblyによるレンダリングエンジン搭載」についてご紹介します。

関連ワード (世間、今年、安定版等) についても参考にしながら、ぜひ本記事について議論していってくださいね。

本記事は、Publickey様で掲載されている内容を参考にしておりますので、より詳しく内容を知りたい方は、ページ下の元記事リンクより参照ください。


Googleは、Dart言語のフレームワーク「Flutter 2」の公開を発表しました。

Flutter 2では、Webアプリケーション開発機能が安定版となり、さらにWindows、Mac、Linux対応のアプリケーション開発も早期リリースフラグ付きの安定版になりました。

これによりFlutter 2は、単一のコードベースでiOS、Androidのネイティブなモバイルアプリケーション、Windows、Mac、Linuxのネイティブなデスクトップアプリケーション、Webアプリケーション、そして組み込みデバイスのアプリケーションまで生成できる、マルチプラットフォームのアプリケーション開発に対応するフレームワークとなりました。

fig

Flutter 2で用いられているDart言語は今から10年前、2011年にGoogleが「JavaScriptは単なる言語の進化では修正できない根本的な問題を抱えている」としてJavaScriptの代替を目指すWeb言語として開発したプログラミング言語でした。

参考:グーグル、新言語「Dart」を発表。JavaScriptのようなWebプログラミングを想定

いずれはDartVMがChromeに搭載される予定でしたが、Googleが期待したほどにはDartは普及せず、2015年にはChromeへのDartVMの搭載を断念。JavaScriptへのトランスパイラとなる方向性を打ち出します。

Darは世間からの注目を失いつつありました。そして2017年にTypeScriptがGoogle社内における標準言語の地位を獲得すると、DartはGoogle社内のWeb開発言語としてもTypeScriptとAngularに地位を脅かされるようになります。

こうした中、2018年にDart言語チームは突然「Dartを再起動する」としてDart 2を発表。Dart 2では型推論によってコードの品質を高める支援を行い、newやconstをオプションにすることで、より直接的にUIをコードで表現できるように強化されました。

そしてDart 2に対応したモバイルアプリケーション用のUIツールキット「Flutter」も発表され、Dartの復活劇が本格的に始まったのです。

参考:Googleが「Dart 2」発表、Dartを再起動。iOS/Android用ライブラリ「Flutter」と共にWebとモバイルのクライアント開発にフォーカス

Flutterは、単一のソースコードでiOSとAndroidのそれぞれに対応した美しいモバイルUIを実現する、ネイティブアプリケーション開発が可能なUIフレームワークとして登場しました。

2018年12月にFlutterがバージョン1.0に到達。

同時に、FlutterをWindows、Mac、Linuxに対応させる新プロジェクト「Flutter Desktop Embedding」と、FlutterアプリをWebアプリに変換する「Hummingbird」プロジェクトも発表され、Flutterはマルチプラットフォーム対応のフレームワークへと踏み出すことになります。

2019年5月、Hummingbirdによる実証が確認されたとして、FlutterをWebアプリへ正式に対応させる「Flutter for Web」を発表しました。

そして今回、リリースが発表された「Flutter 2」では、Webアプリケーション対応が安定版となりました。

fig2

Webアプリケーション対応では、WebAssemblyによる高速なレンダリングエンジン「CanvasKit」を搭載することで、ネイティブアプリケーションのように柔軟なグラフィックとUIを実現しています。

SPA(Single Page Application)やPWA(Progressive Web Application)などの開発にも対応します。

下記はお掃除ロボットのルンバで知られるiRobot社がFlutterで開発した教育向けプログラミング環境のWebアプリケーション画面です。

fig3

Flutter 2では、Windows、Mac、Linux対応のデスクトップアプリケーション開発も早期リリースフラグ付きの安定版のとなりました。

fig4

さらにFlutter 2は組み込み機器への対応も始めており、トヨタが新しい自動車向けのインフォテイメントシステム(インフォメーション+エンターテイメント)の開発にFlutter 2を採用したことが発表されました。

fig5

また、FlutterとDart対応のデバッグツールとしてステップ実行やブレークポイントの設定、スタックの状態の調査、レンダリングの状況、ネットワークの状況などを把握できるFlutter DevToolsがVisual Studio CodeとAndroid Studioで利用可能であることも発表されました。

fig6

このようにDartとFlutterは、マルチプラットフォームに対応したプログラミング言語およびフレームワークとして大きな発展を遂げようとしています。課題があるとすれば、Dart言語の人気を今度どうやって高めていくか、という点にあるでしょう。

その点で、同じくマルチプラットフォーム対応の競合フレームワークとして台頭しようとしているのがマイクロソフトの.NETです。.NETも今年11月に登場予定の.NET 6でXamarinの統合が完了します。

さらに.NET 6ではWindows、Mac、iOSやAndroidなど複数のプラットフォームのユーザーインターフェイスを記述できるUIキット「.NET Multi-platform App UI」(.NET MAUI)も含まれる予定です。

参考:マイクロソフト「.NET 6」初めてのプレビュー版リリース。Xamarin統合、マルチプラットフォームUI、Blazorでデスクトップアプリ、Apple M1ネイティブなど

つまり.NETも単一のソースコードから、iOS、Android、Windows、Mac、Linux、Webとあらゆるプラットフォームに対応したアプリケーションを構築するフレームワークとなります。

これまでも、マルチプラットフォーム対応を実現するというプログラミング言語とフレームワークは登場してきましたが、実際のところそれに成功し定着したといえるものはまだ存在しないといっていいでしょう。

果たしてGoogleのFlutter 2は、そしてマイクロソフトの.NETは、そうした成功にたどりつくフレームワークになるのでしょうか。

COMMENTS


8990:
2021-03-09 21:35

【機構城、ミカゲ光無効パ】 一応全対応になったと思います 2、3Fの指減少、回復減少、消せないの対策が出来てるので序盤から安定。 代用等含め、簡単にまとめたのでどうぞ 改訂版です

9001:
2021-03-09 18:57

「Microsoft Edge 89」の安定版にスリープタブや垂直タブが初期搭載 - 窓の杜

9000:
2021-03-09 18:38

【注目記事】   「OnePlus Nord」向けに「Android 11」ベースの安定版「OxygenOS 11」がリリース

8993:
2021-03-09 16:50

星龍チャレンジ、ミカゲ光無効パの自分なりの安定立ち回りの改良版です 3F闇魔剣士出ても44で耐えられるように片方のミカゲの遅延耐性を闇軽減+に変更しました 敵の行動は攻略サイト見ながら作ったので、間違えてたらごめんなさい?‍♂️…

8994:
2021-03-09 13:13

しんさん、ありがとうございます!? 自分なら2時間でここまでは弾けないです!安定していく過程が楽しみです。ちなみに何かで見ましたが、映画版?のソロギターしらべは難易度Aと言いながら実態はほぼCという噂を聞きました。なので難しいのかもしれません。

8997:
2021-03-09 12:41

「Microsoft Edge 89」の安定版にスリープタブや垂直タブが初期搭載/悪用が確認済みの脆弱性修正も含まれているので注意。できるだけ早い更新を はよChromeも垂直タブ導入しなさいよ

8999:
2021-03-09 10:25

テスト配信終了しました~! 安定して普通に配信出来ていたので、大丈夫そうですね…? ヨカッタ??? テスト配信にお付き合い頂いた方もありがとうございます? チュートリアルもろくに出来ませんでしたし、ウマ娘のDMM版が10日リリースなので、…

8995:
2021-03-09 10:11

楽天の注目キーワード 第19位「スマートウォッチ」をAmazonで検索!! アマゾンのセールスランク 12 位! 【最新Bluetooth5.0 IP68防水】スマートウオ… 【接続安定&運動ビジネス兼用】2021最新改良版…

8998:
2021-03-09 03:25

【Microsoft、「Visual Studio Code」v1.54を公開】 ・米Microsoftは3月5日(現地時間)、コードエディター「Visual Studio Code」の2020年2月アップデート(v1.54)を…

8991:
2021-03-09 02:34

【Apex/スイッチ版】フレームレート(fps)を上げる!安定させてカクつきをなくす設定

8996:
2021-03-09 02:21

ワンドライブが同期出来てないだけだからそれじゃないとおもう!! ブルスタの設定で パフォーマンスは中以上、グラフィックエンジンを互換性にして、32bit版で安定してる! 結局64bitは使ってない!

8992:
2021-03-09 01:18

ワーキングアニメ見返してるけどやっぱ、犬組の方が面白いなー。高津カリノ先生の漫画はワーキング、ワーキングweb版、サーバントサービスの3つしか知らんけど安定に面白い

Recommended

TITLE
CATEGORY
DATE
地球低軌道で撮影されるハイパースペクトル画像を提供するWyvernが約5.2億円調達、2022年に同社初の打ち上げを予定
IT関連
2022-01-19 04:14
生体認証VS.パスワード–デジタル認証に関する意識調査
IT関連
2023-04-04 16:00
サムスン電子、レッドハット製品上でのCXLメモリーの動作を実証
IT関連
2023-12-29 08:34
AIで5Gネットワークの障害を自動復旧 KDDIと日立など4社が実験
ロボット・AI
2021-02-10 18:51
米国のワクチン接種証明アプリ、倫理面でのリスクが潜む中で企業による開発が進む
パブリック / ダイバーシティ
2021-07-06 00:40
中小企業でも使えるDiginexのESGレポート作成プラットフォーム
EnviroTech
2021-05-10 21:21
「Windows 10 21H1」は大型アップデートにはならない見込み
IT関連
2021-02-17 12:54
オラクル、標準のPostgreSQLより最大3倍速い「OCI Database with PostgreSQL」を正式サービスとして提供開始
Oracle
2023-11-22 11:55
Google、「Workspace」に関し“誰でも無料に”、「Room」を「Spaces」に、などの発表
アプリ・Web
2021-06-16 00:07
友達少ない社長が作った「人間関係をよくするアプリ」って?
くらテク
2021-04-21 15:50
コロナ禍で苦しむ製薬会社のDXを進める、業界特化型デジタルマーケのフラジェリンが1.5億円調達
ソフトウェア
2021-03-25 01:37
Zoom、遠隔医療向けモバイルクライアントを提供開始–まず「iOS」から
IT関連
2021-08-11 23:08
「Windows 10」も「Copilot」搭載へ–マイクロソフトが方針転換
IT関連
2023-11-18 03:20
バッテリー発火の延焼を防ぐ「消火フィルム」 凸版印刷が開発 リチウムイオン電池や配電盤に
最近の注目ニュース
2021-02-04 04:01