26
Cocoa [email protected] 2014—2015

Cocoa - Paris Diderot University

  • Upload
    others

  • View
    7

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Cocoa - Paris Diderot University

[email protected]

2014—2015

Page 2: Cocoa - Paris Diderot University

Introduction

[email protected] / 2014—2015 Master II

• deux Cocoa (pour le prix d’un) !

• pour OSX

• Foundation+AppKit

• pour iOS

• Foundation+UIKit

• Appkit : NS… (ex : NSButton)

• UIKit : UI… (ex : UIButton)

2

Page 3: Cocoa - Paris Diderot University

Introduction

[email protected] / 2014—2015 Master II

3

Page 4: Cocoa - Paris Diderot University

Introduction

[email protected] / 2014—2015 Master II

4

Page 5: Cocoa - Paris Diderot University

Introduction

[email protected] / 2014—2015 Master II

5

• pour simplifier donc :

• Cocoa c’est Foundation + l’interface graphique

• disons que ce sont les premières choses que l’on voit de Cocoa

Page 6: Cocoa - Paris Diderot University

Introduction

[email protected] / 2014—2015 Master II

6

Page 7: Cocoa - Paris Diderot University

Introduction

[email protected] / 2014—2015 Master II

7

Page 8: Cocoa - Paris Diderot University

Introduction

[email protected] / 2014—2015 Master II

8

Page 9: Cocoa - Paris Diderot University

Introduction

[email protected] / 2014—2015 Master II

9

Page 10: Cocoa - Paris Diderot University

Introduction

[email protected] / 2014—2015 Master II

10

Page 11: Cocoa - Paris Diderot University

Introduction

[email protected] / 2014—2015 Master II

11

Page 12: Cocoa - Paris Diderot University

Introduction

[email protected] / 2014—2015 Master II

12

Page 13: Cocoa - Paris Diderot University

Introduction

[email protected] / 2014—2015 Master II

13

Page 14: Cocoa - Paris Diderot University

[email protected] / 2014—2015 Master II

La boucle d’évènements

Page 15: Cocoa - Paris Diderot University

La boucle d’événements

[email protected] / 2014—2015 Master II

15

Page 16: Cocoa - Paris Diderot University

[email protected] / 2014—2015 Master II

Usage des classes Cocoa

Page 17: Cocoa - Paris Diderot University

Usage des classes Cocoa

[email protected] / 2014—2015 Master II

17

• 4 façons d’utiliser des classes Cocoa

• nature : on utilise des objets prédéfinis que l’on paramètre (ex : NSButton)

• sans le savoir : des objets sont créés en arrière-plan

• générique (ex : UIView)

• par délégation ou notification

Page 18: Cocoa - Paris Diderot University

Usage des classes Cocoa

[email protected] / 2014—2015 Master II

18

• Les outlets

• variable d’instance qui référence un autre objet

• manipulable par l’éditeur d’interface (configurable et archivable) @interface MaClasse : NSObject { IBOutlet NSObject *out; }

Page 19: Cocoa - Paris Diderot University

Usage des classes Cocoa

[email protected] / 2014—2015 Master II

19

• Une classe qui implémente ce pattern possède une propriété nommée delegate

Page 20: Cocoa - Paris Diderot University

Usage des classes Cocoa

[email protected] / 2014—2015 Master II

20

• Un scénario de délégation plus riche

Page 21: Cocoa - Paris Diderot University

Usage des classes Cocoa

[email protected] / 2014—2015 Master II

21

• Il existe une délégation pour les sources de données (data source) et non les interfaces

• Le grand classique est le UITableView

Page 22: Cocoa - Paris Diderot University

Usage des classes Cocoa

[email protected] / 2014—2015 Master II

22

• Le pattern target-action

• La cible (target) est le receveur d’un message correspondant à une action; il s’agit généralement d’une instance d’une classe personnalisée

• L’action est le message que le contrôle envoie à la cible

• Une classe éligible pour le pattern doit posséder une méthode signalée comme IBAction

- (IBAction)faisMoiMal:(id)source

• IBAction n’est pas un type, c’est un tag pour l’éditeur d’interface

Page 23: Cocoa - Paris Diderot University

Usage des classes Cocoa

[email protected] / 2014—2015 Master II

23

Page 24: Cocoa - Paris Diderot University

Usage des classes Cocoa

[email protected] / 2014—2015 Master II

24

• Les bindings

• dans le cadre du MVC

• view : affiche les données

• model : représente le concept

• controller : médiateur entre le vue et le modèle

• reposent sur des objets conforme aux patterns KVO et KVC (suffisant pour les modèles)

Page 25: Cocoa - Paris Diderot University

Usage des classes Cocoa

[email protected] / 2014—2015 Master II

25

Page 26: Cocoa - Paris Diderot University

Usage des classes Cocoa

[email protected] / 2014—2015 Master II

26

• les points d’entrée et sortie dans les objets sont :

•+initialize initialisation de la classe

•-init initialisation d’un objet

•-initWithCoder: initialisation par désérialisation

•-awakeFromNib: réveil d’un objet lors de sa désérialisation depuis un fichier d’interface

•-encodeWithCoder: sérialisation si nécessaire

•-dealloc contrôle de la destruction de l’objet