Een mobiel ontwikkelingsframework kiezen

Ontwikkelaars kunnen technologieën aan de clientzijde gebruiken om zelf mobiele toepassingen te bouwen met behulp van specifieke frameworks en patronen voor een platformoverschrijdende benadering. Op basis van hun beslissingsfactoren kunnen ontwikkelaars het volgende bouwen:

  • Systeemeigen toepassingen met één platform met behulp van talen zoals Objective C en Java
  • Platformoverschrijdende toepassingen met behulp van Xamarin, .NET en C#
  • Hybride toepassingen met cordova en de bijbehorende varianten

Systeemeigen platforms

Voor het bouwen van een systeemeigen toepassing zijn platformspecifieke programmeertalen, SDK's, ontwikkelomgevingen en andere hulpprogramma's van besturingssysteemleveranciers vereist.

iOS

IOS is gemaakt en ontwikkeld door Apple en wordt gebruikt om apps te bouwen op Apple-apparaten, namelijk de i Telefoon en de iPad.

  • Programmeertalen: Objective-C, Swift
  • IDE: Xcode
  • SDK: iOS SDK

Android

Android is ontworpen door Google en het populairste besturingssysteem ter wereld en wordt gebruikt om toepassingen te bouwen die kunnen worden uitgevoerd op een reeks smartphones en tablets.

  • Programmeertaal: Java, Kotlin
  • IDE: Hulpprogramma's voor Android Studio en Android-ontwikkelaars
  • SDK: Android SDK

Vensters

  • Programmeertaal: C#
  • IDE: Visual Studio, Visual Studio Code
  • SDK: Windows SDK

Systeemeigen platformprofessionals

  • Goede gebruikerservaring
  • Responsieve toepassingen met hoge prestaties en de mogelijkheid om te interfaceren met systeemeigen bibliotheken
  • Zeer veilige toepassingen

Systeemeigen platformnadelen

  • Toepassing wordt uitgevoerd op slechts één platform
  • Meer resource-intensieve en dure ontwikkelaars om een toepassing te bouwen
  • Minder code hergebruiken

Platformoverschrijdende en hybride toepassingen

Platformoverschrijdende toepassingen bieden u de kracht om eenmaal systeemeigen mobiele toepassingen te schrijven, code te delen en uit te voeren op iOS, Android en Windows.

Xamarin

Xamarin is eigendom van Microsoft en wordt gebruikt voor het bouwen van robuuste, platformoverschrijdende mobiele toepassingen in C#. Xamarin heeft een klassebibliotheek en runtime die werkt op veel platforms, zoals iOS, Android en Windows. Het compileert ook systeemeigen (niet-geïnterpreteerde) toepassingen die hoge prestaties leveren. Xamarin combineert alle mogelijkheden van de systeemeigen platforms en voegt een aantal krachtige functies van zichzelf toe.

  • Programmeertaal: C#
  • IDE: Visual Studio op Windows of Mac

React Native

React Native, uitgebracht door Facebook in 2015, is een opensource JavaScript-framework voor het schrijven van echte, systeemeigen rendering van mobiele toepassingen voor iOS en Android. Het is gebaseerd op react, de JavaScript-bibliotheek van Facebook voor het bouwen van gebruikersinterfaces. In plaats van de browser te richten, is het gericht op mobiele platforms. React Native maakt gebruik van systeemeigen onderdelen in plaats van webonderdelen als bouwstenen.

  • Programmeertaal: JavaScript
  • IDE: Visual Studio Code

Unity

Unity is een engine die is geoptimaliseerd voor het maken van games. U kunt het gebruiken om hoogwaardige 2D- of 3D-toepassingen te maken met C# voor platforms zoals Windows, iOS, Android en Xbox.

Cordova

Met Cordova kunt u hybride toepassingen bouwen met behulp van Visual Studio Tools voor Apache Cordova of Visual Studio Code met extensies voor Cordova. Met de hybride benadering kunt u onderdelen delen met websites en webservertoepassingen opnieuw gebruiken met gehoste webtoepassingsmethoden op basis van Cordova.

Platformoverschrijdende professionals

  • Verbeterde bruikbaarheid van code door één codebasis te maken voor meerdere platforms
  • Geschikt maken voor een breder publiek op veel platforms
  • Dramatische vermindering van de ontwikkelingstijd
  • Eenvoudig te starten en bij te werken

Platformoverschrijdende nadelen

  • Lagere prestaties
  • Gebrek aan flexibiliteit
  • Elk platform heeft een unieke set functies en functionaliteit om de systeemeigen toepassing creatiever te maken
  • Verbeterde ontwerptijd voor gebruikersinterface
  • Beperking van hulpprogramma's