Teknik & appar – så väljer du

När Apple i mitten av 2008 öppnade upp möjligheten att utveckla appar till iPhone var den enda möjligheten att använda Apples egna utvecklarverktyg X-Code och programmeringsspråket Objective-C. För Android var det Javautveckling som gällde. Då Objective-C och Java är så pass olika språk var det från början få utvecklare som utvecklade appar till båda plattformarna, utan man valde helt enkelt att antingen utveckla appen till iPhone eller till Android. Eller så utvecklade man två appar – en för varje plattform, vilket blev omständligt och kostsamt.

Nu ser möjligheterna annorlunda ut. Det finns hundratals, eller rent av tusentals, olika tekniker och metoder att välja mellan. De gamla traditionella metoderna där man utvecklar en app för varje plattform finns fortfarande kvar och kallas ofta för Native-utveckling. Native används idag mest för grafiskt krävande appar såsom 3D-spel. Utöver detta finns nu även en mängd andra teknologier som möjliggör utveckling som är plattformsoberoende, eller så kallad cross-plattform. Det innebär att man utvecklar en app som fungerar för flera plattformar samtidigt.

Bland dessa tekniker finns Xamarin som är en C#-baserade lösning. Xamarin ägs numera av Microsoft. En annan teknik är React Native som är en JavaScript-baserad teknik. Projektet ägs av Facebook. Slutligen finns Cordova som baseras på HTML5 och JavaScript.

Att utveckla cross-platform innebär inte bara fördelen att man bara behöver ha kunskap om en teknik utan även att det går betydligt snabbare att utveckla appen och underhålla den i framtiden. Som bekant innebär en snabbare utveckling en lägre kostnad.

När man står inför valet av teknik för sin app är det absolut viktigaste att man väljer en teknologi som den som ska utveckla appen har en hög kunskapsnivå inom och att tekniken inte är ”låst” till just den utvecklaren. Du bör kunna ta ditt projekt och gå till en annan utvecklare om du inte är nöjd.

Något som många glömmer bort är att app-utvecklingen ofta bara är en del av ett app-projekt. Till appen behövs även en mängd olika administrativa funktioner, såsom användarhantering, möjlighet att hantera innehållet (content Management) i appen samt verktyg för att hantera push-notiser. Dessutom behövs, till nästan alla appar, en databas och andra backend-tjänster såsom lagring. Därför är det viktigt att du väljer en leverantör som kan erbjuda allt din app behöver.

Några tips:

  • Tänk på att plattformsoberoende utveckling (cross-platform) ofta är en snabbare och mer effektiv teknik. Cross-platform blir mer och mer en standard.
  • Glöm inte att din app behöver olika administrativa verktyg och backend-tjänster, såsom ett system för att kunna hantera innehåll, användare och data. Valet av dessa tjänster är minst lika viktigt som valet av teknik för själva appen.
  • Se till att inte bli beroende av en utvecklare. Är du missnöjd ska du kunna låta någon annan bygga vidare på din app.