JDK srl

Corso iOS in Swift

JDK srl
A Roma

600 
Chiedi informazioni a un consulente Emagister

Informazioni importanti

Tipologia Laboratorio intensivo
Livello Livello intermedio
Luogo Roma
Ore di lezione 36h
Durata 6 Giorni
  • Laboratorio intensivo
  • Livello intermedio
  • Roma
  • 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!

Strutture (1)
Dove e quando
Inizio Luogo
Consultare
Roma
Via Adolfo Ravà, 124, 00142, Roma, Italia
Visualizza mappa
Inizio Consultare
Luogo
Roma
Via Adolfo Ravà, 124, 00142, Roma, Italia
Visualizza mappa

Domande più frequenti

· Requisiti

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

Cosa impari in questo corso?

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!

Gli utenti che erano interessati a questo corso si sono informati anche su...
Leggi tutto