Condividi tramite


Scegliere un framework di sviluppo per dispositivi mobili

Gli sviluppatori possono usare tecnologie lato client per creare applicazioni mobili usando framework e modelli specifici per un approccio multipiattaforma. In base ai fattori decisionali, gli sviluppatori possono creare:

  • Applicazioni a piattaforma singola nativa usando linguaggi come Objective C e Java
  • Applicazioni multipiattaforma usando Xamarin, .NET e C#
  • Applicazioni ibride usando Cordova e le relative varianti

Piattaforme native

La creazione di un'applicazione nativa richiede linguaggi di programmazione specifici della piattaforma, SDK, ambienti di sviluppo e altri strumenti forniti dai fornitori del sistema operativo.

Ios

Creato e sviluppato da Apple, iOS viene usato per creare app nei dispositivi Apple, ovvero iPhone e iPad.

  • Linguaggi di programmazione: Objective-C, Swift
  • IDE: Xcode
  • SDK: iOS SDK

Android

Progettato da Google e dal sistema operativo più popolare del mondo, Android viene usato per creare applicazioni che possono essere eseguite su una gamma di smartphone e tablet.

  • Linguaggio di programmazione: Java, Kotlin
  • IDE: Strumenti per sviluppatori Android Studio e Android
  • SDK: Android SDK

Finestre

  • Linguaggio di programmazione: C#
  • IDE: Visual Studio, Visual Studio Code
  • SDK: Windows SDK

Professionisti della piattaforma nativa

  • Esperienza utente ottimale
  • Applicazioni reattive con prestazioni elevate e la possibilità di interfacciarsi con librerie native
  • Applicazioni altamente sicure

Cons della piattaforma nativa

  • L'applicazione viene eseguita in una sola piattaforma
  • Più risorse per sviluppatori con elevato utilizzo intensivo e costoso per compilare un'applicazione
  • Riutilizzo del codice inferiore

Piattaforme incrociate e applicazioni ibride

Le applicazioni multipiattaforma consentono di scrivere applicazioni per dispositivi mobili native una sola volta, condividere codice ed eseguirle in iOS, Android e Windows.

Xamarin

Di proprietà di Microsoft, Xamarin viene usato per creare applicazioni mobili affidabili e multipiattaforma in C#. Xamarin ha una libreria di classi e un runtime che funziona in molte piattaforme, ad esempio iOS, Android e Windows. Compila anche applicazioni native (non interpretate) che offrono prestazioni elevate. Xamarin combina tutte le capacità delle piattaforme native e aggiunge una serie di potenti funzionalità di propria proprietà.

  • Linguaggio di programmazione: C#
  • IDE: Visual Studio in Windows o Mac

React Native

Rilasciato da Facebook nel 2015, React Native è un framework JavaScript open source per la scrittura di applicazioni mobili reali e native per dispositivi mobili per iOS e Android. Si basa su React, Facebook libreria JavaScript per la creazione di interfacce utente. Anziché puntare al browser, è destinato alle piattaforme mobili. React Native usa componenti nativi anziché componenti Web come blocchi predefiniti.

  • Linguaggio di programmazione: JavaScript
  • IDE: Visual Studio Code

Unità

Unity è un motore ottimizzato per la creazione di giochi. È possibile usarlo per creare applicazioni 2D o 3D di alta qualità con C# per piattaforme come Windows, iOS, Android e Xbox.

Cordova

Cordova consente di creare applicazioni ibride usando Strumenti di Visual Studio per Apache Cordova o Visual Studio Code con estensioni per Cordova. Con l'approccio ibrido, è possibile condividere i componenti con siti Web e riutilizzare applicazioni basate su server Web con approcci dell'applicazione Web ospitati in base a Cordova.

Professionisti multipiattaforma

  • Aumento dell'usabilità del codice creando una codebase per più piattaforme
  • Soddisfare un pubblico più ampio in molte piattaforme
  • Riduzione drammatica del tempo di sviluppo
  • Facile da avviare e aggiornare

Cons multipiattaforma

  • Prestazioni inferiori
  • Mancanza di flessibilità
  • Ogni piattaforma ha un set univoco di funzionalità e funzionalità per rendere l'applicazione nativa più creativa
  • Maggiore tempo di progettazione dell'interfaccia utente
  • Limitazione degli strumenti