this post was submitted on 06 Dec 2023
84 points (74.7% liked)
Linux
48200 readers
1646 users here now
From Wikipedia, the free encyclopedia
Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).
Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.
Rules
- Posts must be relevant to operating systems running the Linux kernel. GNU/Linux or otherwise.
- No misinformation
- No NSFW content
- No hate speech, bigotry, etc
Related Communities
Community icon by Alpár-Etele Méder, licensed under CC BY 3.0
founded 5 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
I don't understand why desktop JS apps don't use React Native at least. It's still JavaScript but doesn't use a browser, and renders to native UI widgets. Far lighter than Electron.
Well with react native you still have to deal with the native problem which a developer doesn't want to deal with, you know... You could... But if they really cared about making the app efficient and well they would have had a different decision making process... People nowadays don't really just the right tool for the job, they just have a tool and try to turn it in a universal hammer and solve everything with it
The disadvantage with React Native is that you still have to maintain a UI for each platform because it maps to native widgets while a web UI works the same on every platform.
Business/application logic can be 80-90% of an app's code, and all of it can be reused across platforms. The actual UI rendering is just a small part of it.
In the UI code, some of it does have to differ across platforms but it's mostly the lower level components like buttons, text fields, etc. Some product UI code built on top of those abstractions can be reused across platforms.
Sure, but it's still more work than a web UI, and using a web UI is a lot more flexible. For example, say you want to render a chart or some other visualization. It's trivial to do with a web UI, but can be a tricky problem with native widgets, especially if you want to keep the UX consistent across platforms. I agree that using React Native can work fine in a lot of cases, but I can also understand the appeal of using the web UI stack. Another aspect is likely familiarity, people use the tools they know, and if somebody is already comfortable with a particular ecosystem they're likely to leverage it.