Cookies op Tweakers

Tweakers maakt gebruik van cookies, onder andere om de website te analyseren, het gebruiksgemak te vergroten en advertenties te tonen. Door gebruik te maken van deze website, of door op 'Ga verder' te klikken, geef je toestemming voor het gebruik van cookies. Wil je meer informatie over cookies en hoe ze worden gebruikt, bekijk dan ons cookiebeleid.

Meer informatie

Door Tessie Scholten

[HQ] Concepts

Developers Summit - Jeroen Zonneveld geeft introductie over Flutter

31-01-2019 • 15:45

25 Linkedin Google+

Jeroen Zonneveld (Triple): "Flutter verovert de markt voor hybride development"

Wat is de meerwaarde van het nieuwe hybride UI-framework Flutter en de ontwikkeltaal Dart voor mobile developers? Jeroen Zonneveld, iOS-ontwikkelaar bij Triple, zocht het uit. Hij deelt zijn ervaringen op de Developers Summit 2019, 14 februari in Utrecht. Duidelijk is dat 'hybride ontwikkelen' steeds interessanter wordt.

Flutter is een nieuw mobile UI-framework van Google, dat ontwikkelaars in staat stelt mobiele apps voor zowel Android als iOS te maken met de programmeertaal Dart. Zonneveld (24) verzorgt tijdens de Developers Summit een introductie van Flutter, waarvan de 1.0-versie op 30 november vorig jaar verscheen. Tijdens het evenement gaat hij onder meer in op de benodigde componenten, de prestaties op mobiele apparaten en hoe ontwikkelaars de kwaliteit van hun app testen na de release.

IOS en Android steeds stabieler

Zonneveld rondde drie jaar geleden zijn studie Informatica bij Inholland af en startte vervolgens bij het Alkmaarse softwarebedrijf Triple, waar hij ook afstudeerde. "Daarvoor was ik als hobby vaak al aan het programmeren voor mobiele apparaten, maar bij Triple ben ik er pas echt professioneel mee aan de slag gegaan." Als iOS-ontwikkelaar kwam hij vorig jaar in aanraking met Flutter, waarvan hij de voordelen onderzocht voor zijn werkgever. "Verschillende ontwikkelingen zoals Xamarin, React Native en ook Flutter richten zich op cross platform development. Voor simpele apps werkt dat steeds beter, doordat de UI's van de platforms iOS en Android in de afgelopen tijd meer op elkaar zijn gaan lijken, bijvoorbeeld wat het weergeven van content betreft. De markt voor mobile development wordt steeds meer hybride en dat maakt Flutter voor ontwikkelaars interessanter."

GET YOUR TICKETS ⟩

Voor mobiele gebruikers is het nauwelijks nog te merken of een app 'hybride' of 'native' is ontwikkeld. Dit is een extra beweegreden om Flutter te gaan gebruiken, denkt Zonneveld. Tegelijk betekent het natuurlijk wel dat een nieuwe taal moet worden aangeleerd: Dart. "Het werkt allemaal net wat anders dan met Swift, waarmee ik gewend ben om te werken.”

Eerste indrukken van Flutter

Als hybride framework lijkt Flutter vooral efficiënt voor het ontwikkelen van apps die veel informatie op het scherm moeten tonen. Dat is tenminste de voorzichtige eerste indruk die Zonneveld als native developer opdeed. "Vooralsnog merk ik dat het lastiger is om het toe te passen voor apps die veel OS-api’s nodig hebben. Of dat echt zo is, zijn we nu aan het onderzoeken." Zonneveld merkt op dat er natuurlijk een groot verschil is tussen werken met een framework dat pas twee maanden geleden uit de bètafase is gekomen, en een waarin je in de afgelopen vijf jaar je weg hebt gevonden. "Sinds Swift beschikbaar is gekomen als opvolger van Objective C, ben ik ermee aan de slag gegaan. En ook deze taal blijft uitdagend, bijvoorbeeld door de updates die ieder jaar uitkomen.”

