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
KDDI、通信網と請求管理の中継システムをクラウド化–オラクルとNECで実施
IT関連
2024-02-11 11:45
日本企業の脆弱性管理に苦言を呈するテナブル日本代表の危機感とは
IT関連
2022-02-05 18:38
スニーカーとストリートウェアの帝国「GOAT」がシリーズFで評価額が4103億円超に
ネットサービス
2021-06-26 23:52
グーグル、AIチャットボットに機密情報を入力しないよう従業員に警告
IT関連
2023-06-20 15:56
100W GaN電源を多機能USB-Cハブにしてしまったクラファン製品の実力 M1 MacBookとiPadで使えるか試してみた
IT関連
2021-05-09 07:20
HPE、予想上回る第2四半期決算–売上高が11%増
IT関連
2021-06-03 00:50
Dataiku Japan、日本市場向けの事業戦略を説明–日常業務でのAI/ML活用を促進
IT関連
2023-09-07 09:37
パナソニック ライフソリューションズ社「Panasonic Accelerator by Life Solutions Company」が参加企業募集
VC / エンジェル
2021-08-04 03:23
ゼロボードとNSSOL、金融機関向け「投融資先GHG算定サービス」を共同開発
IT関連
2023-12-15 21:43
ウイングアーク1st、スモールデータの収集プロセスを自動化する機能を提供
IT関連
2023-06-02 22:50
紙での契約締結が76%、契約書検索に1人当たり月10時間–Sansan、紙の契約書に関する調査
IT関連
2024-03-07 21:05
こんな場所にも浸透? あなたの知らない“生体認証”の世界
PR
2021-03-11 16:59
「LinkedIn」にOpenAIの「GPT」を活用した新機能–プロフィールと求人情報の作成を支援
IT関連
2023-03-18 13:25
「ChatGPT Plus」、ウェブブラウジングと70種類以上のプラグインを追加へ
IT関連
2023-05-17 09:06