Corso: diventare sviluppatori iOS/Android in 4 giorni con Titanium e JavaScript
di Redazione | 31-1-2012
EtnaTraining organizza mensilmente un corso itinerante su Titanium attraverso il quale i partecipanti, in 4 intense giornate, saranno in grado di sviluppare autonomamente applicazioni mobili native, con le tecnologie del Web. Le prossime edizioni a Milano (7-10 Febbraio), Catania (5 - 8 Marzo), Bologna (26 - 29 Marzo) e Torino. Sconto per i lettori di Macitynet.
Se avete un’idea originale per una app mobile, se la vostra azienda vuole offrire ai propri clienti servizi in mobilità o crearne nuovi tramite la vetrina mondiale degli app stores, o se volete semplicemente aggiungere alle vostre skills la capacità di creare app per iPhone, iPad, Android e Blackberry, Titanium vi permetterà di realizzare applicazioni mobili multipiattaforma in tempi rapidissimi.
Appceletor Titanium è una piattaforma free e open source che permette la creazione di applicazioni mobili cross-platform e native utilizzando le tecnologie del Web: JavaScript, HTML e CSS. Ecco cosa ci ha detto al riguardo il Dott. Antonio Calanducci, fondatore di Etnatraining [sponsor] e docente presso l’Università di Catania.
1. Titanium permette lo sviluppo di app cross-platform. Cosa significa esattamente?
Con Titanium è possibile generare apps per molteplici dispositivi, partendo da un’unica base di codice. Al momento vi è il supporto per iOS (sia iPhone/iPod touch che iPad) e Android (smartphone e tablet, dalla versione 1.6 alla 4.0 IceCream). Sarebbe utopico credere che lo stesso identico codice e gli stessi asset grafici funzionino perfettamente su tutte le piattaforme. Appcelerator non promette il “write once, run everywhere” (che difatti si trasforma in un “write once, suck everywhere” citando Loren Britcher, autore di Tweetie, client Twitter per iOS), ma “write once, adapt everywhere”. Vi è infatti un meccanismo di “branching” basato su sottocartelle per piattaforme diverse, in cui uno stesso file grafico o un JSS (JavaScript Style Sheet) sarà compilato per la piattaforma di destinazione, ma il codice della business logic, che rappresenta orientativamente l’80% dell’app, rimarrà invariato.
Oltre al supporto per Blackberry e per il MobileWeb (ovvero per tutti gli smartphone che dispongono di un browser mobile di ultima generazione), Appcelerator ha nella sua roadmap anche il support per Windows Phone.
2. Esistono altre piattaforme che promettono lo sviluppo mobile cross-platform, come Phone Gap, Sencha Touch, jQuery Mobile, Adobe Air, Corona, Unity, per citare le più famose. Quali sono le differenze con Titanium?
Le alternative/concorrenti a Titanium offrono tre approcci al problema del cross-platform: uso di una WebView, di OpenGL o di un Runtime proprietario. Phone Gap ad esempio, di recente acquistito da Adobe, permette di “incapsulare” un’applicazione/sito Web che viene visualizzata in una WebView (il browser mobile del dispositivo “nascosto”, senza barre del menù e di stato) come una app da distribuire sui market. Sicuramente è un approccio rapido al “porting” di un sito/web app esistente, ma la “user experience” è naturalmente diversa; l’utente non troverà generalmente il look & feel tipico delle applicazioni sviluppate con gli ambienti nativi (controlli come pulsanti, tableview, pickers etc), ma tutti i controli saranno disegnati con immagini e fogli di stile. Inoltre non avranno accesso a servizi nativi, come local notifications, background services, overlay sulla fotocamera etc; anche le performance ne soffriranno poiché la User Interface sarà “emulata” dentro una pagina web.
Gli approcci basati su OpenGL e il Runtime proprietario soffrono allo stesso modo del problema della “native user experience” sebbene possano rappresentare una buona scelta per alcune tipologie di applicazioni, come i giochi 3D o giochi interattivi sviluppati già con la tecnologia Flash.
Titanium usa un approccio totalmente diverso poiché permette l’accesso diretto e il controllo dei componenti (controlli grafici) e servizi nativi. Le API (Application Programming Interface) offerte dalla piattaforma mappano uno ad uno tutti i controlli e i servizi nativi delle piattaforme target; un pulsante creato con Titanium sarà un pulsante con il look & feel nativo di iOS su iPhone e con il look & feel di Android su un Galaxy Samsung S2. Ciò non solo dal punto di vista estetico ma anche per quanto concerne le performance.
Ecco perché Titanium promette la creazione di app NATIVE.
3. Quali sono i vantaggi/svantaggi di Titanium rispetto allo sviluppo con gli ambienti nativi (Objective-C/Cocoa Touch e Java/Android)?
Per scrivere app con Titanium, si utilizzano i linguaggi con cui si sviluppano siti web, JavaScript per la logica e CSS/HTML per il layout grafico. JavaScript è un linguaggio semplice da imparare, leggibile e intuitivo, le cui basi possono essere apprese in un solo giorno, a differenza invece di Objective-C o Java la cui curva di apprendimento è notevole.
Generalmente quando un’azienda decide di sviluppare un’app mobile, la realizza in un primo momento per una piattaforma (di solito iOS) e passa in seguito ad una seconda piattaforma, il che implica più cicli di sviluppo e testing con team di lavoro molteplici e con skill su ogni diversa piattaforma. Di conseguenza un altro vantaggio è rappresentato dall’unico ambiente e linguaggio di programmazione e dalla possibilità di avanzare contemporaneamente nello sviluppo su più piattaforme. Ulteriore vantaggio è legato ai tempi di sviluppo, difatti JavaScript in tandem con le API di Titanium riesce ad essere molto “sintetico”; lo sviluppatore scrive meno righe di codice rispetto a Objective-C o Java. Su Youtube o è possibile visionare un nostro video in cui viene dimostrato come creare una ShoppingList, sia per iPhone che Android, con sole 10 righe di codice e in soli 10 minuti. Per chi inizia in questo settore JavaScript è molto più semplice da apprendere rispetto Objective-C o Java; chi invece è un Web Developer o Web Designer, il time-to-market sarà bassissimo.
Inoltre nel mondo iOS la gestione della memoria rappresenta uno dei principali ostacoli che devono affrontare i neo-sviluppatori; con Titanium è il framework che se ne occupa, dietro le quinte, permettendo allo sviluppatore di concentrarsi così sulla logica di funzionamento.
Uno svantaggio di Titanium rispetto agli ambienti nativi si ha al momento in cui le case di iOS e Android rilasciano aggiornamenti e nuove funzionalità; occorre infatti attendere che Appcelerator rilasci gli aggiornamenti che consentano di “mappare’ le novità introdotte. Tuttavia Titanium è un framework estendibile, è possibile infatti integrare dei moduli scritti con gli ambienti nativi esponendone le funzionalità in JavaScript. Esistono già tantissimi moduli nativi open source su Github e un MarketPlace ufficiale da cui scaricare o acquistare nuovi moduli.
4. Quali sono i requisiti minimi per la partecipazione ai corsi su Titanium di EtnaTraining?
Nonostante JavaScript sia un linguaggio semplice da apprendere, è richiesta una minima esperienza con la programmazione . Non importa con quale linguaggio, Visual Basic, Turbo Pascal, C/C++, Java, Php, Python. Ci aspettiamo che il partecipante abbia un’idea chiara su quali siano i concetti base della programmazione come variabili, cicli, istruzioni condizionali, funzioni. Un bonus è rappresentato dalla conoscenza dei concetti della programmazine ad oggetti, ma ciò non è strettamente necessario poiché saranno introdotti durante la prima giornata di lavoro. È possibile fare un test a questa pagina per verificare le proprie conoscenze
Dal punto di vista dell’hardware è vivamente consigliato un portatile con sistema Mac; a causa di restrizioni da parte di Apple, lo sviluppo per iOS è consentito solo su tale sistema operativo. Chi partecipa con un PC Windows o Linux potrà sviluppare e fare il testing esclusivamente su Android.
5. Come sono organizzati i vostri corsi? Quali argomenti vengono trattati?
Il nostro corso prevede la presentazione dei concetti del linguaggio che servono a creare app con Titanium in un solo pomeriggio. Senza dimenticare che con un solo linguaggio è possibile creare apps per due piattaforme (entro marzo Appcelerator presenterà il supporto ufficiale per Blackberry e il mobile web, di conseguenza il numero di target device aumenterà).
6. Dove si svolgono i corsi su Titanium in Italia?
Al momento abbiamo in calendario varie edizioni mensili, in diverse città italiane. Il prossimo corso si terrà a Milano, presso Espero (nostro partner) dal 7 al 10 Febbraio (ancora 4 posti disponibili). Poi toccherà a Catania, Bologna, Torino (Roma, qualora ci fossero richieste). A disposizione sul sito di Entneatraining c'è il calendario completo dei corsi
7. Quanto costano i corsi su Titanium? Sono previsti sconti per gli studenti o non titolari di partita IVA?
Il costo del corso è di 590 euro + IVA. (Chi conosce JavaScript e vuole partecipare a partire dal secondo giorno ha uno sconto di 90 euro). Per gli studenti o per i privati senza partita IVA, di cui ci facciamo noi carico, è previsto uno sconto del 10%, per un totale di 500 euro, tutto incluso. Al lettori di Macitynet, invece, viene riservato un ulteriore sconto di 20 euro. Basta menzionare il nostro sito nel campo dove si richiede di avere informazioni su come si è appreso dei corsi.
Per prenotarsi partire dalla pagina dei corsi
Macity - Top News
- Microsoft, aggiornamento per l’Autoupdate di Office
- Adobe, aggiornamento per Lightroom e Camera Raw
- La Battaglia di Canne rivive in 3D sul vostro iPad
- Facebook ha acquistato Face.com?
- App iPhone e Universal da pagamento a gratis: ecco le migliori di oggi
- Google presenta i nuovi Chromebook e Chromebox
- Tom Tom:«Rischioso fidarsi della mappe open source»
- Ancora foto di iPhone 5: design Unibody, fotocamera frontale spostata e antenna sul retro
- Applicazioni Mac in sconto: ecco le novità e le migliori
- Con GPS Parlante disponi su iPhone e iPad di un contachilometri vocale
AggiornaMac - Top News
- Microsoft, aggiornamento per l’Autoupdate di Office
- Adobe, aggiornamento per Lightroom e Camera Raw
- Grungetastic, rovinate artisticamente le vostre foto su iPad, iPhone e Mac
- Gardenscapes, il gioco-simulatore che ci trasforma in giardinieri perfetti su Mac
- FitPlot per Mac: posiziona, ridimensiona, ruota immagini e testo prima della stampa
- Cobook, un valido aiuto per organizzare i contatti su Mac OS
- Creative Suite, disponibile la beta di Configurator 3
- BioShock e Bioshock 2 per Mac insieme e a metà prezzo con MacUpdate
- Nuovo record per Blizzard: Diablo III è il gioco più venduto al lancio
- VirtualBox, Crossover e Fusion, update e novità dal mondo dei virtualizzatori
