iOS                       Immersion                         Pascal Batty                                        1mardi 11 ...
Je veux !                                   2mardi 11 décembre 12
๏ Idée de génie                   ๏ Maquettes révolutionnaires                   ๏ API de fou                   ๏ App Mobi...
Mobile ?                                  4mardi 11 décembre 12
6.x                       69,5 %                                         5.x                                        24,8 %...
Moyen ?                                 6mardi 11 décembre 12
7mardi 11 décembre 12
Objective-C : Historique                                                  8mardi 11 décembre 12
1980                       N a is s a n c e d Obje c t ive - C                                                            ...
1986                       NeXTs te pmardi 11 décembre 12
2001                       M acOS X                                  11mardi 11 décembre 12
2007                       iphone                                12mardi 11 décembre 12
2008                       iP h o ne OS SDK                                          13mardi 11 décembre 12
2009 2010               2011       2012            iOS 3      iOS 4     iOS 5     iOS 6   …     Xcode 3.2                 ...
Objective-C : Technique                                                 15mardi 11 décembre 12
Framework                                  Runtime                                   ObjC                       Compilo   ...
#define                       try-catch   enum        Références                      int main(int argc, char** argv)     ...
Pointeurs                                   18mardi 11 décembre 12
Méthode de classe                  @class                             nil       Propriétés        NSString                ...
NSObject                                  20mardi 11 décembre 12
nil                             21mardi 11 décembre 12
Boîte à outils                   • NSString                   • NSArray                   • NSDictionary                  ...
Boîte à outils                   • NSString       • NSMutableString                   • NSArray        • NSMutableArray   ...
Syntaxe                                 23mardi 11 décembre 12
Déclaration         #import <Foundation/Foundation.h>         @interface Person:NSObject         @property NSString *name;...
Implémentation         #import "Person.h"         @implementation Person         @synthesize name = _name;         - (id)i...
Envoi de message              ObjC     [teller sayHello];     Java/C#           teller.sayHello();              ObjC     [...
Envoi de message                             ObjC   [teller say:message to:person];           teller.say(message, person);...
Sélecteur                       say:to:                                     28mardi 11 décembre 12
Initialisation, Propriétés   Person *person1 = [[Person alloc] init];   Person *person2 = [[Person alloc] initWithName:@"N...
Gestion de la mémoire                                               30mardi 11 décembre 12
mardi 11 décembre 12
Reference Counting                                            32mardi 11 décembre 12
Setter (retain)      - (void)setText:(NSString *)textValue {               if (textValue != _text) {                      ...
Ouf…          Automatic Reference Counting                                     34mardi 11 décembre 12
Anatomie d’une App                                            35mardi 11 décembre 12
Révisions                              Controller                       View                Model                         ...
Interface Utilisateur                               Outlets                               Actions              ViewControl...
View                            ≠                       ViewController                                        38mardi 11 d...
Délégation                               UITextField     @protocol UITextFieldDelegate          • textFieldShouldBeginEdit...
Délégation                       UITextField        delegate                                                     40mardi 1...
Délégation          L’utilisateur a       appuyé sur Retour !                       UITextField               delegate    ...
Délégation          L’utilisateur a       appuyé sur Retour !                       UITextField               delegate    ...
Là où tout commence…                            AppDelegate                                              41mardi 11 décemb...
Pause !                        puis demo                                    42mardi 11 décembre 12
Pour commencer                       http://developer.apple.com/ios                                                       ...
Merci                               44mardi 11 décembre 12
Prochain SlideShare
Chargement dans…5
×

Immersion à iOS - Soat

732 vues

Publié le

Le monde du développement sur iPhone et iPad est aussi séduisant qu'il est impressionnant. Un nouveau langage à apprendre, des tonnes d'API et une grammaire tactile à découvrir, on peut assez vite se noyer.
Pascal Batty, consultant Soat, vous propose de revenir sur l'histoire de ce SDK et d'en démystifier les bases, puis de mettre les mains dans le cambouis pour créer votre première application.
Que vous veniez du Java ou du .net, vous pourrez découvrir que si l'eau paraît froide au début, elle est très bonne quand on est dedans.

La vidéo de la présentation est visible ici : http://youtu.be/spo2KUHBHlM

Publié dans : Technologie
0 commentaire
1 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

Aucun téléchargement
Vues
Nombre de vues
732
Sur SlideShare
0
Issues des intégrations
0
Intégrations
10
Actions
Partages
0
Téléchargements
8
Commentaires
0
J’aime
1
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

Immersion à iOS - Soat

  1. 1. iOS Immersion Pascal Batty 1mardi 11 décembre 12
  2. 2. Je veux ! 2mardi 11 décembre 12
  3. 3. ๏ Idée de génie ๏ Maquettes révolutionnaires ๏ API de fou ๏ App Mobile 3mardi 11 décembre 12
  4. 4. Mobile ? 4mardi 11 décembre 12
  5. 5. 6.x 69,5 % 5.x 24,8 % 4.x 5,7 % Version ? 5mardi 11 décembre 12
  6. 6. Moyen ? 6mardi 11 décembre 12
  7. 7. 7mardi 11 décembre 12
  8. 8. Objective-C : Historique 8mardi 11 décembre 12
  9. 9. 1980 N a is s a n c e d Obje c t ive - C 9mardi 11 décembre 12
  10. 10. 1986 NeXTs te pmardi 11 décembre 12
  11. 11. 2001 M acOS X 11mardi 11 décembre 12
  12. 12. 2007 iphone 12mardi 11 décembre 12
  13. 13. 2008 iP h o ne OS SDK 13mardi 11 décembre 12
  14. 14. 2009 2010 2011 2012 iOS 3 iOS 4 iOS 5 iOS 6 … Xcode 3.2 Xcode 4.0mardi 11 décembre 12
  15. 15. Objective-C : Technique 15mardi 11 décembre 12
  16. 16. Framework Runtime ObjC Compilo Langage 16mardi 11 décembre 12
  17. 17. #define try-catch enum Références int main(int argc, char** argv) struct char* Désallocation Headers uint Allocation Pointeurs int[] typedef malloc() #ifdef 17mardi 11 décembre 12
  18. 18. Pointeurs 18mardi 11 décembre 12
  19. 19. Méthode de classe @class nil Propriétés NSString Protocoles Retain Release Polymorphisme Méthode d’instance @protocol Héritage @property NSObject 19mardi 11 décembre 12
  20. 20. NSObject 20mardi 11 décembre 12
  21. 21. nil 21mardi 11 décembre 12
  22. 22. Boîte à outils • NSString • NSArray • NSDictionary • NSSet 22mardi 11 décembre 12
  23. 23. Boîte à outils • NSString • NSMutableString • NSArray • NSMutableArray • NSDictionary • NSMutableDictionary • NSSet • NSMutableSet 22mardi 11 décembre 12
  24. 24. Syntaxe 23mardi 11 décembre 12
  25. 25. Déclaration #import <Foundation/Foundation.h> @interface Person:NSObject @property NSString *name; - (id)initWithName:(NSString *)name; + (id)personWithName:(NSString *)name; @end 24mardi 11 décembre 12
  26. 26. Implémentation #import "Person.h" @implementation Person @synthesize name = _name; - (id)initWithName:(NSString *)name { … } + (id)personWithName:(NSString *)name { … } @end 25mardi 11 décembre 12
  27. 27. Envoi de message ObjC [teller sayHello]; Java/C# teller.sayHello(); ObjC [teller sayHelloTo:person]; Java/C# teller.sayHello(person); 26mardi 11 décembre 12
  28. 28. Envoi de message ObjC [teller say:message to:person]; teller.say(message, person); Java/C# 27mardi 11 décembre 12
  29. 29. Sélecteur say:to: 28mardi 11 décembre 12
  30. 30. Initialisation, Propriétés Person *person1 = [[Person alloc] init]; Person *person2 = [[Person alloc] initWithName:@"Noé"]; Person *person3 = [Person personWithName:@"Jim"]; [person1 setName:@"Jen"]; Setter person2.name = @"Pam"]; NSString *name = [person1 name]; Getter NSString *otherName = person2.name; 29mardi 11 décembre 12
  31. 31. Gestion de la mémoire 30mardi 11 décembre 12
  32. 32. mardi 11 décembre 12
  33. 33. Reference Counting 32mardi 11 décembre 12
  34. 34. Setter (retain) - (void)setText:(NSString *)textValue { if (textValue != _text) { [textValue retain]; [_text release]; _text = textValue; } } 33mardi 11 décembre 12
  35. 35. Ouf… Automatic Reference Counting 34mardi 11 décembre 12
  36. 36. Anatomie d’une App 35mardi 11 décembre 12
  37. 37. Révisions Controller View Model 36mardi 11 décembre 12
  38. 38. Interface Utilisateur Outlets Actions ViewController Interface 37mardi 11 décembre 12
  39. 39. View ≠ ViewController 38mardi 11 décembre 12
  40. 40. Délégation UITextField @protocol UITextFieldDelegate • textFieldShouldBeginEditing: • textFieldDidBeginEditing: • textFieldShouldEndEditing: • textFieldDidEndEditing: • textField:shouldChangeCharactersInRange:replacementString: • textFieldShouldClear: • textFieldShouldReturn: 39mardi 11 décembre 12
  41. 41. Délégation UITextField delegate 40mardi 11 décembre 12
  42. 42. Délégation L’utilisateur a appuyé sur Retour ! UITextField delegate [delegate textFieldShouldReturn:self] 40mardi 11 décembre 12
  43. 43. Délégation L’utilisateur a appuyé sur Retour ! UITextField delegate [delegate textFieldShouldReturn:self] Ok, je lance une recherche 40mardi 11 décembre 12
  44. 44. Là où tout commence… AppDelegate 41mardi 11 décembre 12
  45. 45. Pause ! puis demo 42mardi 11 décembre 12
  46. 46. Pour commencer http://developer.apple.com/ios 43mardi 11 décembre 12
  47. 47. Merci 44mardi 11 décembre 12

×