Waarom Microsoft's Xamarin apps succesvol maakt

Screenshot van het gesprek tussen David en RemcoOm een app te bouwen, gebruiken app ontwikkelaars verschillende software. Welk technologie het beste resultaat geeft, verschilt van je wensen en de expertise van de ontwikkelaar. Remco Hereijgers is mede oprichter van Rebel:IT (rechts). Rebel:IT gebruikt het Microsoft platform Xamarin om voor Android, IOS en Windows apps te maken. Ik spreek Remco hierover en vraag waarom Rebel:IT nu juist kiest om met Xamarin apps te maken. 

Icoon lachende emoticonHoi Remco, jij bent van Rebel:IT, wat maakt jou een rebel?

Nou.. dat ik dingen misschien net even wat anders doe. Rebel:it is een paar jaar geleden opgericht met het doel om developers meer controle te geven. Bij grote bedrijven spreken ontwikkelaars de opdrachtgever eigenlijk niet of nauwelijks. Bij Rebel:it doen we het net even anders: hier brengen we opdrachtgever en ontwikkelaar samen. Het is voor beide partijen erg leuk om samen de app vorm te geven, te maken en te lanceren.

Dat is waar Rebel:it voor staat: het samenbrengen van opdrachtgever en ontwikkelaar.

Icoon groep mensenOke dus juist samen een succevolle app maken.. jij doet dit met een team?

Sinds januari bestaat ons team uit negen mensen. Iedereen heeft zijn eigen rol in het team. Het verschilt per opdracht hoeveel ontwikkelaars aan een app werken. Er is nauw contact tussen ontwikkelaars en de klant. Hierdoor overleggen en sparren wij met de klant, en maken we samen beslissingen over bijvoorbeeld de functionaliteit. Wij adviseren de opdrachtgever dan hoe dit eventueel te realiseren valt. Dat is waar Rebel:it voor staat: het samenbrengen van opdrachtgever en ontwikkelaar.

 

Illustratie van Android tegenover IOS

icoon logo xamarinEven wat anders.. Rebel:it werkt met Xamarin, een Microsoft technologie, terwijl de meeste apps worden gebouwd voor Apple of android. Hoe zit dat?

Dat komt omdat wij vanuit het verleden gespecialiseerd zijn in Microsoft technologie en dus echte Microsoft ontwikkelaars zijn en waren. Nu heeft Microsoft een soort cross-platform ontwikkelomgeving gerealiseerd: Xamarin. Cross-platform betekent voor Apple (iOS) en Android tegelijkertijd ontwikkelen. En dat kan dan op twee manieren: via Forms en Native

Icoon weegschaalWat is precies het verschil tussen Forms en Natives?

Forms bedient meerdere platformen, hierop bouw je als ontwikkelaar zowel apps voor IOS, Android en natuurlijk Windows. Je gebruikt hierbij XML-code, een bekende taal voor Microsoft ontwikkelaars. Deze code wordt omgezet in C# en deze programmeertaal is gelijk voor zowel Android, IOS als Windows apps. Het voordeel hiervan is dat je niet voor de verschillende platforms verschillende codes hoeft te schrijven. Hierdoor bouw je snel een app. Nadeel is wel dat het niet altijd exact aansluit omdat het bijvoorbeeld niet met Apple technologie is gebouwd, hierdoor kan het zijn dat bijvoorbeeld interface elementen wat te wensen overlaten.

Programeer je met Xamarin native dan gebruik je een aparte code voor Android en Apple. Het voordeel hiervan is dat de app qua performance heel dicht een echte Android en Apple technologie benadert.

Of je nu een IOS of Android app voor je hebt, onder de motorkap zit hetzelfde datamodel.

Icoon vraagtekenMaar, waarom gebruik je niet gewoon meteen de ontwikkeltechniek van Android of Apple?

Het grote voordeel van een Microsoft technologie is dat er sprake is van één programmeertaal. Ook als je Xamarin Native gebruikt. Met beide platforms programmeer je met C#. Hiermee ontwikkel je zowel voor Android als Apple een app. Het handige aan Xamarin is dat je code in zijn geheel deelt. Of je nu een iOS of Android app voor je hebt, onder de motorkap zit hetzelfde datamodel. Deze data kan je delen, dus ook al wil je een app laten draaien op meerdere besturingssystemen, je hebt maar één programmeur nodig.

Icoon groep mensen

Dus als ik het goed begrijp is het werken met Xamarin voor programmeurs efficiënt. Maar wat heeft de opdrachtgever hieraan?

In feite gaat om geld. Dat zit zo: je laat een app bouwen door een klein team. En er zitten niet allemaal extra schakels tussen, aan één ontwikkelaar heb je voldoende. Daarnaast hergebruik je de codering voor meerdere systemen. Dat betekent als er zich een fout voordoet, je het in één keer oplost voor beide systemen. Fouten en bugs filter je er sneller uit. En.. natuurlijk scheelt het veel geld omdat je maar één ontwikkelaar nodig hebt en maar één code hoeft te schrijven. Ook zijn de start- en onderkoudskosten een stuk lager door het gebruik van Xamarin.

foto van vuisten tegen elkaar

Icoon kruisWat is een reden om niet voor Xamarin te kiezen, welke projecten passen hier niet bij?

Elk project past bij Xamarin maar ze passen niet allemaal bij Xamarin Forms. Dit is de goedkoopste optie, en ook een goede optie als je niet teveel waarde hecht aan de ‘look and feel’. Nieuwste features komen niet meteen beschikbaar voor Forms, wel voor Xamarin Native. Als je het allernieuwste op het gebied van ontwikkelmogelijkheid wil dan is Native een beter alternatief.

Icoon geldAls iemand zijn app wil laten ontwikkelen door Rebel:IT, wat voor voorbereidingen moeten zij dan treffen?

Het is belangrijk dat ze vooraf de haalbaarheid van de app toetsen en zorgen voor genoeg financiële middelen. Bedenk dat een simpele app ongeveer €10.000 kost. Om te zorgen dat de app aan je wensen voldoet, moet je eerst een prototype (laten) maken, waarmee wij dan aan de slag om het echt te gaan programmeren.

Zoals Remco al aangeeft, moet je zorgen voor genoeg geld om je app te bekostigen. Ik kan mij goed voorstellen dat je zo’n smak geld niet zomaar tevoorschijn tovert. Download daarom hieronder de App Financiering Planning. In deze pdf zie je in één oogopslag hoe je aan financiering voor je app komt. Je komt ook achter welke financiering bij jou past en welke stappen je daarvoor moet zetten.

-David van AppSpecialisten

fase van jouw app
geschreven door
David van der Loo