- Rust wurde 8 Jahre lang zur „beliebtesten Programmiersprache“ gewählt, und viele Menschen möchten GUI-Programme in Rust schreiben.
- Hier wird ein Ansatz mit Flutter und
flutter_rust_bridge vorgestellt.
- Vorteile
- Flutter ist eine beliebte und ausgereifte Plattform, die von vielen Entwicklern und bekannten Marken genutzt wird, über ein großes Ökosystem verfügt und es leicht macht, gewünschte Funktionen umzusetzen.
- Dank der Funktion „Hot Reload“ ist die UI-Entwicklung schnell, und durch Cross-Platform-Unterstützung kann dieselbe Codebasis auf mehreren Plattformen ausgeführt werden.
- Nachteile
- Dieser Ansatz ist nicht zu 100 % reines Rust.
- Das ist jedoch ähnlich wie bei vielen anderen Rust-UIs, die Makros verwenden oder eigene DSLs mit anderen Sprachen wie HTML/CSS/Slint schreiben.
- Es gibt Kritik an der Web-Plattform.
- Sie eignet sich eher für „Apps“ im Web und auf anderen Plattformen (z. B. Google Earth, der Animationseditor von Rive usw.) als für statische Webseiten.
- Flutter erfordert viel Boilerplate-Code.
Was ist flutter_rust_bridge?
- Es erstellt eine Brücke zwischen zwei Sprachen, sodass sie wie eine einzige Sprache zusammenarbeiten.
- Es konvertiert automatisch verschiedene Typen,
&mut, async, Traits, Results, Closures usw.
- Neben der Umsetzung von Rust-GUIs mit Flutter gibt es vielfältige weitere Anwendungsfälle.
= Zum Beispiel kann man beliebige Rust-Bibliotheken in Flutter verwenden oder Code wie Algorithmen in Rust schreiben und anderen Code in Flutter verfassen.
1 Kommentare
Hacker-News-Kommentare
Ich habe es über mehrere Jahre hinweg bei der App-Entwicklung verwendet und war insgesamt zufrieden
tokio-Async große VeränderungenIch bin mir nicht ganz sicher, welche Vorteile es hat, die UI in Dart statt in Rust zu schreiben, aber ich bin ein Fan von flutter_rust_bridge
Eine lobenswerte Anstrengung. Ich verwende derzeit Tauri und bin neugierig auf die jeweiligen Vor- und Nachteile der beiden Ansätze
Ich nutze Flutter für die Desktop-UI und Rust für das Backend
Gut gemacht. Ich habe über rust_flutter_bridge nur Gutes gehört
Mir gefiel der Ansatz von Flutter zum Aufbau von UIs, aber Dart mochte ich nicht besonders
Ich finde, Googles Material Design und die Feuerwerk-Effekte sehen nicht gerade am besten aus
Ich frage mich, wie es um die Unterstützung für Barrierefreiheit (a11y) steht
Viel besser, als sich auf eine Chrome-Shell oder Web-Widgets zu verlassen; großes Lob für die Mühe
Interessant. IIUC frage ich mich, ob das mithilfe von Source-to-Source-Übersetzung erreicht wurde