I vantaggi di iPhone come piattaforma applicativa

mercoledì, 19 marzo 2008 10.15 by Marco Bellinaso

Quando il 29 giugno 2007 è uscito nei negozi americani l'iPhone di Apple, a seguito dell'annuncio ufficiale di Steve Jobs alla WWDC, sono stato uno di quelli che ha minimizzato alla grande l'evento non mostrando un minimo di interesse. E per cosa mi sarei dovuto emozionare poi? Un device bloccato sui network americani, senza UMTS, ma soprattutto senza possibilità di scrivere o installare applicazioni aggiuntive! Insomma un cellulare non smart, con solo un ottimo touchscreen...che ci faccio?

Qualcosa, anzi più di qualcosa, è cambiato però il 6 marzo 2008 quando sempre Jobs ha presentato l'SDK per sviluppare applicazioni native (contro lo sviluppo di mini-siti web specializzati per iPhone, come era possibile fare sino a quel momento). Il piano era già chiaro ad ottobre 2007, ma erano solo parole...subito dopo l'ultimo annuncio invece è stato reso live l'iPhone Dev Center, dove scaricare l'SDK (2,1GB), centinaia di pagine di documentazione (sul linguaggio Objective-C, il framework Cocoa per Mac OSX e Cocoa Touch per iPhone e iPod Touch), vari esempi di codice, video, FAQ ecc. Insomma è stato un grande lancio, con un supporto ai livelli delle nostre tecnologie di casa Microsoft. Entro 4 giorni dal rilascio sono stati contati più di 100.000 download. Niente male, per un dispositivo che per ora ha una distribuzione tutt'altro che globale, no?

Ma perchè è così interessante per uno sviluppatore la prospettiva di poter creare software per l'iPhone? Ci sono vari motivi, legati tra loro:

1) Uniformità delle feature nei device di destinazione: quando si decide di sviluppare per l'iPhone si sa benissimo quali sono le caratteristiche del 100% dei dispositivi sul quale girerà il proprio software: c'è una fotocamera, un display con una ben determinata risoluzione, un accelerometro triassiale, un display con multitoch ecc. ecc. Essere sicuri che tutta questa roba sia presente, e funzioni esattamente allo stesso modo ovunque, dà una certa tranquillità, eccome! E' vero che la varietà dei device presente nel mondo Windows Mobile e Symbian garantisce una più veloce evoluzione, concorrenza e prezzi migliori...ma è anche vero che uno sviluppatore deve spesso fare i salti mortali per gestire i casi in cui un utente abbia una risoluzione diversa da quella usata per lo sviluppo, abbia una fotocamera con risoluzione minore che non garantisce la stessa qualità, abbia una CPU più lenta, abbia un display con colori meno forti che al sole risulta illeggibile, non sia fornito di questa o quell'altra funzionalità ecc. Apple dà una sola scelta (scegliere tra 4 e 8GB non la considero una gran scelta...), ma è quanto basta al suo target, ed è una scelta che rende la vita molto più facile per chi scrive applicazioni.

2) Feature interessanti: avere a disposizione un accelerometro triassiale, un display multitouch e un dispositivo di geolocalizzazione basato su wi-fi spot e cell towers apre le porte a tutta una serie di applicazioni interessanti impossibili da creare su altri device, perlomeno non senza aggiungere aggeggi esterni.

3) Framework completo preinstallato: Cocoa Tourch e il resto dello stack applicativo (compreso SQLite per la gestione di dati su DB) è quello che ha usato anche Apple per lo sviluppo degli applicativi forniti di default...e quindi trovate già tutto installato, su tutti i dispositivi. Questo vuol dire meno problemi per il deployment, e creazione di pacchetti il più piccolo possibili. Il framework fornito vi permette di usare facilmente tutte le varie funzionalità del dispositivo (contatti, fotocamera ecc.), e di gestire gli eventi di movimento, posizione cambiata, pressione con più dita ecc. Se pensate a Window Mobile, solo recentemente sono state introdotte le classi per integrarsi con gli applicativi PIM di sistema....prima bisognava ricorrere a librerie di terze parti (da installare) o a funzioni di basso livello. Di nuovo, il problema delle librerie esterne poi è che non si ha mai la garanzia che funzionino perfettamente su tutti i device.