Mobile development blijft in ieder geval de leukste vorm van development, aldus de iOS-ontwikkelaar. "Leuker dan webdevelopment, want je ontwikkelt specifiek voor kleine schermen en dat maakt het echt een vak apart. De interactie die je met anderen hebt, vind ik leuk, want je kunt altijd direct aan anderen op je telefoon laten zien waar je mee bezig bent." Bij Triple, waar hij met 150 collega's een liefde voor nieuwe technologie deelt, gebeurt dat laatste regelmatig. Overigens wordt in het bedrijf, dat onder andere de helm van Max Verstappen heeft ontworpen, ook fanatiek gegamed aldus Zonneveld. "Een van onze directeuren neemt het regelmatig online tegen Max op in een potje FIFA. En ook daarin is Max erg goed, zo hebben we inmiddels ervaren!"

Evenementinformatie

  • Datum: donderdag 14 februari 2019
  • Locatie: DeFabrique, Utrecht
  • Tijden: 09.00 tot 20.00 uur
  • Partners: ABN Amro, Rabobank, Politie, Nedap, Adyen, IBM, ANWB, Inergy, Elect, Centric, TSS Group
  • Early birds: uitverkocht
  • Reguliere tickets: 275 euro
  • 3-voor-2-tickets: 183,33 euro per ticket (550 euro voor 3 tickets)
  • Studententicket: 75 euro
  • Meer informatie: tweakers.net/developerssummit

GET YOUR TICKETS ⟩

Reacties (25)

Wijzig sortering
Interessant dit! Je hebt tegenwoordig zoveel 'hybrid' frameworks. Denk maar aan Xamarin, React Native, etc. Deze ga ik voorlopig toch nog naast me laten liggen hierdoor:
"Vooralsnog merk ik dat het lastiger is om het toe te passen voor apps die veel OS-api’s nodig hebben."
Kies je voor snelle ontwikkeling of voor kwaliteit?
Snelle ontwikkeling -> framework
Kwaliteit -> native oplossing
Ik heb zelf bijna 8 jaar ervaring met frameworks, en het verbaast me altijd weer hoe laag dergelijke frameworks ingeschat worden. Met een klein beetje effort in app ontwikkeling kun je kwalitatieve apps maken ongeacht hoe je ze maakt.

Web-based is een no-go though, daar bereik je nooit de kwaliteit van Native, maar als je een framework als React Native, NativesScript, Xamarin of Titanium gebruikt dan kun je deze apps prime kwalitatief hetzelfde maken als native met weinig inspanning.

Sterker nog, mijn ervaring met Titanium leert me dat het makkelijker is om kwalitatieve app te maken met Titanium dan bij Native, aangezien veel dingen voor je opgelost zijn met Native API's.

Dat gezegd hebbende, Flutter werkt op een canvas en zal zich anders gedragen dan andere oplossingen die gewoon native API's aansturen.

Maar een beetje een goede implementatie van het framework, en ik kan niet zien of een app gemaakt is met een framework of native, tenzij je de APK's uitelkaar gaat trekken.
Het probleem met veel van de bestaande frameworks is (volgens mij) dat ze er erg snel niet native uitzien op minimaal 1 van de platformen, of beperkt zijn in hoe performant je code kan zijn, of enorm duur is.
Om Titanium als voorbeeld te nemen. Under the hood maakt ie 100% native elementen aan. Niks geen custom-UI. Dus alles ziet er volledig native uit op alle platformen, en zelfs als android/iOS UI veranderd, gaat de app gewoon standaard mee,

Performance is ook een probleem met native. Ik heb veel slecht performende apps gezien in alle omgevingen. Een beetje goede ontwikkelaar kan met alle oplossingen een goed performende app maken.
Ik heb wat door de documentatie zitten scrollen, maar het leek er op dat je alsnog platform specific code moest schrijven. En het is een javascript framework, als ik het zo zie, dus hoe pakt het multithreading op?
Een enkele keer platform specific code, voor dingen die uniek zijn op platformen. Maar 90-95% codesharing is zeker mogelijk.

Mutithreading hebben ze module voor, ti.worker. Die module maakt een nieuwe thread
Heb even gekeken en het klinkt interessant. Alleen lijkt die worker nog niet te werken op Android...
In native android is het vrij simpel om een app te maken die kleiner is dan 1 megabyte. Met frameworks wordt de omvang al snel vele malen groter bij dezelfde functionaliteit

gemak voor de programmeur is vaak ongemak voor de gebruiker (en omgekeerd)

[Reactie gewijzigd door veltnet op 31 januari 2019 16:07]

Alleen app-omvang als vereiste is wel een hele schrale manier van beoordelen wat je nodig hebt.

