Prima di iniziare a creare applicazioni iOS, è fondamentale comprendere innanzitutto l'ecosistema. Questo articolo esaminerà i fondamenti del sistema operativo iOS, i vari dispositivi iOS disponibili e l'App Store di Apple.
Prima dell'arrivo di Android e Windows Phone, Apple era il giocatore dominante nello spazio mobile, rivaleggiato solo da Nokia e BlackBerry. Con l'emergere di nuove piattaforme mobili, è diventato sempre più importante chiedersi quale piattaforma è più adatta a te. Nonostante l'avvio di Apple nel 2007, Android ha superato iOS nella quota di mercato. Cosa significa questo per iOS? È ancora una piattaforma che vale la pena sviluppare? Lo è di sicuro. Ci sono molti ottimi motivi per iniziare con lo sviluppo di iOS.
Le persone spesso dimenticano o non sanno che Android e iOS sono piattaforme molto diverse. Anche se entrambe le piattaforme sono state progettate per lo spazio mobile, l'ecosistema iOS si differenzia per molti aspetti dall'ecosistema Android di Google. Dal punto di vista dello sviluppo, molte persone sembrano trovare più facile sviluppare per la piattaforma iOS che per la piattaforma Android. Non fraintendermi, non mi riferisco allo stack tecnologico utilizzato da ciascuna piattaforma, né mi riferisco agli strumenti disponibili per ciascuna piattaforma. Due ragioni sono alla base del baratro tra iOS e Android, frammentazione e tasso di adozione.
Uno dei punti di forza di Android è allo stesso tempo uno dei principali punti deboli. Come molti di voi sanno, il sistema operativo Android viene rilasciato come progetto open source e può quindi essere utilizzato e modificato. Numerosi produttori di hardware hanno visto il potenziale di Android, soprattutto perché supportato da Google. Di conseguenza, Android ha guadagnato rapidamente popolarità. Il problema è che ogni produttore di hardware ha modificato Android in base alle proprie esigenze e dall'introduzione di Android è emersa un'ampia varietà di fattori di forma.
Anche se la quota di mercato di Android può sembrare una grande fonte di miele, è un problema creare software che funziona su ogni versione Android attualmente disponibile. A causa delle migliaia di dispositivi diversi che eseguono Android, testare software su hardware non è un compito banale. Come puoi immaginare, il supporto e la compatibilità diventano una vera sfida.
Tradizionalmente, in molti paesi, il mercato wireless è sotto stretto controllo da parte dei vettori cellulari. Fin dall'inizio, Apple sapeva che era necessario avere il controllo dei propri dispositivi mobili per fornire la migliore esperienza utente possibile. Il risultato è che i clienti possono aggiornare i loro dispositivi iOS all'ultima versione di iOS lo stesso giorno in cui viene rilasciata al pubblico. Questo è un grande vantaggio della piattaforma iOS e il suo risultato è notevole. Meno di tre mesi dopo il rilascio di iOS 7, oltre il 74% dei dispositivi iOS è stato aggiornato a iOS 7.
Confrontiamolo con Android. A dicembre 2013, meno del 55% degli utenti Android aveva aggiornato i propri dispositivi a Jelly Bean (rilasciato a luglio 2012) e l'1,1% era passato a KitKat (rilasciato nell'ottobre 2013).
La ragione per sollevare questi numeri non è minimizzare la piattaforma Android o qualsiasi altra piattaforma mobile. Quello che voglio sottolineare è l'impatto che il tasso di adozione ha sull'ecosistema applicativo di queste piattaforme. Gli utenti più lenti adottano una nuova versione di un sistema operativo, gli sviluppatori più lunghi sono costretti a supportare versioni precedenti del sistema operativo e diventa meno attraente adottare nuove tecnologie, che possono essere utilizzate solo su una frazione dei dispositivi Android.
Anche se Android sta recuperando terreno, iOS è ancora di gran lunga la migliore piattaforma in termini di monetizzazione. Durante l'evento più recente di Apple, Tim Cook ha annunciato che i clienti avevano scaricato oltre 60 miliardi di applicazioni e che Apple aveva pagato più di $ 13 miliardi agli sviluppatori iOS. Nel settembre 2013, durante l'annuale evento iPhone di Apple, Tim Cook ha annunciato che la società aveva venduto oltre 700 milioni di dispositivi iOS. Se stai pensando di sviluppare per una piattaforma mobile, allora iOS è una scelta eccellente e l'incentivo finanziario per farlo è improbabile che cambi in qualsiasi momento presto.
Se sei un lettore frequente di Envato Tuts +, potresti aver sentito parlare di framework multipiattaforma come PhoneGap o Titanium Mobile. Potresti chiederti perché dovresti affrontare il problema dell'apprendimento di Objective-C quando puoi creare applicazioni iOS utilizzando JavaScript. Lascia che ti dia una breve panoramica delle tue opzioni se decidi di sviluppare applicazioni iOS.
Uno degli aspetti più interessanti dell'ecosistema iOS è la sua semplicità. L'elenco di dispositivi in grado di eseguire iOS è sorprendentemente breve se confrontato con Android o Windows Phone. Ciò significa che testare le applicazioni iOS è molto meno ingombrante rispetto ad altre piattaforme.
Come affermato in precedenza, Android ha superato iOS in termini di quota di mercato, ma questa è solo una parte della storia. La piattaforma iOS rappresenta oltre il 50% dell'utilizzo del web su dispositivi mobili. Cosa ci dice questo sullo spazio mobile? Ci dice che iOS rimane il sistema operativo più utilizzato nello spazio mobile, almeno online, e questo nonostante la maggiore quota di mercato di Android.
Esistono essenzialmente due famiglie di dispositivi all'interno dell'ecosistema iOS: la famiglia di dispositivi iPhone, che include anche l'iPod Touch e la famiglia di dispositivi iPad. Per una panoramica completa, ti consiglio di dare un'occhiata a questo elenco.
Le principali differenze nella famiglia di dispositivi iPhone sono le capacità hardware e le dimensioni dello schermo. L'iPhone 5, 5S, 5C e l'iPod Touch di 5a generazione hanno tutti uno schermo da 4 "più ampio, mentre i modelli precedenti hanno il più familiare schermo da 3,5". La differenza di dimensioni dello schermo ha un impatto sullo sviluppo, ma non aggiunge molto overhead per la maggior parte delle applicazioni. Ne parlerò di più nel corso della serie.
Nel 2012, la famiglia iPad è stata ampliata con l'introduzione dell'iPad Mini. Anche se l'introduzione di iPad Mini ha causato un'ondata nel settore della tecnologia, ha un impatto minimo per gli sviluppatori iOS. Lo schermo dell'iPad Mini è significativamente più piccolo di quello del 10 "iPad e iPad Air, ma la risoluzione è identica alla risoluzione degli iPad da 10". A causa dello schermo più piccolo dell'iPad Mini, la dimensione media degli obiettivi tattili è inferiore e questo potrebbe rappresentare un problema per alcune applicazioni esistenti.
Apple rilascia tradizionalmente una nuova versione del proprio sistema operativo mobile ogni anno. Ad oggi, Apple ha rilasciato sette versioni principali del suo sistema operativo mobile con la versione più recente di iOS 7. Il supporto dei dispositivi è un aspetto di iOS che le persone spesso trascurano. Prendi l'iPhone 4, per esempio. L'iPhone 4 è stato rilasciato nel 2010 ed è ancora in grado di eseguire iOS 7. Non esiste una piattaforma mobile che si avvicini anche a questo in termini di supporto dei dispositivi.
Uno dei motivi principali per lo sviluppo della piattaforma iOS è l'incredibile successo dell'App Store. La vendita di software non è mai stata così semplice, grazie all'App Store e al Mac App Store. Apple ha recentemente annunciato che l'App Store ha superato il traguardo di 1 milione di applicazioni. Sta diventando un po 'affollato nell'App Store, ma tieni presente che anche il numero di dispositivi iOS continua a crescere esponenzialmente.
Lo spazio mobile è ancora nella sua infanzia e c'è ancora così tanto potenziale che è in attesa di essere scoperto. Proprio come lo è stato con il web alla fine degli anni '90, lo spazio mobile continuerà a crescere a un ritmo veloce e la quantità di denaro che può essere aumentata aumenta con ogni nuovo smartphone o tablet venduto.
Ora hai una chiara immagine dell'ecosistema iOS e spero di essere stato in grado di convincerti a iniziare lo sviluppo di iOS. Nel prossimo post, ti mostrerò come iniziare con l'SDK nativo impostando l'ambiente di sviluppo. Sarai sorpreso di quanto sia facile.
Se non conosci lo sviluppo di iOS o lo sviluppo di dispositivi mobili in generale, potresti essere interessato a consultare la nostra pagina di sviluppo dell'app in Envato Studio.