Skip to content

Inleiding React Native

INFO

Lesinhoud

In deze les overlopen we de doelstellingen en inhoud van de cursus. Vervolgens maken we kennis met React Native en Expo. We zetten een lokale ontwikkelomgeving op waarmee we applicaties gaan kunnen bouwen.

Doelstellingen

De student(e) kan:

  • Op basis van een JavaScript framework, een mobiele applicatie ontwikkelen voor smartphones en/of tablets.
  • De basisconcepten toepassen voor het ontwikkelen van mobiele toepasssingen.
  • Data aanroepen van een externe bron (API) en deze integreren in de mobiele applicatie.
Inhoud

Wat is React Native?

Inleiding

Om aan React Native te kunnen beginnen is het belangrijk dat je de basisbeginselen van JavaScript onder de knie hebt. React Native is namelijk volledig geschreven in JavaScript. Het kan ook zinvol zijn dat je al een notie hebt van JavaScript frameworks. In het beste geval van React zelf.

React maakt gebruik van JSX (JavaScript expressions), een preprocessor stap die XML syntax toevoegt aan je JavaScript. JSX is vrij eenvoudig te leren en lijkt erg op XML.

Het is verder ook van belang dat je jouw denkproces aanpast en niet denkt als webontwikkelaar, maar wel als ontwikkelaar van mobiele applicaties. Vooral op het gebied van ontwerp en architectuur zijn er wezenlijke verschillen.

React Native

React Native is een UI-framework waarmee je JavaScript en React kunt gebruiken om native (iOS- en Android) mobiele applicaties te bouwen. Het grote voordeel is dus dat je maar één taal en één codebase nodig hebt voor het bouwen van platformonafhankelijke applicaties bruikt als andere native apps.

Meta ontwikkelde in 2013 React en sindsdien is React enorm populair geworden voor het bouwen van webapplicaties. React Native begon als een klein project van Meta tijdens een hackathon in de zomer van 2013, en werd na een paar jaar open source gemaakt als React Native in maart 2015.

Ondertussen wordt React Native heel veel gebruikt. Veel van de populaire apps die je momenteel op je telefoon gebruikt, zijn waarschijnlijk met React Native gebouwd. Op de github pagina kan je zien dat het in meer dan 2 miljoen pakketten wordt gebruikt en dat er meer dan 2500 contributers zijn. Dit laat zien hoe de bibliotheek in de loop der jaren is gegroeid, het aanzienlijk stabieler is geworden dan een paar jaar geleden.

Wie gebruikt React Native?

Vandaag de dag gebruiken duizenden apps React Native.

Populaire apps die je misschien dagelijks gebruikt en die gebouwd zijn met React Native:

  • Meta: De belangrijkste ontwikkelaar van dit framework heeft een reeks producten gebouwd met React Native, zoals de Facebook applicatie, Facebook Ads Manager, Oculus en Messenger Desktop.
  • Microsoft: Microsoft heeft gebruik gemaakt van de kracht van React Native om een hele reeks applicaties te bouwen, waaronder Microsoft Office, Outlook, Teams en Skype.
  • Shopify: Deze e-commerce gigant gebruikt React Native voor hun mobiele applicaties.
  • WiX: Een populaire websitebouwer die ook gebruik maakt van React Native.
  • Pinterest: De favoriete site voor het verzamelen van afbeeldingen maakt gebruik van React Native.

Native Apps vs. React Native

Wat zijn de verschillen tussen het bouwen van apps met native technologieën en het bouwen van apps met React Native?

Native Applicaties

Bij native applicaties gebruiken we ofwel Objective‑C of Swift om iOS-apps te bouwen en Java of Kotlin om Android-apps te bouwen. Dit zijn totaal verschillende technologieën, en meestal heb je gespecialiseerde iOS-ontwikkelaars en Android-ontwikkelaars die elk hun eigen versie van de app bouwen.

React Native

Met React Native bouw je de applicaties met behulp van JavaScript en React, en kun je zowel iOS- als Android-apps bouwen. Dit is het belangrijkste verschil tussen native app-ontwikkeling en React Native.

Verschillen in Codebases en Teams

  • Native Apps: Meerdere codebases en meerdere teams om iOS- en Android-applicaties te ondersteunen.
  • React Native: Eén codebase en één team voor zowel iOS als Android.

Het ondersteunen van meerdere codebases kan tijdrovend zijn, omdat je meer tijd moet besteden aan ontwikkeling en coördinatie tussen de teams. React Native blinkt uit in dit aspect omdat het een snellere ontwikkeling mogelijk maakt met één codebase, wat betekent dat het gemakkelijker te onderhouden is, bugs sneller gevonden en opgelost kunnen worden, enzovoort.

Prestaties

  • Native Apps: Bieden de hoogste prestaties omdat ze gebruik maken van native iOS- en Android-talen.
  • React Native: Kan iets lagere prestaties bieden in vergelijking met native applicaties.