Elke app vereist een nieuw onderzoek naar de meest geschikte oplossing, maar als het gaat om Services en hardware interfacing dan heeft native toch vrij snel pluspunten.
"Web-based is een no-go though, daar bereik je nooit de kwaliteit van Native"

Heel veel "native apps" zijn "websites in een wrapper/container". Voor mobiele applicaties zijn er oplossingen als Cordova/Phonegap, maar je kunt natuurlijk ook een native app voorzien van een webbased interface. Daarnaast zijn er steeds meer webbased applicaties. Niet alleen worden de webapplicaties die draaien in een browser volwassen applicaties, maar worden desktop applicaties ook steeds meer geschreven met web technologieën waarvan je dat vaak geeneens weet. Zo gebruiken heel veel developers Visual Studio Code, wat eigenlijk een webapplicatie in een container is.

Wat je zegt over frameworks ben ik het mee eens. Je gaat in deze tijd toch geen geld en tijd steken in het weer opnieuw schrijven van je eigen framework. Wat ik veel om me heen zie is dat het minder interessant lijkt voor developers. En dat ze maar weinig moeite nemen om een framework te leren kennen om zo overwrites en hooks etc. te schrijven. Learning curve te hoog, dit en dat is technisch onmogelijk met dat framework, we willen onafhankelijk blijven. Diezelfde mensen hangen allerlei libraries aan elkaar, schrijven een bult aan glue code, zijn na een tijdje totaal het overzicht kwijt en hebben grote problemen uit te breiden of zelfs libraries te updaten en dan ligt het vaak aan alles behalve hun keuze uit het verleden.

Dat de footprint van een framework groter is, is evident. Maar so what. Een goed framework zal aan tree shaking doen tijdens het compilen. En dat het initieel groter is, is in deze tijd helemaal niet meer erg.
Kies je voor snelle ontwikkeling of voor kwaliteit?
Snelle ontwikkeling -> framework
Kwaliteit -> native oplossing
Voor basis-business apps kun je echt wel kwaliteit leveren met een framework.
Zodra het was complexer wordt, volg ik je mening
En ook weer een andere taal... Dart.
Nou ja. Als je Java, C#, o.i.d. kent is het echt niet zo moeilijk om er in te komen. Een aangezien Flutter voor OS functionaliteit, zoals Bluetooth, gebruik maakt van libraries die voor Android in Java of Kotlin en iOS in Objective C of Swift geschreven zijn, zul je met Dart zelf niet zo snel complexe code gaan schrijven.

Flutter is ondanks de 1.0 versie nog vrij barebones qua libraries. Er zijn er al best veel, maar je bent grotendeels afhankelijk van de community. Die maakt en onderhoudt ze. Zo is er voor Bluetooth Flutter Blue wat door één iemand onderhouden wordt.
Maar het is zo ideaal voor snel prototypen en om heel eenvoudig prachtige uitziende apps te maken. Dat is het mooie. Je hoeft weinig van mobile development te weten om met Flutter aan de slag te gaan.

Ik vergelijk Flutter een beetje met .net core. In het begin met versie 1.0 was daar ook nog wat twijfel. Maar die twijfel is inmiddels wel weg, vooral bij asp.net core. En met versie 3.0 komt er voor .net core UI functionaliteit en kun je desktop apps ontwikkelen voor Windows, Linux en Mac.

Met Flutter kan je straks ook apps ontwikkelen voor Android, iOS, web en desktop. Allemaal met grotendeels dezelfde code. Vergelijk het een beetje als dat je in Unity een export kan doen naar heel veel verschillende platformen.
Tja met JavaScript kan ik ook voor ieder platform ontwikkelen. Snel prototypen met PWA of bijv Ionic. Binnen een paar minuten heb ik een werkende APP, die de klant direct kan testen qua UX werking.
Maar als een prototype een werkend product zou opleveren uiteindelijk dan waren er heel wat problemen uit de wereld.
Vind het wel een mooi product hoor, maar na het Dart/Angular fiasco, geen idee wat het nog allemaal is. En Google kan natuurlijk morgen bedenken dat 10 talen in het bedrijf toch niet zo handig is, wat blijft er dan nog van over.

[Reactie gewijzigd door BramV op 31 januari 2019 16:37]

Maar wat je nu al met Flutter kan en de potentie die het heeft, lijkt mij dat op het lijstje alle ideëen en frameworks van Google deze vrij hoog staat.

