linebender / druid

A data-first Rust-native UI design toolkit.
https://linebender.org/druid/
Apache License 2.0
9.55k stars 569 forks source link

[question] What is the execution efficiency of desktop applications developed in Rust? #2407

Closed liaodalin19903 closed 1 month ago

liaodalin19903 commented 1 month ago

What is the execution efficiency of desktop applications developed in Rust?

We know that the Rust Tauri framework is a GUI framework developed in Rust. Is the execution efficiency much lower than that of desktop applications written in C/C++?

Is it recommended to use Rust to develop desktop applications like Photoshop and Premierer?

jaredoconnell commented 1 month ago

You may want to discuss this on the linebender zulip instance. Druid is scheduled to be archived.

The answer is definitely very nuanced. To summarize my personal thoughts and observations, Rust is a very performant language, but the GUI options are not very mature. I'm sure it's possible to develop a program like Photoshop or Premiere, but first you'd need to figure out what dependencies you'd utilize, evaluate where the gaps are, and you'd need to do the work to fill the gaps yourself. For example, one thing you'd need to determine is whether you're going to do CPU or GPU rendering for the photo processing in the applications you've mentioned.

In terms of Rust UI, the Linebender projects have potential, but most are still in alpha and beta states. Xilem is designed to be highly performant, and it utilizes Vello, which is utilizing state of the art techniques to maximize efficiency.