アクトインディ開発者ブログ

子供とお出かけ情報「いこーよ」を運営する、アクトインディ株式会社の開発者ブログです

Rust で Web アプリを作った感想

こんにちは、tahara です。

弊社のメインは Ruby on Rails ですが、 簡単な周辺システムは担当者の好きな言語を使って作ったりします。

今回は Rust を使って MySQLAmazon Aurora)のレコードや MongoDB に入っいるログを集計して表示する Web アプリを Rust で 作った感想です。

とりあえず動くだけの稚拙なコードですが、 ソースはこちら outing-mining-rust

使っている主なライブラリ

苦労したところ

  • コンパイルがとおるライブラリの組み合わせがなかなか見付からない
    • ライブラリによって依存している openssl が違ったりして、ライブラリの更新待ちしたり…
    • これが一番苦労したと思います。
  • トライアンドエラーのサイクルの時間がかかる
    • コンパイルが必要なので修正から動作確認するまでの時間がもどかしいですね。
    • Scala などでも同様の事情かと思いますが、みんなどうしているんでしょう?
    • Java だと実行前にリンクせず動的に class ファイルをロードし、 最適化も実行時なのであまり問題にならないのかも。

よかったところ

  • だいたんに修正できる
    • コンパイラが修正もれを拾ってくれるので修正に対してだいたんになれます!
  • ビューの修正はコンパイル不要
    • ビューには handlebars-iron を使っていますが、 開発時だけ Live reload 機能でリコンパイル不要にできたりします。
  • 楽しい
    • 他の言語にはない新しい概念がいろいろあってRust 楽しいです。

Rust での Web 開発もわるくないですよ。