CORSO BASE IPHONE       Parte 1
INIZIAMO!• Introduzione• Programma• Strumenti   di Sviluppo• Tecniche   di Sviluppo
INTRODUZIONE: CHI SIAMO• MobileSchool                                             • Diffondiamo la cultura mobile in Itali...
PROGRAMMA DI OGGI•   Introduzione alla Programmazione•   Cenni di Objective-C•   L’ambiente di Lavoro (pre)•   Break [10,3...
OBJECTIVE -CObjective-C è il principale linguaggio diprogrammazione che si utilizza per creare applicazioniper OSX.E la ba...
OBJECTIVE CE un linguaggio di programmazione ad oggetti (OOP)molto simile a altri linguaggi come Java o C++.Le tecniche di...
OBJECTIVE C: CENNI SUGLI OGGETTICLASSI e OGGETTI sono elementi astratti che permettono dirappresentare oggetti reali (o im...
OBJECTIVE C: LA PRIMA CLASSEIn Objective-C per definire un oggetto, quindi la classe cuiesso appartiene, abbiamo bisogno di...
OBJECTIVE C: ESEMPIO DI INTERFACCIAUn Esempio di Intefaccia (fclass.h)dichiarazione di interfaccia                        ...
OBJECTIVE C: ESEMPIO DI IMPLEMENTAZIONEUn Esempio di Implementazione (fclass.m)interfaccia da implementare                ...
OBJECTIVE C: I METODIStruttura di un metodo:                           - (void) Metodo;     tipologia di metodo           ...
OBJECTIVE C:PROPRIETÀLe variabili, possono essere lette e/o modificate da chiutilizza le nostre classi, per far questo le n...
OBJECTIVE C:PROPRIETÀ 2Nel file di Interfaccia dobbiamo dichiarare di quali variabilivogliamo creare i getter e setter:    ...
OBJECTIVE C:PROPRIETÀ 2Nel file di Interfaccia dobbiamo dichiarare di quali variabilivogliamo creare i getter e setter:    ...
OBJECTIVE C:PROPRIETÀ 2Nel file di Interfaccia dobbiamo dichiarare di quali variabilivogliamo creare i getter e setter:    ...
OBJECTIVE C:PROPRIETÀ 2Nel file di Interfaccia dobbiamo dichiarare di quali variabilivogliamo creare i getter e setter:    ...
OBJECTIVE C: CICLO DI VITA DEGLI OGGETTI• alloc: viene allocata (predisposta) la memoria necessaria adospitare loggetto.• ...
OBJECTIVE C: CICLO DI VITA DEGLI OGGETTI• alloc: viene allocata (predisposta) la memoria necessaria adospitare loggetto.• ...
OBJECTIVE C: CICLO DI VITA DEGLI OGGETTI• alloc: viene allocata (predisposta) la memoria necessaria adospitare loggetto.• ...
OBJECTIVE C: CICLO DI VITA DEGLI OGGETTI• alloc: viene allocata (predisposta) la memoria necessaria adospitare loggetto.• ...
OBJECTIVE C: CICLO DI VITA DEGLI OGGETTI• alloc: viene allocata (predisposta) la memoria necessaria adospitare loggetto.• ...
XCODEL’Ambiente di Lavoro
Gruppi, Files, Risorce                                 vista di Dettagliobarra di stato            Xcode: Interfaccia
XCODE•Gruppi e File: gestione file e gruppi (cartelle), aggiunta/ rimozione framework, aggiunta/rimozione classi (con il wi...
XCODE•Visualizzazione dell’Interfaccia: tenendo premuto Command e doppio click su una classe o oggetto, verrà aperta la re...
INTERFACE BUILDER    L’Ambiente di Lavoro
INTERFACE BUILDERInterface Builder rende semplice la costruzione deiprototipi grafici senza bisogno di scrivere alcuna riga...
INTERFACE BUILDERGestore XIB   Vista Interfaccia   Proprietà
INTERFACE BUILDER•Gestore XIB: permette la gestione degli elementi presenti nell’interfaccia•Vista Interfaccia: visualizza...
LA PRIMA APPLICAZIONE        Hello Man!
PRIMA APPLa nostra prima applicazione dovrà contenere gli elementi dibase per l’interfaccia e una semplice interazione.Con...
PRIMA APP : INTERFACCIAUILabelUITextFieldUIButton
PRIMA APP : INTERFACCIA@interface firstapp1ViewController : UIViewController {! UILabel *cambia;! UIButton *pulsante;! UIT...
PRIMA APP:ASSEGNAZIONE ELEMENTIUna volta create le proprietàdentro il codice, si dovrannoassegnare agli elementi graficidir...
PRIMA APP:IMPLEMENTAZIONECome già spiegato l’interfaccia descrive la classe, mentrel’implementazione descrive il comportam...
PRIMA APP:SIMULATORE Proviamo l’app!
UISCROLLVIEW / UITABLEVIEWMostrare elenchi di dati o griglie di essi è la prima attivitànecessaria quando si vuole creare ...
per informazioni FLT.lab - info@fltlab.netGRAZIE PER L’ATTENZIONE leggi la seconda parte del corso base in 2 giorni!      M...
Upcoming SlideShare
Loading in...5
×

Corso Iphone in 48h

1,670

Published on

Ecco per voi le slide del corso Iphone in 48h - è molto semplice e permette di conoscere almeno le basi della programmazione IOS per Iphone e Ipad!

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

No Downloads
Views
Total Views
1,670
On Slideshare
0
From Embeds
0
Number of Embeds
5
Actions
Shares
0
Downloads
0
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • Transcript of "Corso Iphone in 48h"

    1. 1. CORSO BASE IPHONE Parte 1
    2. 2. INIZIAMO!• Introduzione• Programma• Strumenti di Sviluppo• Tecniche di Sviluppo
    3. 3. INTRODUZIONE: CHI SIAMO• MobileSchool • Diffondiamo la cultura mobile in Italia organizzando corsi su come realizzare applicazioni per iPhone iOS e Android eseminari invitando a condividere l’esperienza di chi ha già lanciato una startup mobile.• Francesco Lo Truglio Sviluppatore Senior esperto in tecnologie Web e Mobile. Per l’occasione il vostro Docente!• Xcode L’ambiente di sviluppo su cui lavoreremo e il nostro principale nemico/alleato durante tutte le fasi dello Sviluppo!• Iphone Melafonino o surrugato di tecnologia, l’oggetto che vogliamo conquistare con le app che impareremo a sviluppare.
    4. 4. PROGRAMMA DI OGGI• Introduzione alla Programmazione• Cenni di Objective-C• L’ambiente di Lavoro (pre)• Break [10,30]• XCode• Interface Builder• Break [13,00]• Interfaccia Utente (MVC)• La nostra prima Applicazione• UIScroll View/UITableView
    5. 5. OBJECTIVE -CObjective-C è il principale linguaggio diprogrammazione che si utilizza per creare applicazioniper OSX.E la base da apprendere per utilizzare le librerie(framework) che Apple mette a disposizione e checonsentono lo sviluppo di applicazioni su:• OSX• iPhone• iPodTouch
    6. 6. OBJECTIVE CE un linguaggio di programmazione ad oggetti (OOP)molto simile a altri linguaggi come Java o C++.Le tecniche di OOP seppure utili verranno spiegatedurante il corso, per soffermarci più sul lato pratico. IlNostro scopo e fornirvi gli strumenti per iniziareimmediatamente a sviluppare!
    7. 7. OBJECTIVE C: CENNI SUGLI OGGETTICLASSI e OGGETTI sono elementi astratti che permettono dirappresentare oggetti reali (o immaginari) in oggetti software.Ogni Oggetto appartiene a una Classe e i nostriprogrammi saranno un insieme di oggetti che dialoganotra loro inviandosi messaggi e ricevendo risposteattraverso metodi e funzioni.
    8. 8. OBJECTIVE C: LA PRIMA CLASSEIn Objective-C per definire un oggetto, quindi la classe cuiesso appartiene, abbiamo bisogno di due file:• uno (.h) che definisce linterfaccia della classe• laltro (.m) che ne definisce limplementazioneLinterfaccia descrive le azioni (i metodi e funzioni) dellaclasse e nasconde limplementazione che definisce ilcodice vero e proprio, ovvero ciò che le azioni realmenteeseguono.
    9. 9. OBJECTIVE C: ESEMPIO DI INTERFACCIAUn Esempio di Intefaccia (fclass.h)dichiarazione di interfaccia classe di appartenenza @interface FClass : NSObject { nome della classe - int variabile; variabili di classe - bool variabile2; } - (void)Metodo; metodi (azioni) esposti @end
    10. 10. OBJECTIVE C: ESEMPIO DI IMPLEMENTAZIONEUn Esempio di Implementazione (fclass.m)interfaccia da implementare #import "FClass.h" @implementation FClassimplementazione della classe - (void) Metodo { // commento: ... }implementazione dei metodi @end
    11. 11. OBJECTIVE C: I METODIStruttura di un metodo: - (void) Metodo; tipologia di metodo tipo di risultato nome del metodo (- di istanza) (void nessun risultato) (+ di classe) I metodi possono ricevere dati: - (bool) maggioredi:(int)num1 compara:(int)num2; tipo argomento nome argomento nome argomento metodo nome argomento esposto
    12. 12. OBJECTIVE C:PROPRIETÀLe variabili, possono essere lette e/o modificate da chiutilizza le nostre classi, per far questo le nostre variabilidovranno diventare proprietà e fornire dei metodispecifici (getter/setter).Objective-C può generare automaticamente questimetodi attraverso lutilizzo delle keyword @properties e@synthesize.
    13. 13. OBJECTIVE C:PROPRIETÀ 2Nel file di Interfaccia dobbiamo dichiarare di quali variabilivogliamo creare i getter e setter: @interface FClass : NSObject { Gli accessori - int numero; definiscono il accessori della comportamento proprietà dei metodi di Get } e Set @properties (retain) int numero; - (void)Metodo; @end
    14. 14. OBJECTIVE C:PROPRIETÀ 2Nel file di Interfaccia dobbiamo dichiarare di quali variabilivogliamo creare i getter e setter: @interface FClass : NSObject { Gli accessori - int numero; definiscono il accessori della comportamento proprietà dei metodi di Get } e Set @properties (retain) int numero; - (void)Metodo; @end
    15. 15. OBJECTIVE C:PROPRIETÀ 2Nel file di Interfaccia dobbiamo dichiarare di quali variabilivogliamo creare i getter e setter: @interface FClass : NSObject { Gli accessori - int numero; definiscono il accessori della comportamento proprietà dei metodi di Get } e Set @properties (retain) int numero; - (void)Metodo; @end
    16. 16. OBJECTIVE C:PROPRIETÀ 2Nel file di Interfaccia dobbiamo dichiarare di quali variabilivogliamo creare i getter e setter: @interface FClass : NSObject { Gli accessori - int numero; definiscono il accessori della comportamento proprietà dei metodi di Get } e Set @properties (retain) int numero; - (void)Metodo; @end
    17. 17. OBJECTIVE C: CICLO DI VITA DEGLI OGGETTI• alloc: viene allocata (predisposta) la memoria necessaria adospitare loggetto.• init: viene inizializzato loggetto invocando il suo costruttore,loggetto "prende vita".• use: utilizzo delloggetto.• dealloc: rimozione dalla memoria. alloc init use dealloc
    18. 18. OBJECTIVE C: CICLO DI VITA DEGLI OGGETTI• alloc: viene allocata (predisposta) la memoria necessaria adospitare loggetto.• init: viene inizializzato loggetto invocando il suo costruttore,loggetto "prende vita".• use: utilizzo delloggetto.• dealloc: rimozione dalla memoria. alloc init use dealloc
    19. 19. OBJECTIVE C: CICLO DI VITA DEGLI OGGETTI• alloc: viene allocata (predisposta) la memoria necessaria adospitare loggetto.• init: viene inizializzato loggetto invocando il suo costruttore,loggetto "prende vita".• use: utilizzo delloggetto.• dealloc: rimozione dalla memoria. alloc init use dealloc
    20. 20. OBJECTIVE C: CICLO DI VITA DEGLI OGGETTI• alloc: viene allocata (predisposta) la memoria necessaria adospitare loggetto.• init: viene inizializzato loggetto invocando il suo costruttore,loggetto "prende vita".• use: utilizzo delloggetto.• dealloc: rimozione dalla memoria. alloc init use dealloc
    21. 21. OBJECTIVE C: CICLO DI VITA DEGLI OGGETTI• alloc: viene allocata (predisposta) la memoria necessaria adospitare loggetto.• init: viene inizializzato loggetto invocando il suo costruttore,loggetto "prende vita".• use: utilizzo delloggetto.• dealloc: rimozione dalla memoria. alloc init use dealloc
    22. 22. XCODEL’Ambiente di Lavoro
    23. 23. Gruppi, Files, Risorce vista di Dettagliobarra di stato Xcode: Interfaccia
    24. 24. XCODE•Gruppi e File: gestione file e gruppi (cartelle), aggiunta/ rimozione framework, aggiunta/rimozione classi (con il wizard), Warning ed Errori•Vista di Dettaglio: Modifica del codice, Gestione breakpoint, navigazione tra i file e le classi•Barra di Stato: mostra lo stato dell’applicazione durante operazioni come la compilazione.
    25. 25. XCODE•Visualizzazione dell’Interfaccia: tenendo premuto Command e doppio click su una classe o oggetto, verrà aperta la relativa interfaccia. Riferimenti alle API: tenedo premuto command e doppio click su un simbolo verranno mostrate le informazioni sull’utilizzo del simbolo.•Completamento del codice: durante la scrittura del codice, Xcode vi aiuterà nella scrittura del codice.•Chiusura del codice: sarà possibile “raggruppare” il codice non utile al momento (es. Metodi non usati).
    26. 26. INTERFACE BUILDER L’Ambiente di Lavoro
    27. 27. INTERFACE BUILDERInterface Builder rende semplice la costruzione deiprototipi grafici senza bisogno di scrivere alcuna riga dicodice.Sarà possibile inserire qualunque degli elementi graficistandard come per esempio: pulsanti, etichette, campi ditesto, tabelle ecc. solo con il drag&drop. Xcode, lavora in tempo reale con l’interface builder, quindi le assegnazioni potranno essere effettuate semplicemente modificando le interfacce.
    28. 28. INTERFACE BUILDERGestore XIB Vista Interfaccia Proprietà
    29. 29. INTERFACE BUILDER•Gestore XIB: permette la gestione degli elementi presenti nell’interfaccia•Vista Interfaccia: visualizza in tempo reale l’interfaccia che si sta creando, inoltre permette la gestione di tutti gli elementi del Gestore XIB (drag&drop).•Proprietà: permette di modificare le proprietà degli oggetti presenti nell’interfaccia e di gestire le associazioni.
    30. 30. LA PRIMA APPLICAZIONE Hello Man!
    31. 31. PRIMA APPLa nostra prima applicazione dovrà contenere gli elementi dibase per l’interfaccia e una semplice interazione.Conoscenze:Associazioni, Eventi;Obiettivo:Creare un app che mostri il proprio nome in una textLabeldopo aver letto il valore da una UITextView alla pressione diun tasto.
    32. 32. PRIMA APP : INTERFACCIAUILabelUITextFieldUIButton
    33. 33. PRIMA APP : INTERFACCIA@interface firstapp1ViewController : UIViewController {! UILabel *cambia;! UIButton *pulsante;! UITextField *scrivi;!!}@property (nonatomic,retain) IBOutlet UILabel *cambia;@property (nonatomic,retain) IBOutlet UIButton *pulsante;@property (nonatomic,retain) IBOutlet UITextField *scrivi;-(IBAction) pulsante_clicker;@end
    34. 34. PRIMA APP:ASSEGNAZIONE ELEMENTIUna volta create le proprietàdentro il codice, si dovrannoassegnare agli elementi graficidirettamente con l’INTERFACEBUILDER.Per fare ciò basta trascinare glielementi dell’Inspector verso glioggetti grafici nel layout.
    35. 35. PRIMA APP:IMPLEMENTAZIONECome già spiegato l’interfaccia descrive la classe, mentrel’implementazione descrive il comportamento: #import [super "firstapp1ViewController.h" didReceiveMemoryWarning]; } @implementation firstapp1ViewController - (void)viewDidUnload { @synthesize scrivi, cambia, ! // Release any retained pulsante; subviews of the main view. ! // e.g. self.myOutlet = nil; } -(IBAction) pulsante_clicker { ! NSString *scritto = [scrivi text]; - (void)dealloc { ! [cambia setText:scritto]; ! [scrivi dealloc]; ! ! [cambia dealloc]; } [super dealloc]; } - (void)didReceiveMemoryWarning { ! // Releases the view if it @end doesnt have a superview.
    36. 36. PRIMA APP:SIMULATORE Proviamo l’app!
    37. 37. UISCROLLVIEW / UITABLEVIEWMostrare elenchi di dati o griglie di essi è la prima attivitànecessaria quando si vuole creare un’app di livelloprofessionale o che si connetta a repository remoti perscaricare i dati.Pertanto come prima esercitazione da analizzare e discuteredurante la sessione del corso vi allego un progetto Xcode dadiscutere nella prossima sessione: firstApp.zip
    38. 38. per informazioni FLT.lab - info@fltlab.netGRAZIE PER L’ATTENZIONE leggi la seconda parte del corso base in 2 giorni! MobileSchool è un progetto realizzato in collaborazione con Figmenta S.r.l. - copyright 2012 Figmenta

    ×