iOS design patterns: blocks

16
iOS Design Patterns: Blocks Introduzione teorica e casi d’utilizzo nel framework di Veespo Alessio Roberto @alessioroberto [email protected] 1

description

Il talk di Alessio Roberto sul pattern dei blocchi in iOS. Breve introduzione teorica ed esempi tratti dal framework di Veespo che Alessio sta sviluppando. Il video del talk lo trovate sulla nostra pagina YouTube: http://youtu.be/jQkQzb5rDK4

Transcript of iOS design patterns: blocks

Page 1: iOS design patterns: blocks

iOS Design Patterns: Blocks

Introduzione teorica e casi d’utilizzo nel framework di Veespo

Alessio Roberto@alessioroberto

[email protected]

1

Page 2: iOS design patterns: blocks

Definizione Apple

• Blocks are a language-level feature added to C, Objective-C and C++, which allow you to create distinct segments of code that can be passed around to methods or functions as if they were values.

2

Page 3: iOS design patterns: blocks

Definizione Apple

• They also have the ability to capture values from the enclosing scope, making them similar to closures or lambdas in other programming languages.

3

Page 4: iOS design patterns: blocks

Grand Central Dispatch

• Sfruttare al meglio lo sviluppo multi core, semplificando la vita allo sviluppatore

• Esecuzione parallela a livello di thread e gestione della concorrenza

• Creazione e gestione dei thread e della sincronizzazione “invisibile” per lo sviluppatore

4

Page 5: iOS design patterns: blocks

Blocchi

5

Page 6: iOS design patterns: blocks

Blocchi

6

Page 7: iOS design patterns: blocks

Funzione asincrona

7

Page 8: iOS design patterns: blocks

8

Page 9: iOS design patterns: blocks

Funzione asincrona

9

Page 10: iOS design patterns: blocks

Funzione di callback

10

Page 11: iOS design patterns: blocks

Funzione di callback

11

Page 12: iOS design patterns: blocks

Funzione di callback

12

Page 13: iOS design patterns: blocks

Callback e chiarezza del codice

13

github.com/darthpelo/ARNavBar

Page 14: iOS design patterns: blocks

Callback

14

Page 15: iOS design patterns: blocks

Funzioni asincrone

15

Page 16: iOS design patterns: blocks

Grazie :-)

16

veespo.com@VeespoDotCom