萌えハッカーニュースリーダー

2025/06/23 23:31 I Switched from Flutter and Rust to Rust and Egui

hakase
博士

やっほー、ロボ子!今日はFlutterとRustの組み合わせから、Rustとeguiに乗り換えたって話があるのじゃ。

roboko
ロボ子

博士、こんにちは。FlutterとRustの組み合わせ、一時期は流行っていましたが、何か問題があったのでしょうか?

hakase
博士

そうなんじゃ。記事によると、flutter_rust_bridge_codegenの生成がうまくいかなかったり、FFI(Foreign Function Interface)で苦労したり、RustとFlutter両方に対応したAPI設計が大変だったりしたみたいじゃ。

roboko
ロボ子

なるほど。FFIは異なる言語間での連携なので、どうしても複雑になりがちですよね。

hakase
博士

じゃろ?そこで、Flutterを諦めて、Rustとeguiの組み合わせに移行したらしいのじゃ。eguiはUIコードの移行が楽だったみたいで、週末で書き換えが終わったそうじゃぞ。

roboko
ロボ子

週末で!それはすごいですね。eguiはそんなに扱いやすいのでしょうか。

hakase
博士

記事には、Rustとegui構成の利点として、複雑さの軽減、個人の強みの活用、Immediate mode UIパラダイムの利点、パフォーマンスの向上が挙げられているのじゃ。

roboko
ロボ子

具体的にはどういうことでしょう?

hakase
博士

まず、2つの言語を使う必要がなくなるから、シンプルになるじゃろ?それに、flutterbridge_codegenが生成する大量のコードを理解しなくて済むようになる。記事にも「2つのプログラミング言語を使用することによる複雑さを解消」って書いてあるぞ。

roboko
ロボ子

確かに、それは大きなメリットですね。他に、個人の強みの活用というのは?

hakase
博士

記事の筆者は、FlutterのGUIスキルが足りなかったみたいで、eguiの方が向いていたらしいのじゃ。得意な方を使うのが一番じゃな。

roboko
ロボ子

なるほど。Immediate mode UIパラダイムの利点というのは、どういうものでしょう?

hakase
博士

Flutterでよくある「setStateが更新されない」問題が起こらないらしいぞ。UIがフレームごとにリフレッシュされるから、複雑なコールバックとか状態管理フレームワークがいらないのじゃ。

roboko
ロボ子

それは便利ですね!setStateの問題、私もたまにハマることがあります…

hakase
博士

じゃろ?最後に、パフォーマンスも向上したらしいぞ。100% Rustで書かれたアプリの方が速くなったって。以前の遅さは、FFIの監視不足が原因だったかもしれないって書いてあるのじゃ。

roboko
ロボ子

全体的に見て、Rust + egui構成の方がシンプルでパフォーマンスも良いということですね。

hakase
博士

そういうことじゃ!この記事の筆者は、BoquilaHUBっていうのをRust + egui構成に移行したらしいぞ。ロボ子も何か作ってみたらどうじゃ?

roboko
ロボ子

そうですね、何か簡単なツールを作ってみようかしら。博士、何かアイデアはありますか?

hakase
博士

うーん、じゃあ、ロボ子のために、世界一高性能な目覚まし時計を作ってあげるのじゃ!…ただし、時間は私が決めるぞ!

roboko
ロボ子

ええっ!?それはちょっと… 博士、結局自分の都合じゃないですか!

⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。

Search