this post was submitted on 02 Mar 2024
428 points (98.0% liked)
Open Source
31393 readers
176 users here now
All about open source! Feel free to ask questions, and share news, and interesting stuff!
Useful Links
- Open Source Initiative
- Free Software Foundation
- Electronic Frontier Foundation
- Software Freedom Conservancy
- It's FOSS
- Android FOSS Apps Megathread
Rules
- Posts must be relevant to the open source ideology
- No NSFW content
- No hate speech, bigotry, etc
Related Communities
- !libre_culture@lemmy.ml
- !libre_software@lemmy.ml
- !libre_hardware@lemmy.ml
- !linux@lemmy.ml
- !technology@lemmy.ml
Community icon from opensource.org, but we are not affiliated with them.
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
Agree. Will it be as performant as native? No. But will it be plenty performant for a password manager, yes.
The only thing I wish RN and Flutter would figure out is bloat. File sizes are huge compared to native. A shame there can't be a shared model in mobile apps for the core system.
Flutter is native. It gets compiled to an executable, it just takes a render plane from the underlying OS and renders everything in it's own engine. They're working on a new render system that will make it go even faster.
React Native is just a fancy web browser wrapping with some helper APIs.
React native is not a browser. It uses native components.
RN is native too I think, at least it advertises itself as a way to compile some kind of XML syntax into native widgets on either platform. An improvement to PWAs even if I despise typescript
yeah, it displays native widgets but there is still a js engine (browser) running in the background. So the basically made a layer between native components and Javascript. But the code which is running is js and js is slow.
yeah the JS/TS was always a killer for me ngl
JS by itself is very fast (it's one of the fastest dynamic languages). It's interop with platforms APIs that is slow, at the fact that each React app spins up its own instance of Chromium also doesn't help.
I guess smaller apps would be nice but that's also a thing that can be helped - I have a handful of flutter apps on my phone right now (that i know of) and they run in at:
18MB - Nextcloud recipes client
50MB - Spotube (Youtube music client with spotify integration)
100MB - My job - a savings and investments app, with half a dozen third party API integrations.
So depending on your scope and stuff you can really build an app to whatever size. Cant account for react native or blazor but the idea is usually just abstract native graphics APIs instead of using a browser runtime.