Corso iOS in Swift

Corso

A Roma

600 € IVA inc.

Descrizione

  • Tipologia

    Laboratorio intensivo

  • Livello

    Livello intermedio

  • Luogo

    Roma

  • Ore di lezione

    36h

  • Durata

    6 Giorni

Descrizione

Il corso ha una durata di 36 ore divise in sei sabati consecutivi, è diretto a chiunque voglia apprendere il nuovissimo linguaggio made in Cupertino Swift: il nuovo standard de facto per lo sviluppo di applicazioni iOS!

Le lezioni saranno caratterizzate da momenti di teoria sempre accompagnati da laboratori ed esercitazioni!

Sedi e date

Luogo

Inizio del corso

Roma
Visualizza mappa
Via Adolfo Ravà, 124, 00142

Inizio del corso

Consultare

Profilo del corso

Sono richieste le conoscenze di base della programmazione. È necessario inoltre conoscere almeno un linguaggio e i principi fondamentali della programmazione ad oggetti.

Domande e risposte

Comunicaci i tuoi dubbi,altri utenti potranno risponderti

Chi vuoi che ti risponda?

Pubblicheremo solo il tuo nome e la domanda

Materie

  • Mobile
  • Applicazioni ios
  • Swift

Professori

Valerio Ferrucci

Valerio Ferrucci

Esperto sviluppatore mobile per dispositivi iOS

Valerio sviluppa software su Apple Macintosh dagli anni '90 fino ad oggi, iniziando con il suo Macintosh LC (CPU 16Mhz, RAM 2MB, disco rigido 80MB) passando per MacOS, OSX fino ad iOS. Sviluppa inoltre anche per il web, preferendo come strumenti PHP e MySQL, a volte Ruby e MongoDB. Puoi seguirlo su Stack Overflow dove risponde periodicamente a domande riguardanti iOS.

Programma

GIORNO 1 "LINGUAGGIO"
  • Introduzione

Introduzione, versioni e storia di iOS, differenze con altri sistemi, schermi e dimensioni, tipi di App, struttura del sistema, componenti dello sviluppo, design.

  • Programmazione ad Oggetti

Oggetti, Classi, Metodi e MVC

  • Swift (1)

Introduzione, costanti e variabili, tipi, tuples, optionals, operatori, stringhe, collections, controlli di flusso

  • Swift (2)

Funzioni, closures, enum, classi, struct, proprietà, metodi, ereditarietà, init, deinit

  • Swift (3)

Optional chaining, typecast, extensions, protocols, generics

  • xCode

Creazione di un progetto, pannello navigator, pannello utilities,editor, assistant, tracking, target, build phases e settings, schemes e destinations, risultato della build finale.

LAB: Swift Playground - CardsGIORNO 2 "COCOA"
  • Nib

XCode e interfaccia grafica, edit di oggetti nel canvas, meccanismo di Nib loading, outlet, target/action, approfondimento di Interface Builder integrato in XCode, istanze di classi custom create in IB.

  • Cocoa (1)

Categories, Extensions, Protocols, Foundation: NSString, NSDate, NSNumber, NSData, NSArray, NSDictionary, NSSet, NSNull, Property List, oggetti Mutable e Immutable.

  • Cocoa (2)

App come sequenza di Cocoa events, subclass di oggetti Cocoa, pattern di comunicazione: notification, delegation, dataSource, actions, UIResponder, NSTimer, comunicazione tra oggetti, KVO.

  • Memoria

Approfondimenti di gestione della memoria, Leaking e Dangling pointer, retain e release, ARC, ownership di un oggetto, autorelease, retain cycles, puntatori unsafe, gestione della memoria per le property, memoria per oggetti Nib.

LAB: ParserGIORNO 3 "VIEWS"
  • Views

Definizioni, UIWindow, caratteristiche di UIView, gerarchia, proprietà estetiche, proprietà geometriche (frame bounds e center), sistemi di riferimento, trasformazioni, layout, autoresize, autolayout: constraint, visual format, gestione dei conflitti e delle ambiguità, intrinsic content size.

  • Drawing

UIImage, UIImageView, immagini resizable, graphic context, snapshots, filtri, subclass di UIView e metodo drawRect:, disegno con i path, clipping, ombre, contentMode, punti e pixel.

  • Layers

CALayer e relazione con la view, gerarchia e proprietà, contenuto e disegno, trasformazioni, ombre, bordi e maschere, efficienza e KVC.

  • Animations

