This makes sense. Through this approach, you can still use the UI technologies of the web while harnessing all the power of the computer with a much more optimized language. However, this feature of Tauri is very rarely seen in other frameworks. Also, WebAssembly is a great thing but has some sort of absence in the web. But why is this approach of two different languages so rare? To answer this question, we must first familiarize ourselves with the huge difference of these two languages.
We cannot avoid a technical comparison of these two languages if we want to approach this question. However, I want to keep it short.
Rust on the other hand is a compiled language for system programming. This means that Rust code is converted into machine code before it is being shipped. The resulting binary is therefore highly optimized. Also, the language gives more access to system resources like memory, increasing the complexity of the implementation. However, you have nearly total control over your program.
When speed and UX meet
But when is such a fast pace required? There was only one project in the recent past where I needed to use Rust.
Some time ago, I wanted to build a small Markdown editor with live preview using Tauri (similar to VS Code). For the parsing of the Markdown, the library „marked“ was used. So nice, so good.
But after some time I noticed a certain latency that comes up when working with larger texts. This has to do with the fact that with every keystroke, the whole text had to be regenerated in the preview. The larger the document, the more work for the parser. It surprised me a little bit how fast I got into this bottleneck. Now, there are many ways to help here.
To come back to the question from the beginning: I think desktop apps are a rare field where the requirement of great UX and awesome performance come together. IoT could have similar requirements in the future too. However, it may not share the need of great user experience. Maybe, we will see this dual language approach more often in the future.
Schreibe einen Kommentar