Maar het is waar wat je zegt. Met Google heb je die zekerheid niet altijd. Ik heb bijvoorbeeld in .net core meer vertrouwen met de support van Microsoft er achter.
Vraagje, krijgen we nu om de paar dagen een topic over dit event. Met elke spreker zijn eigen topic of komt er nog een verzamel topic?
3150Hz ten behoeve van de WOW/flutter test.

aldus Ben Liebrand op de https://www.discogs.com/V...Recording/release/1061680

Wat is dat WOW / Flutter?
https://youtu.be/0G2kU1e9Cpo

[Reactie gewijzigd door djwice op 31 januari 2019 21:33]

Nou daar gaat ie weer van start hoor, hyper, hyper! I wanna see you sweat, yeah.

Had al reageert op een blogpost van deze meneer -> arnoraps
Ben de enige, dus moeilijk te missen. Mijn menig is overigens ongewijzigd gebleven.

Kleine reactie op deze zin in het artikel:
"Mobile development blijft in ieder geval de leukste vorm van development, aldus de iOS-ontwikkelaar. "Leuker dan web development in elk geval, want je ontwikkelt specifiek voor kleine schermen en dat maakt het echt een vak apart."

Dat is zeker een vak apart, maakt het niet erg flexibel dan, niet erg scalable dan waarschijnlijk.

[Reactie gewijzigd door codebeat op 1 februari 2019 02:26]

Moest bij het zien van het onderwerp denken aan de parody van Slate op Twitter:

https://www.youtube.com/watch?v=BeLZCy-_m3s
Waarom zijn die tickets zo enorm aan de prijs?
Dat zijn gewoon normale prijzen voor dit soort events.

Nu ga ik misschien weer een opmerking maken waar ik geen vrienden mee maak maar:
Als jij aan het hobbyen bent is zo'n event niet heel interessant. Wellicht omdat het niveau al te hoog is maar de overige meerwaarde; netwerken, specifieke ervaring opdoen, even een zakelijk dagje weg, etc. zijn niet zo relevant voor je. Als dat wel zo was; dan is het bedrag ook niet zo'n issue.

Anyway, dan kom je dus uit op de wat zakelijkere markt. Ik heb gewoon elk jaar 2000 euro budget voor persoonlijke ontwikkeling; certificaten, events, cursussen. Soms krijg ik ook gewoon kaarten zonder dat dit van mijn budget af gaat. Daarnaast is het niet zo gek dat je als IT prof zakelijk gezien 100++ per uur kost. Als er dan niet worst-case 275 af kan voor een 09.00 tot 20.00 uur evenement gaat er zakelijk iets goed fout.

Daarnaast is er heel schappelijk een: Studententicket: 75 euro.

Elk jaar en elk evenement zie ik dit geneuzel over de prijs. Fix een fatsoenlijke werkgever of wordt student.
Offtopic: Alles behalve de laatste alinea was constructief en droeg bij aan verduidelijking. Ik dank je voor alles behalve dat laatste. Daar heb ikzelf niet zoveel aan.

Ontopic: Ik vind dit soort events reuze interessant en toegegeven: ik heb er maar bar weinig bezocht en weet ook niet wat het voor me kan betekenen. Referentiekader: computerbeurs Jaarbeurs Utrecht. Dus je kan je misschien wel voorstellen dat ik een dergelijke vraag stel. In dit geval is 275 maar een schijntje als je er klanten Aan overhoudt. Al is 't maar om kennis op te doen.
Tickets voor zulke dingen zijn altijd vrij prijzig. Voor mezelf, als ik iets wil leren over een programmeer onderwerp tik ik het wel in in Google / Youtube. Daar staat dezelfde informatie gratis op. En om nu voor het "netwerken" naar zoiets als bovenstaands te gaan. Mja.

Op dit item kan niet meer gereageerd worden.


Apple iPhone 11 Nintendo Switch Lite LG OLED C9 Google Pixel 4 FIFA 20 Samsung Galaxy S10 Sony PlayStation 5 Auto

'14 '15 '16 '17 2018

Tweakers vormt samen met Hardware Info, AutoTrack, Gaspedaal.nl, Nationale Vacaturebank, Intermediair en Independer DPG Online Services B.V.
Alle rechten voorbehouden © 1998 - 2019 Hosting door True