FlutterのためのDart製サーバフレームワーク「Serverpod 1.0」正式リリース。Dartでサーバからクライアントまで開発可能に
FlutterアプリケーションをクライアントとしたバックエンドサーバのためのDart製フレームワーク「Serverpod 1.0」がオープンソースとして正式にリリースされました。
これでFlutterによるクライアント開発だけでなく、サーバでもDartを用いた開発体験を得ることができるようになります。
We are live! Watch the @ServerpodDev 1.0 release keynote on Youtube. Over a year in the making. Finally you can write your #Flutter app #backend in #Dart.https://t.co/c5P1SGqiO5#FlutterDev #Dartlang #OpenSource pic.twitter.com/WZlW4ZRBgG
— Serverpod (@ServerpodDev) January 30, 2023
Serverpod 1.0発表イベントの動画を基にServerpodの特長を紹介していきましょう。
Serverpodの開発者Viktor Lidholt氏。
Serverpodは、Flutterコミュニティのための、Dartで書かれたオープンソースのスケーラブルなアプリケーションサーバだ。
Serverpodは高度なログ機能を備え、革新的なORM(Object-Relational Mapping)機能によってデータベースとのやり取りも非常に簡単。内蔵されたキャッシュ機能によりスケーラブルで、サーバでもクラスタ全体でもキャッシュが機能する。
(補足:データベースはPostgreSQLに対応し、キャッシュ機能はRedisを用いているようです)
Serverpodには、開発者が書いたサーバのコードを分析し、そのエンドポイントにクライアントがアクセスするためのコードを自動生成する機能がある。
まるでローカルでの呼び出しのように簡単にサーバのメソッドを呼び出せる。
ほとんどのアプリケーションで使われるような基本的な機能の多くをカバーしている。例えば、Amazon S3などへのファイルのアップロード、GoogleやApple、Firebase、電子メールなどに対応したユーザー認証やソーシャルログイン機能。
ストリーミングコネクション機能はリアルタイムにオブジェクトをサーバに渡せるため、ゲームやチャットなどのリアルタイムなアプリケーションに適している。
Future Callsは、一週間後にメールを再送するといった将来の関数の呼び出し予約を可能にする。
ヘルスチェックによってCPUやメモリなどのサーバの状態をチェックでき、Terraformによって非常に簡単にデプロイが可能だ。現時点ではAWSに対応するスクリプトが用意されているが、今後ほかのプラットフォームにも広げていく。
ログビューアで詳細なログ分析が可能で、そこからコードの問題箇所などに容易にたどり着ける。現在はMac対応のみで、今後ほかのプラットフォームにも対応する。
DartとFlutterのエコシステムがサーバにも広がる
Flutterは数日前にイベント「Flutter Foward 2023」を開催し、WebAssembly対応やWebアプリへの組み込みなどに対応するといった今後のビジョンを示しました。
また今年登場予定のDart 3も完全なNullセーフとなりRISC-Vに対応するなど、さらに進化の歩を進めることを明らかにしています。
参考:Flutterが進化する方向とは? WebAssemblyサポート、コンポーネントとしてWebアプリに組み込み可能に。Flutter Forward 2023
Serverpodの登場により、こうしたFlutterやDartのエコシステムがサーバにも本格的に拡大していくことが期待されます。
あわせて読みたい
マイクロソフト、AzureやMicrosoft 365などに影響した先週の大規模障害の原因報告。WAN内の全ルータが再計算状態に突入し、パケット転送が不可に
≪前の記事
人気のJavaScriptバンドルツール「webpack」の開発はなぜ終わり、後継として「Turbopack」の開発が始まったのか。開発者がその理由を語る