5.5 Componenten van een app

Deze pagina is een concept. Reacties via nora@ictu.nl of tekstvoorstellen in de wiki zijn welkom.

Een app is de front-end van een mobiele oplossing. Een volledige mobiele oplossing bestaat uit meerdere componenten: een app, integratie en back-ends. In dit document zijn de backend-componenten niet weergegeven, wel zijn de integratiemogelijkheden met back-end uitgewerkt in een apart hoofdstuk integratie. Apps communiceren bij voorkeur met JSON/REST via de OpenAPI specificatie met back-ends om informatie uit te wisselen.

De softwarearchitectuur verschilt per type app:

  • iOS en Android apps. Beschrijvingen van de softwarearchitectuur voor native apps per operating system zijn te vinden via documentatie-sites van de diverse operating systems zoals iOS van Apple en Developers voor Android. Ook is het mogelijk om te kiezen voor cross-platform technieken als .NET MAUI, Compose Multiplatform/KMP, Flutter of React Native om iOS en Android apps te maken. Daarnaast kan gekozen worden voor hybride apps, een combinatie van native en HTML5 die in de app gebundeld is of van de server afkomstig is. Ontwikkeltools als Apache Cordova en Ionic Capacitor ondersteunen hierin. Ongeacht de technologie installeert de gebruiker een app op het toestel en de app interacteert middels JSON/REST met back-ends.
  • Web apps. De ingezette technologie is vooral HTML5, Javascript frameworks en CSS3. Flexibele grids en media queries zijn technieken die hierin gebruikt worden. “Media queries” is een CSS3 module die het mogelijk maakt om content rendering aan te passen aan condities zoals scherm-resolutie (bijvoorbeeld een smartphone versus een high definition-scherm). Er zijn ook vele Javascript-frameworks om hierin verder te ondersteunen. De gebruiker start een webapp met de browser of een snelkoppeling op het startscherm. Vaak zal de logica op de server draaien. De webserver van de web-app zal vaak via JSON/REST communiceren met back-ends.
  • Wearable Apps. Dit zijn apps die op de wearable geïnstalleerd worden. Sommige wearables ondersteunen internetverbinding vanaf de wearable. Andere kunnen alleen communiceren via Bluetooth. Wearable apps worden standaard native ontwikkeld met de ontwikkeltools voor het platform: WatchOS, Android Wear, Garmin, etc.

Volgende pagina: 5.6 Push-notificaties