Sviluppare per iOSAnalisi delle soluzioniDino Esposito & Francesco Esposito >>>> Crionet srl@despos | @fesposi
Prerequisiti• Avere un Mac• Essere un Apple developer• Avere (a scelta) un iPhone/iPad/iPod Touch                         ...
Dino Esposito | Francesco Esposito   3www.crionet.it | @despos - @fesposi
Come ti scrivo un’app• Apple SDK e Objective-C• MonoTouch e C#• Soluzioni ibride                             Dino Esposito...
Apple SDK: gli strumenti• Xcode  – Code editor + debugger + Interface Builder  – Automatic Deployment• AppCode di JetBrain...
Apple SDK: il linguaggio• Objective-C: ANSI C + sintassi OO• Invia messaggi agli oggetti  – Passaggio parametri per nome• ...
NSString *message = @"Login failed";UserAccount *account = [[UserAccount alloc] init];[account loginWithOptions:TRUE      ...
Apple SDK: il framework• Cocoa Touch• Set di classi (header+impl) per varie funzioni  – Networking  – Dialoghi  – Persiste...
Apple SDK: complessivamente• Linguaggio non particolarmente evoluto• Buon supporto dall’IDE  – Debugger  – Deployment• Lar...
MonoTouch: cos’è• iOS apps su Mac usando C#  – Mix con Obj-C e codice portato da .NET• MonoDevelop come editor di codice  ...
MonoTouch: come funziona  Mono BCL       Mono                             CocoaThreading | Interop | GCJIT-compiler e AOT ...
MonoTouch: che fa• Stesso app-model di Obj-C  – Eventi, proprietà, logica  – UIWindow, ViewController, AppDelegate• Classi...
DEMO    Dino Esposito | Francesco Esposito   13   www.crionet.it | @despos - @fesposi
MonoTouch: pro/contro• Facile per chi viene da C# o Java  – E per chi viene da C++?• Riusabilità del codice  – Sì, ma ...•...
MonoTouch: pro/contro• Dimensione del package  – In realtà non un grande problema per iOS• Velocità  – Sì, ma ...• Li spen...
Ibridi : chi sono?• Titanium Mobile  – Framework in JavaScript (interpretata nativamente)• PhoneGap  – HTML5 + CSS + JavaS...
Due parole su PhoneGap• Non male per iOS  – Grazie a Safari Mobile  – Assenza di pulsante hardware Back  – Supporto iphone...
Quindi?• Sviluppo con MonoTouch è veloce e il risultato  è efficace e valido  – Se poi fa pure comodo andare su Android/WP...
Technology                       Partner                                                                   @despos        ...
Upcoming SlideShare
Loading in …5
×

Sviluppare applicazioni per iOS: Vantaggi e svantaggi dei vari framework, by Dino e Francesco Esposito

1,691 views

Published on

Rispetto solo a due anni fa oggi ci sono molte più possibilità di scelta per chi voglia scrivere un'applicazione iOS. La prima scelta da considerare è naturalmente quella suggerita da Apple che si basa su Objective-C e l'iOS SDK. Tuttavia Objective-C può essere un linguaggio ostico e allora ecco saltar fuori MonoTouch (che però è a pagamento) oppure PhoneGap oppure Titanium oppure Flash Builder e la lista continua. In questa sessione andiamo alla scoperta dei pro e contro delle varie opzioni.

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,691
On SlideShare
0
From Embeds
0
Number of Embeds
169
Actions
Shares
0
Downloads
8
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Sviluppare applicazioni per iOS: Vantaggi e svantaggi dei vari framework, by Dino e Francesco Esposito

  1. 1. Sviluppare per iOSAnalisi delle soluzioniDino Esposito & Francesco Esposito >>>> Crionet srl@despos | @fesposi
  2. 2. Prerequisiti• Avere un Mac• Essere un Apple developer• Avere (a scelta) un iPhone/iPad/iPod Touch Dino Esposito | Francesco Esposito www.crionet.it | @despos - @fesposi
  3. 3. Dino Esposito | Francesco Esposito 3www.crionet.it | @despos - @fesposi
  4. 4. Come ti scrivo un’app• Apple SDK e Objective-C• MonoTouch e C#• Soluzioni ibride Dino Esposito | Francesco Esposito www.crionet.it | @despos - @fesposi
  5. 5. Apple SDK: gli strumenti• Xcode – Code editor + debugger + Interface Builder – Automatic Deployment• AppCode di JetBrains Dino Esposito | Francesco Esposito www.crionet.it | @despos - @fesposi
  6. 6. Apple SDK: il linguaggio• Objective-C: ANSI C + sintassi OO• Invia messaggi agli oggetti – Passaggio parametri per nome• Automatic Reference Counting solo in iOS5 – Gestione della memoria esplicita Dino Esposito | Francesco Esposito www.crionet.it | @despos - @fesposi
  7. 7. NSString *message = @"Login failed";UserAccount *account = [[UserAccount alloc] init];[account loginWithOptions:TRUE throwOnError:TRUE message:message];[account release]account = nil; Dino Esposito | Francesco Esposito www.crionet.it | @despos - @fesposi
  8. 8. Apple SDK: il framework• Cocoa Touch• Set di classi (header+impl) per varie funzioni – Networking – Dialoghi – Persistenza Dino Esposito | Francesco Esposito www.crionet.it | @despos - @fesposi
  9. 9. Apple SDK: complessivamente• Linguaggio non particolarmente evoluto• Buon supporto dall’IDE – Debugger – Deployment• Larga parte di 500K apps scritte con Obj-C Dino Esposito | Francesco Esposito www.crionet.it | @despos - @fesposi
  10. 10. MonoTouch: cos’è• iOS apps su Mac usando C# – Mix con Obj-C e codice portato da .NET• MonoDevelop come editor di codice – Xcode come editor grafico• Ha un fratello per Android• 300 euri Dino Esposito | Francesco Esposito www.crionet.it | @despos - @fesposi
  11. 11. MonoTouch: come funziona Mono BCL Mono CocoaThreading | Interop | GCJIT-compiler e AOT Touch Dino Esposito | Francesco Esposito www.crionet.it | @despos - @fesposi
  12. 12. MonoTouch: che fa• Stesso app-model di Obj-C – Eventi, proprietà, logica – UIWindow, ViewController, AppDelegate• Classi equivalenti a Silverlight 4 Dino Esposito | Francesco Esposito www.crionet.it | @despos - @fesposi
  13. 13. DEMO Dino Esposito | Francesco Esposito 13 www.crionet.it | @despos - @fesposi
  14. 14. MonoTouch: pro/contro• Facile per chi viene da C# o Java – E per chi viene da C++?• Riusabilità del codice – Sì, ma ...• Nessuna barriera da Apple Dino Esposito | Francesco Esposito www.crionet.it | @despos - @fesposi
  15. 15. MonoTouch: pro/contro• Dimensione del package – In realtà non un grande problema per iOS• Velocità – Sì, ma ...• Li spendo ‘sti 300 euri o no? Dino Esposito | Francesco Esposito www.crionet.it | @despos - @fesposi
  16. 16. Ibridi : chi sono?• Titanium Mobile – Framework in JavaScript (interpretata nativamente)• PhoneGap – HTML5 + CSS + JavaScript (web-view)• Flash Builder – actionScript (interpretata nativamente) Dino Esposito | Francesco Esposito www.crionet.it | @despos - @fesposi
  17. 17. Due parole su PhoneGap• Non male per iOS – Grazie a Safari Mobile – Assenza di pulsante hardware Back – Supporto iphoney di jQuery Mobile• Solo per disperazione per altre piattaforme Dino Esposito | Francesco Esposito www.crionet.it | @despos - @fesposi
  18. 18. Quindi?• Sviluppo con MonoTouch è veloce e il risultato è efficace e valido – Se poi fa pure comodo andare su Android/WP7 ...• Obj-C: è un fatto personale • PhoneGap: per iOS• E un po’ nativa e un po’ web? Dino Esposito | Francesco Esposito www.crionet.it | @despos - @fesposi
  19. 19. Technology Partner @despos @fesposiwww.expoware.org Dino Esposito | Francesco Esposito www.crionet.it | @despos - @fesposi

×