4) Mercato ampio: entro fine anno Apple intende arrivare a 10 milioni di device venduti. Che poi ci riesca è un altro discorso, ma se si sbagliano probabilmente non si sbaglieranno di molto. Tra l'altro, gli basterebbe accelerare l'immissione nel mercato globale. Per ora in Europa l'iPhone si trova solo in Inghilterra, Germania, Francia, Austria e Irlanda. Si parla da molto del rilascio in Italia, che sembra sempre stia per arrivare a giorni, ma per ora niente. Comunque certamente numeri di tutto rispetto per un device che a fine anno avrà solo un anno e mezzo di esistenza.

5) Semplicità di deployment: la distribuzione (a pagamento o meno) del software di terze parti avverrà esclusivamente (volendo restare nell'ufficialità) via App Store di Apple, ovviamente integrato sull'iPhone / iPod Touch. Ci sarà una sezione software dalla quale cercare ciò che ci interessa, comprarlo o scaricarlo, e averlo automaticamente installato. La facilità d'uso dovrebbe in teoria essere altissima; sia per l'utente finale che per lo sviluppatore, che non si dovrà preoccupare di installazioni. Ma non si dovrà neanche preoccupare di crearsi un sito per la vendita e del relativo marketing di base; mettendo il proprio software su App Store questo sarà facilmente accessibile a tutti i fruitori del servizio (ovviamente immagino sarà comunque possibile avere spazi più di rilievo nello store, comparire nella homepage o in cima ai risultati di una categoria ecc.). Certo, l'utilizzo dell'App Store costa 99$ (anche se intendete distribuire applicazioni gratuite) e Apple si tiene il 30% della somma pagata dai clienti (per costi di gestione, hosting, banda...e anche per guadagnarci qualcosa ovviamente)...ma del resto qualsiasi distributore vi fa pagare una cospicua percentuale (anche 40%), senza offrirvi la strettissima integrazione con il dispositivo target, l'autoinstallazione, una così grande visibilità ecc.

6) Mercato vergine: l'SDK nativo è attualmente in beta, e l'App Store dovrebbe venire aperto per le applicazione di terze parti a giugno. Sebbene attualmente esistano già parecchie applicazioncine sviluppate con "metodi alternativi", solo quando la distrubuzione sarà ufficiale e supportata il mercato sarà interessante. Non essendo ancora arrivati a quel momento, non ci sono per ora leader nelle varie categorie (utility per far questo e quello, giochini di un certo ecc.) - dato l'altissimo numero di donwload dell'SDK è facile supporre che saranno tantissime le applicazioni lanciate non appena sarà possibile farlo...ma comunque i concorrenti saranno sicuramente meno rispetto a piattaforme esistenti da molti anni. Di sicuro si tratta di un mercato interessante per chi sviluppa e intende trovarsi una sua nicchia.

7) Interesse dei finanziatori: è stato creato un fondo (coerentemente chiamato iFund...) di 100 milioni di dollari, per finanziare applicazioni che vengano ritenute "degne". Anche se immagino che alla fine saranno destinati ad aziende con un certo nome e con progetti piuttosto grossi e impegnativi, e difficilmente allo sviluppatore hobbysta con un progettino per divertirsi, questo perlomeno dimostra l'interesse che gira attorno a questo nuovo mercato. 

8) Semplicità di sviluppo: è molto difficile raggiungere la semplicità di sviluppo offerta dai tool di sviluppo Microsoft, ma comunque Apple ha un suo IDE (XCode) già installato con OSX, e l'SDK dell'iPhone aggiunge una serie di template di progetto e un emulatore (velocissimo) del dispositivo. XCode è ancora lontano da VS, ma comunque offre un designer di UI (per iPhone questo deve ancora arrivare, ma dicono che ci sarà con l'SDK definitivo...per ora la UI deve essere scritta a manina), un debugger, integrazione con un source manager, un designer di classi e altre cosette. Non è male, e comunque è meglio di quello che c'è per altri ambienti (questa l'ho solo sentita dire però...). La documentazione, gli esempi, i video e tutto il materiale di supporto completano il quadro. Certo non si trovano i centomila libri e guide non-ufficiali, ma...non è male :-)

Questo è quanto mi è venuto in mente finora...e mi pare non sia poco! Sembra che Apple stia veramente puntando sugli sviluppatori, e sembra che questi si stiano dimostrando interessati. Presto cominceremo a vedere cosa ne verrà fuori.

Correntemente valutato 3.5 da 14 utenti

  • Currently 3,5/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5
Segnala:  
Tags:   , ,
Categorie:   Business | Mac OS X | Sviluppo software | Tecnologia
Azioni:   E-mail | Permalink | Commenti (0) | RSS CommentiRSS comment feed

Post correlati

Commenti chiusi