Wat is cross platform development? Wat zijn de voordelen en nadelen van het ontwikkelen van een applicatie in één codebase die ondersteund wordt door meerdere besturingssystemen tegelijk? Flutterexpert van B-Synergy Paul Schunck vertelt alles over cross platform development en hoe en waarom B-Synergy hiermee werkt.
Wat is cross platform development?
Cross platform development is het ontwikkelen van één applicatie die wordt ondersteund door meerdere besturingssystemen en/of platformen, zoals een Windows PC, een MacBook, een Androidtelefoon of iPhone. In de praktijk betekent dit dat de applicatie in één codebase wordt ontwikkeld en dat deze vervolgens kan worden gecompileerd, zodat het resultaat op verschillende platformen kan worden gedraaid.
Waarom is het handig om hiermee te ontwikkelen?
Zonder cross platform ontwikkeling, moeten ontwikkelaars voor elk platform een aparte versie van de applicatie ontwikkelen.
Wat zijn de voordelen van cross platform development?
Het grote voordeel hiervan is dat er maar één versie van de app hoeft te worden ontwikkeld en onderhouden. Hierdoor hoeft er ook maar één programmeertechniek te worden gekozen en is de code herbruikbaar voor de verschillende platformen. Op deze manier hoeft een ontwikkelaar geen kennis te hebben van alle verschillende platformtechnieken en de bijbehorende platform-specifieke programmeertalen.
Andere voordelen zijn dat er minder ontwikkeltijd nodig is en minder ontwikkelaars om dezelfde app voor meerdere platformen te maken. De kosten zijn daarom veel lager. En, in tegenstelling tot het ontwikkelen van verschillende versies van de applicatie voor elk platform, is er met cross platform development veel meer eenheid en consistentie van de applicatie als je naar de verschillende platformen kijkt.
Wat zijn de nadelen?
Bij wat meer geavanceerde en grotere applicaties kan een nadeel zijn dat je soms toch platform-specifieke functionaliteit hebt, zoals bijvoorbeeld het gebruik van Apple-login, Bluetooth of het gebruik van de camera. En afhankelijk van de techniek, zal een native applicatie net iets beter presteren dan eenzelfde cross platform applicatie. Echter, in de praktijk zal dit door gebruikers niet opgemerkt worden.
Als techbedrijven met nieuwe features komen voor hun eigen platform of besturingssysteem, dan kan het een tijd duren voor deze feature ook beschikbaar is voor het cross platform framework waarin de applicatie wordt ontwikkeld.
Wat zijn de kosten van cross platform development?
Het is erg afhankelijk van welke cross platform techniek wordt gekozen. Ik werk op dit moment vooral met Flutter Dit is een cross platform framework van Google. Het is opensource en daarom gratis te gebruiken. Ook zal cross platform ontwikkeling minder ontwikkelaars, ontwikkeltijd en dus ook minder duur zijn om te maken, dan een tegenhanger die niet ontwikkeld is met een cross platform techniek.
Hoe is het om met Flutter te werken?
Het is erg prettig dat alles met dezelfde techniek kan worden ontwikkeld. De leercurve is ook erg vlak waardoor het voor ontwikkelaars, die zich deze techniek willen eigen maken, ook makkelijk op te pakken is. De Fluttercolleges die ik heb gegeven bij B-Synergy werden erg enthousiast gevolgd door mijn collega's en ik vond het opvallend hoe snel ze deze techniek zich eigen konden maken.
Wat is het verschil tussen Flutter en LowCode?
Flutter is geen LowCode want Flutter is geen visuele of model gedreven ontwikkelomgeving. Je zou Flutter wel Rapid Application Development (RAD) kunnen noemen door de krachtige manier van ontwikkelen met de hot reload functionaliteit en natuurlijk omdat er maar 1 codebase nodig is voor web, mobile, desktop en embedded.
B-Synergy is toch gek op LowCode?
B-Synergy is inderdaad hét SAP-LowCode bureau van Nederland. Onze mensen hebben meer dan 10 jaar ervaring met LowCode. Maar we kijken altijd naar innovatie en we zijn constant op zoek naar manieren om onze klanten zo goed mogelijk te helpen met de best passende oplossingen. Daarom vinden we het belangrijk om breder te kijken en ons niet te beperken tot alleen LowCode. Ik denk dat we vooral gek zijn op RAD.
Welke rol speelt cross platform development binnen B-Synergy?
Bij B-Synergy zijn we ons gelukkig al heel erg bewust van de grote voordelen van cross platform development met Flutter. Onze Flutterexperts geven workshops aan de andere collega’s zodat iedereen in ieder geval basiskennis heeft en op de hoogte is van de kansen die cross platform development biedt. Wie zich hier verder in wil ontwikkelen krijgt daar alle ruimte voor. Kennisdeling vinden we heel belangrijk. Hierdoor kunnen onze collega’s goed beoordelen of een app beter gebouwd kan worden met LowCode of met Flutter. Soms is ook een combinatie van LowCode met Flutter een goed idee omdat LowCode meer gericht is op back-end en Flutter meer op Front-end. Omdat we al die kennis in huis hebben, kunnen we onze klanten optimaal adviseren.
Hoe zie jij de toekomst van cross platform development?
Ik denk dat het nog groter gaat worden in de toekomst. Met name omdat het economisch voordeliger is een applicatie cross platform te ontwikkelen. De techniek die dit ondersteunt, heeft ook een grote ontwikkeling doorgemaakt waardoor de prestaties een native ontwikkelde applicatie kunnen evenaren. Ook is de community, die achter verschillende cross platform frameworks staat, heel erg gegroeid waardoor er veel steun en ontwikkelkracht voor bestaat. In de toekomst kan B-Synergy overwegen om nieuwe, maar ook bestaande applicaties cross platform te ontwikkelen. Omdat ze sneller kunnen worden ontwikkeld, is dit voor zowel B-Synergy als voor haar klanten een voordeel. Daarnaast kunnen we in-house applicaties ontwikkelen zodat andere bedrijven deze met whitelabel kunnen afnemen. Ook zou B-Synergy kunnen bijdragen aan de community van het cross platform framework naar keuze door eigen packages en plug-ins te ontwikkelen. Deze kunnen vervolgens onder naam van B-Synergy worden gebruikt door andere ontwikkelaars. Kortom cross platform development heeft voor ons ontzettend veel potentieel.