Dinamica delle animazioni e presentation layer, animazioni con UIImage e UIImageView, animazioni in una UIView, animazioni spring, animazioni con keyframes, transizioni di vista, UIKit Dynamics, Motion Effects, considerazioni su animazioni con autolayout.

  • Gestures

UITouch, UIEvent, Gesture recognizers, varie tipologie di gestures, gestione delle combinazioni e delle priorità.

LAB: Cards 3 (autolayout) - StocksGIORNO 4 "INTERFACCIA"
  • View Controllers

Controller e MVC, UIViewController, rootViewController, gerarchie creazione di un view controller, view principale, status bar, resize e rotazione, presentazione di un view controller (modal), UITabBarController, UINavigationController, Storyboard, Segue, unwind Segue, embed Segue, messaggi inviati da Cocoa al view controller, memoria.

  • Scroll Views

Caratteristiche di UIScrollView, contentSize e contentOffset, Interface Builder freeform simulated metric, configurazioni della scroll view, paging e tiling, zoom, delegate (UIScrollViewDelegate), performance.

  • Table Views

UITableView, righe e sezioni, tipologie di table view, cells e custom cells, accessory buttons, dataSource e delegate, section index, refresh control, selezione, scroll, search bar, editing, master-detail.

  • Split Views

Definizione, struttura, elemento di navigazione e di dettaglio, delegate (UISplitViewControllerDelegate), storyboard, comunicazione master-detail, altre configurazioni possibili.

  • Popovers

Struttura e UIPopoverController, configurazione e dimensioni, popover Segue, preparazione, aspetto e dimensioni, presentazione, dismiss, delegate (UIPopoverControllerDelegate).

  • Testo

NSString e NSAttributedString, UIFont, dynamic font, UILabel, UITextField, gestione della tastiera, UITextView.

LAB: Photos - Photos (2) ScrollGIORNO 5 "FRAMEWORKS"
  • Mappe

Proprietà di MKMapView, coordinate, carta di Mercatore, zoom e panning, delegate, user location, annotations, overlays, comunicare con la app "Maps", geocoding (forward e reverse), searching, directions.

  • Camera

UIImagePickerController, configurazione e presentazione, controlli, media types, capture dalla fotocamera, delegate (UIImagePickerControllerDelegate), gestione dell'output.

  • Core location

Metodi di localizzazione, CLLocation e CLLocationManager, configurazioni e accuratezza, delegate (CLLocationManagerDelegate), heading, task in background, debugging e simulatore.

  • Core Motion

UIDevice, shake UIEvent, accelerometro, magnetometro, giroscopio, CMDeviceMotion, tecnica push e pull.

LAB: Modulo - Photos 6-7 (new model, mappe)GIORNO 6 "DEPLOY"
  • Threads

Threads, main thread, complessità della programmazione multithread, locking con NSLock, NSOperation, Grand Central Dispatch, completare un task in background.

  • Network

NSURLSession e i tre tipi di task, NSURLSessionConfiguration, delegate (NSURLSessionDelegate), NSURLRequest, NSURLSession in background, Background Fetch, tecniche di debugging per le attività in background.

  • Files

Sandbox e directory speciali, file manager, NSUserDefaults, file sharing, Document Types, Altri framework di salvataggio dati.

  • Localizzazione

Traduzione, base localization, NSLocalizedString, traduzione dello storyboard, formati regionali (date, numeri, moneta), NSLocale, considerazioni sul layout, debug, problematiche relative ad operazioni sulle stringhe.

  • Deploy

Architetture e device, preparazioni finali della app, identity e provisioning profile, oltre il simulatore, distribuzione ad hoc, invio all'App Store.

  • Application State

Stati della app, transizioni active/foreground/background/suspended/quit, UIApplicationDelegate, Notifiche, esempi.

LAB: Photos 10-11-12 (nsoperation, gcd, background task) - Photos 13 (nsurlsession)

Ulteriori informazioni

Molto semplicemente... tra i primi corsi in Italia per apprendere il nuovissimo linguaggio SWIFT e sviluppare applicazioni professionali con questo standard!

Chiama il centro

Hai bisogno di un coach per la formazione?

Ti aiuterà a confrontare vari corsi e trovare l'offerta formativa più conveniente.

Corso iOS in Swift

600 € IVA inc.