Hoe je betere prestaties uit je React Native-app haalt
Loves getting creative with mundane topics in addition to geeking out over books and movies.
Snel te bouwen, eenvoudig te gebruiken, ongelooflijke gebruikerservaring en indrukwekkende gebruikersinterface – React Native is de toekomst van hybride apps. Hoewel het goedkoper is dan het bouwen van een native app, ligt het voor op het gebied van snelheid, flexibiliteit en prestaties. Het is ook kostenefficiënt op vele manieren, waaronder het feit dat een enkele codebase kan worden gedeeld op meerdere platformen, waardoor onderhoud eenvoudig is. Geen wonder dat het wordt gebruikt door succesvolle bedrijven als Facebook, Instagram, Tesla en Discord, om er maar een paar te noemen.
Zelfs met dit alles zijn er meerdere manieren waarop de prestaties van een React Native app verder kunnen worden geoptimaliseerd. We zullen in dit artikel bekijken wat die stappen zijn.
1. Blijf op de hoogte
Het is belangrijk om altijd de nieuwste versie van React Native te gebruiken, omdat dit niet alleen de prestaties en de veiligheid van je app verbetert, maar hem ook compatibel maakt met de mobiele software die klanten gebruiken door de nodige aanpassingen te doen aan eventuele wijzigingen in zowel iOS als Android. Hoewel het enige moeite kost, geeft upgraden je toegang tot meer API’s en ontwikkelaarstools.
U kunt deze
korte handleiding
volgen voor het bijwerken van de React Native hoofdversie.
2. Bibliotheken upgraden
React Native wordt geleverd met een reeks ingebouwde componenten en API’s die klaar zijn voor gebruik. Soms hebben ze echter niet de functionaliteiten die je zoekt. Maak je geen zorgen, want je kunt altijd een bibliotheek uit de community zoeken en installeren. Het is algemeen bekend dat de React Native community bestaat uit duizenden ontwikkelaars die de behoeften van je project actief kunnen ondersteunen.
Meer informatie over het installeren en gebruiken van bibliotheken voor React Native
hier.
3. Slowlog gebruiken voor hoge prestaties
Slowlog staat bekend als een krachtige, op timer gebaseerde profiler voor React Native en is voor veel ontwikkelaars de beste keuze als het gaat om weergaveprestaties. Met dit hulpmiddel kun je een aangepaste drempel toevoegen, waardoor het gemakkelijker te gebruiken is. Je hoeft alleen maar de volgende enkele regel code toe te voegen en je kunt aan de slag met profiling:
slowlog(this, /.*/)
Dit hulpprogramma kan worden gebruikt als verdediging tegen grote prestatieproblemen, omdat het je waarschuwt als bepaalde bewerkingen in je app traag zijn.
Bekijk deze Tech Nugget-video over het Flutter vs React Native-conflict.
4. Debuggen met Flipper
Je kunt je React Native app meestal debuggen met console.log, maar met Flipper zie je meteen waarom je een foutmelding krijgt. Niet alleen dat, maar Flipper geeft je ook toegang tot native logs en helpt je om bugs op netwerkverzoeken op te sporen en deze vervolgens te debuggen. Je kunt Flipper ook gebruiken voor het debuggen van logboeken, React dev tools, crashrapporten, afbeeldingen en meer. Al met al is het een effectief hulpmiddel voor je React Native app.
5. Geheugenlekken vinden
Android Studio Profiler is een tool die kan worden gebruikt om de geheugenlekken in je React Native app te identificeren. Memory Profiler is een onderdeel in de Studio Profiler dat de lekken identificeert die de oorzaak zijn van vastlopende en crashende apps. Het toont ook een real-time grafiek van het geheugengebruik van je app.
Memory Profiler moet worden gebruikt om voor het volgende te zorgen:
- Ongewenste patronen in geheugentoewijzing identificeren die prestatieproblemen kunnen veroorzaken
- Objecten die geheugen gebruiken voortdurend controleren. Meerdere heap dumps over een langere periode kunnen helpen om de geheugenlekken eruit te pikken.
- Objecttoewijzingen controleren met betrekking tot welk type objecten werden toegewezen, de ruimte die ze gebruiken, de toewijzing traceren en of de objecten werden toegewezen. Het houdt vooral bij of de gealloceerde objecten geheugenlekken veroorzaken.
7. Gebruik native stuurprogramma
In elke app met afbeeldingen en animaties is het optimaliseren van deze animaties van het grootste belang. Met de Animated-bibliotheek in React Native kun je krachtige en vloeiende animaties ontwerpen die eenvoudig te bouwen en te onderhouden zijn. Door gebruik te maken van Native Driver worden de animatie-elementen naar native gestuurd, waardoor de animatie kan worden uitgevoerd op de UI thread. Dit zorgt ervoor dat de framerate van je app nooit onder de 60fps komt. Je kunt dan de JavaScript thread blokkeren zonder de animatie te hinderen. Gebruik het native stuurprogramma door het volgende op te geven
useNativeDriver: waar
in je animatieconfiguratie.
8. De opstarttijd van apps verbeteren
De lancering van een app is een nadelige factor bij het converteren van gebruikers op je app. Vertraging in de opstarttijd van React Native-apps kan worden toegeschreven aan de standaardimplementatie van React Native. Het enige wat je hier moet doen, is ervoor zorgen dat ‘Object.finaliseren‘ element is geregeld. De finalizers draaien op een enkele thread, wat zorgt voor enorme afhankelijkheden omdat alle objecten moeten wachten tot alle finalizers erdoor zijn.
9. Afbeelding optimaliseren
Een van de andere stappen is het verkleinen van de afbeeldingen met een image optimizer tool. Het is ook belangrijk om responsieve afbeeldingen te gebruiken voor optimale resultaten. Een paar andere tips die je in dit verband kunt volgen zijn:
- Kleinere afbeeldingen gebruiken
- Converteer je afbeeldingen naar WebMP-formaat. Dit kan het laden van je afbeeldingen aanzienlijk versnellen
- Gebruik JPG in plaats van PNG om het risico op geheugenlekken te verkleinen
10. Renders
Onnodige rendering kan je applicatie vertragen. Met React Redux kun je een rendertelling doorgeven aan je view. Dit geeft je inzicht in hoe vaak je weergave wordt weergegeven. Dit kan handig zijn bij het opsporen van onnodige renders door een logboek bij te houden.
Conclusie:
We hebben een aantal tools en acties op een rijtje gezet die je kunt gebruiken om de problematische onderdelen van je React Native app aan te pakken. Zoals je ziet kunnen deze problemen worden opgelost door tools te gebruiken die ervoor zorgen dat je app optimaal presteert. Zorg er ook voor dat je de resultaten volgt nadat je deze in actie hebt gebracht. Zolang je de prestaties in het oog houdt, kan je React Native app onberispelijke prestaties en een heerlijke gebruikerservaring leveren.