3 ms·
Dunno about Skip, but I can always tell when an app is Flutter. They feel like crap. Everything's a bit off with the native looking widgets. And fully custom de
by skavi 9mo ago
Dunno about Skip, but I can always tell when an app is Flutter. They feel like crap. Everything's a bit off with the native looking widgets. And fully custom designs still animate a bit weirdly. And they definitely still stutter. Somehow a tier below React Native.
- winrid 9mo agoFlutter re-generates the entire layout every tick and diffs it (immediate-mode), like a game engine. If your device isn't quite fast enough it'll lag, yep. RN is retained mode (but written in immediate-mode style and the diffing only happens when it has to).
- SoKamil 9mo agoInteresting, I didn’t know that it was immediate mode. According to the article [1] though, it now uses rendering engine with Retained Mode due to performance issues. [1] https://medium.com/@0s.and.1s/flutter-part-iv-skia-vs-impeller-graphics-engines-33327e408ba8 https://medium.com/@0s.and.1s/flutter-part-iv-skia-vs-impell...
- realusername 9mo agoI'd say it's the opposite, on crappy devices, Flutter feels faster than native, not sure how but that's the end result. I've been testing on an old Samsung J3 and it's definitely better than native. That's also maybe why it's so popular in India.
- agentifysh 9mo agoFlutter is essentially a game engine so it bypasses the typical cycles involved with native widgets and there are several different ways why Flutter works well on lower end phones
- matt_kn 9mo agoThat is absolutely not true. Elements with dirty layouts are tracked and layout is only recomputed up to the neearest layout boundary.
- winrid 9mo agoWeird, it looks like you're right but I recall their early marketing saying stuff like just rebuild the whole layout, it's cheap since it's compiled. They must have meant it's cheap to rebuild as needed haha
- duskdozer 9mo agoI've noticed several of the apps that don't respect device animation settings were built with Flutter. Not sure if that's a limitation of it or if the developers culturally don't bother.