Questa è una buona ragione per cui gli sviluppatori di app spesso inseriscono per primi la versione iOS della loro app - l'App Store è stato il primo sulla scena ed è ancora molto popolare, ma le altre piattaforme non dovrebbero essere ignorate. Il settore delle app Android prevedeva che avrebbe raggiunto le vendite di app iOS nel 2017. Un'app Android di successo su Google Play può essere redditizia quanto un'app iOS sull'App Store.
La popolarità delle app su dispositivi iOS e Android rende lo sviluppo multipiattaforma una considerazione importante. La possibilità di codificare una volta e creare ovunque consente di risparmiare un sacco di tempo anche se si prevede di sviluppare solo per iOS e Android. Quando aggiungi Windows, Mac e altre piattaforme nel mix, può essere un risparmio di tempo estremo. Tuttavia, lo sviluppo multipiattaforma viene fornito con un avvertimento. Spesso si è bloccati in un toolkit di terze parti, che potrebbe fornire limitazioni su cosa è possibile fare con un'app, ad esempio non essere in grado di utilizzare le funzionalità più recenti di un sistema operativo finché il toolkit non le supporta.
Ecco una selezione di toolkit che ti consentono di realizzare uno sviluppo multipiattaforma.
Corona SDK
Il popolare kit di sviluppo software cross-platform Corona (SDK) di Corona Labs supporta i computer Windows e Mac ed è un ottimo modo per sviluppare app iOS e Android. Con Corona SDK, puoi creare un progetto una volta e pubblicarlo su più dispositivi tra cui computer, smartphone, tablet e smart TV.
Corona SDK si rivolge principalmente ai giochi 2D, ma ha anche alcuni usi di produttività. Alcuni sviluppatori hanno avuto successo nello sviluppo di app non di gioco utilizzando il Corona SDK. La piattaforma utilizza LUA come linguaggio, che rende la codifica più veloce rispetto all'utilizzo dei vari sapori di C che galleggiano, e ha già un motore grafico integrato.
La parte migliore è che il Corona SDK è gratuito per i principianti e gli appassionati. I creatori e professionisti seri pagano un canone mensile. Puoi scaricare e iniziare a sviluppare immediatamente sia i giochi che le app di produttività. Non è bello se hai bisogno di molto testo da parte dell'utente, ma è solido per la maggior parte degli altri utilizzi di produttività e eccezionale per la grafica 2D.
Usi primari: Giochi 2D, Produttività
Continua a leggere sotto
Unità
Il Corona SDK è ottimo per la grafica 2D, ma se hai bisogno di andare in 3D, hai bisogno di Unity. Infatti, se hai in programma di andare in 3D in futuro, Unity potrebbe essere la scelta migliore anche se il tuo progetto attuale è un gioco 2D. È sempre una buona idea creare un repository di codice per accelerare la produzione futura.
I giochi Unity potrebbero richiedere più tempo per svilupparsi, ma Unity supporta quasi tutte le piattaforme là fuori, incluse console e web gaming, supportate dal motore WebGL.
La versione 2018 di Unity ha aggiunto i modelli per iniziare diversi tipi di progetti, tra cui giochi 2D e 3D. Altre opzioni di modello includono un modello VR e modelli High-End e Lightweight. Il nuovo Scriptable Render Pipeline (SRP) significa che gli sviluppatori e gli artisti tecnici possono iniziare in Unity senza dover masterizzare C ++. Invece, SRP usa C # e materiali shader.
Uso primario: Giochi 3D
Continua a leggere sotto
cocos2d
Come suggerisce il nome, Cocos2D è un framework per la creazione di giochi 2D. Tuttavia, a differenza di Corona SDK, Cocos 2D non è esattamente una soluzione di tipo code-once, compile-everywhere. Piuttosto, è una libreria che può essere inserita in piattaforme diverse che renderanno il codice reale uguale o simile. Questo fa un sacco di sollevamento quando si porta un gioco da una piattaforma all'altra, ma richiede ancora più lavoro di Corona. Tuttavia, il bonus è che il risultato è codificato nella lingua nativa, che ti dà pieno accesso a tutte le API del dispositivo senza aspettare che una terza parte le includa.
Diverse versioni di Cocos2D sono disponibili per C ++, JavaScript, C #, Xcode e Objective C e Python.
Uso primario: Giochi 2D
PhoneGap
PhoneGap sfrutta l'HTML 5 per sviluppare applicazioni multipiattaforma. L'architettura di base di questa piattaforma è un'app HTML 5 che viene eseguita all'interno di una WebView sulla piattaforma nativa. Si può pensare a questa come a un'app Web che è in esecuzione all'interno di un browser sul dispositivo, ma invece di richiedere un server Web per ospitare l'app, il dispositivo funge anche da server.
Come puoi immaginare, PhoneGap non competerà bene con Unity, Corona SDK o Cocos in termini di giochi, ma può facilmente superare tali piattaforme per business, produttività e codifica aziendale. La base HTML 5 significa che un'azienda può sviluppare un'app Web interna e inviarla ai dispositivi.
Gli sviluppatori di PhoneGap beneficiano di una robusta libreria di plugin che estende le capacità delle app mobili multipiattaforma.
PhoneGap interagisce egregiamente con Sencha, che è una piattaforma per la creazione di applicazioni web.
Uso primario: Produttività e affari
Continua a leggere sotto
E altro …
Corona SDK, Unity, Cocos e PhoneGap rappresentano alcuni dei più popolari pacchetti di sviluppo multipiattaforma, ma ci sono molte altre opzioni. Alcuni di questi non sono altrettanto robusti, richiedono più tempo per passare dal codice all'effettiva costruzione o sono costosi, ma potrebbero essere adatti alle tue esigenze.
- QT: Una buona scelta per le applicazioni aziendali e di produttività, QT è in circolazione da diverso tempo in varie forme. L'ultima build mette molto lucido su una piattaforma altrimenti solida.
- Xamarin: Un'altra ottima scelta per le soluzioni non di gioco, Xamarin usa C # come linguaggio di programmazione.Xamarin è specializzato nell'utilizzo di elementi dell'interfaccia utente nativi, quindi le app sembrano essere progettate per ogni particolare dispositivo.
- Marmellata: Principalmente una piattaforma di gioco, Marmalade ha sia uno strumento C che Marmalade Quick, uno strumento LUA. È utile per la ricompilazione dei giochi iOS per Android.
- Appcelerator: Se preferisci costruire usando JavaScript, Appcelerator potrebbe essere il tuo strumento. Non è una perfetta soluzione di code-once-build-everywhere - hai ancora del lavoro da fare per ottenere build per dispositivi specifici - ma afferma che puoi sviluppare per ogni dispositivo senza compromessi ibridi.