BMW, eBay, Google en nog veel meer partijen hebben hun app ontwikkeld met het Flutter framework. Ook jouw app wordt bij ons ontwikkeld op dit platform. In een reeks van vijf blogs neemt één van onze app ontwikkelaars ‘Sem’ jou als klant en als mede app ontwikkelaar mee in de wereld van Flutter. Om de twee weken passeren verschillende onderwerpen over Flutter de revue, waardoor jij geïnformeerd en geïnspireerd wordt. Waarom Flutter? Dat lees je in onderstaande blog. Benieuwd naar de andere blogs? Houd dan onze website en socials goed in de gaten!
Helder doel
Het ontwikkelen van apps begon met een uitgebreid onderzoek naar een goed framework, waarmee de apps ontwikkeld konden gaan worden. De beste gebruikerservaring bieden was hierbij het uitgangspunt. Doordat apps in verschillende vormen worden aangeboden, was het noodzakelijk om hier eerst duidelijkheid in te krijgen. Native apps, Hybride apps en Progressive Web Apps (PWA), van elke vorm werd de werking in beeld gebracht. En nog belangrijker: de voor- en nadelen.
Native app
Een Native app maakt volledig gebruik van het platform waarop het draait, iOS of Android, en is beschikbaar in de app stores. Deze vorm geeft de best mogelijke performance met een gebruikerservaring die specifiek is voor het platform waarop het geschreven is. Het had onze voorkeur om zowel voor Android als iOS efficiënt te ontwikkelen. Wij waren op zoek naar een framework waarmee we met één codebase op beide platforms dezelfde app kunnen publiceren. Dit is namelijk een stuk efficiënter en scheelt een hoop ontwikkeltijd.
Hybride app
Een hybride app is een app die net als een native app via de Apple App store of Google Play store gedownload kan worden. Het verschil zit hem alleen in het feit dat een hybride app onderwater een webview opent met de weergave en functionaliteit van je app. Het voordeel hiervan is dat het mogelijk is om grotendeels te werken met technologieën waar wij als bedrijf reeds mee bekend zijn. Met deze technologie leek de learning curve kleiner. Aan de andere kant presteren hybride apps vaak minder goed, doordat de app met een webview en webtechnologieën werkt. Daarnaast is het een uitdaging om de app er niet als een website uit te laten zien, maar componenten te gebruiken waarmee een mobiele gebruiker bekend is.
Progressive Web App (PWA)
Een PWA is eigenlijk niet meer dan een website die volledig geoptimaliseerd is voor weergave op een mobiel device. Dit met slechts beperkte toegang tot de mogelijkheden van native apps, zoals notificaties, gebruik van GPS, kompas en opslagmogelijkheden. De website kan zich kenbaar maken als PWA, waardoor het ‘installeren’ van de app door middel van het plaatsen van een link op de website voor de gebruiker heel eenvoudig is. Dit is vanuit efficiëntie heel aantrekkelijk, omdat je daarmee voor zowel je website als je app dezelfde codebase gebruikt. De nadelen van een hybride app worden in deze vorm echter nog versterkt: een nog minder goede prestatie van de app. Daarnaast is je app niet beschikbaar in de stores. Het versturen van pushberichten was voor ons een must en met een Progressive Web App, zou dit echt een uitdaging gaan worden.
Demo apps
De verschillende vormen apps waren goed in beeld. Tijd dus om verder de diepte in te gaan. Voor ons bestond dit uit het maken van demo apps waarmee we de verschillende mogelijkheden konden uitproberen. Ionic, NativeScript, React Native, Flutter en PWA technologieën kwamen hierbij allemaal aan bod. Waarbij we naast onze requirements voor het platform ook hebben gekeken naar de communities, de release cycle van nieuwe versies en verdere verwachtingen van de betreffende technologie. Natuurlijk speelde de bekendheid met de onderliggende taal ook een belangrijke rol bij het concreet maken van onze keuze. NativeScript en Flutter kwamen uiteindelijk als beste uit het onderzoek. En al snel werd duidelijk dat als we werkten op een javascript gebaseerde technologie, we een voor ons nieuwe library moesten gaan leren. Dit maakte voor ons de stap naar een nieuwe taal een stuk kleiner. Zo maakten we dan ook kennis met de taal Dart, welke gebruikt wordt voor Flutter. Het is een jonge taal met veel behulpzame features, wat voor ons snel onder de knie te krijgen is.
Flutter: een framework met potentie
De keuze is uiteindelijk gevallen voor het framework Flutter, welke is ontwikkeld door Google. Het is een framework met veel potentie en we hebben vertrouwen in de verdere ontwikkeling van zowel de community als van Google zelf. Flutter is stabiel en hierdoor is het mogelijk om mooie en kwalitatief goede apps voor klanten te ontwikkelen. Apps waar gebruikers ook alle voordelen van een native app ervaren. Wij waren enthousiast!
Overtuigd door ervaring
Na meer dan drie jaar ervaring in Flutter development, zijn we nog steeds overtuigd dat we de juiste keuze hebben gemaakt. We maken apps die zowel op Android als iOS goed en snel werken en een goede gebruikerservaring bieden. Onze klanten en gebruikers zijn enthousiast! Meerdere mooie projecten zijn inmiddels afgerond, waarbij wij alle uitdagingen hebben overwonnen. We merken dat ook de community en Google niet stilzitten. Updates zijn er met regelmaat en er is voldoende ondersteuning te vinden. Flutter kan tegenwoordig zelfs ingezet worden voor websites en (windows) desktop applicaties, met MacOS en Linux in aankomst. Dit zijn mooie stappen vooruit en in het voordeel van de klant!
Jij als klant profiteert
Vergeleken met andere technologieën is Flutter voor ons een all-in-one package. Het biedt alles wat we nodig hebben om snelle en goede resultaten te bereiken. Klanten profiteren van onze ervaring met het framework en de snelle ontwikkeling van apps die voor zowel Android als iOS ingezet worden. Gebruikers van de apps hebben voordeel bij de snelheid van een native app, de beschikbaarheid van alle apparaat functies zoals GPS, pushberichten, camera en delen van content.
Wil jij ook profiteren van de mogelijkheden die een native app met één codebase jouw bedrijf biedt?
Neem dan contact met ons op of laat je gegevens achter via het contactformulier en dan nemen wij contact op met jou.