Open9
サーバーサイドDart
よさげな記事
Flutterアプリとサーバーサイドのコード共有プラクティス
普通のREST APIは作れないのか?
Serverpodで自動生成されるAPIエンドポイント・クライアントは、すべてPOSTリクエストを利用しているし、エンドポイント名についても柔軟な指定はできず、定義クラス名が直接変換され用いられる模様。
単一のFlutterアプリに対して単一のバックエンドとして定義する際にはそれでも十分なのであろうが、マイクロサービスとして独立させたいときには不便だと思う。
参考:
REST APIを作るには、標準ライブラリdart:io等を使ってやるのが結局いいのかも?express.jsでサーバーレス関数(Lambda, Cloud Functionsなど)をサクッと書くときぐらいの感覚で使えそう。メッセージキューやタスクキューなどの仕組みを、フレームワークではなくクラウドに依存する構成なのであれば、Dartサーバーサイドのコード自体はその程度でも十分なのかもしれない。
標準ライブラリでREST APIは作れるが、openAPIスキーマによる自動生成とかはなさそう?
一方自動生成はgRPCならすでに対応している模様。
(クラウド依存であるため)フルスタックWebフレームワークとしての機能は必要なく、protocolやschemaに基づいたサーバーサイドとクライアントサイドのコード自動生成の恩恵を最大化したいなら、gRPCでエンドポイントを定義するのも良いかもしれない。