objective C

758 vues

Publié le

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

  • Soyez le premier à aimer ceci

Aucun téléchargement
Vues
Nombre de vues
758
Sur SlideShare
0
Issues des intégrations
0
Intégrations
4
Actions
Partages
0
Téléchargements
35
Commentaires
0
J’aime
0
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

objective C

  1. 1. Développement Objective-c
  2. 2. Les bases d’objective-CAutres comparative d’Objective2.0Etude conceptsLes nouveautés d’Objective-C CConclusions et perspectives Application Introduction 2
  3. 3. Introductio n  Origine du langage  Domaines d’application  Environnements de travail3
  4. 4. IntroductionLes bases d’Objective-C Origine du langageAutres concepts d’Objective-C Environnements de travailLes nouveautés d’Objective-C 2.0 Domaines d’applicationConclusions et perspectives 4 4
  5. 5. IntroductionLes bases d’Objective-C Origine du langageAutres concepts d’Objective-C Environnements de travailLes nouveautés d’Objective-C 2.0 Domaines d’applicationConclusions et perspectives 5  Objective-C est un langage de programmation orienté objet, crée par Brad Cox et Tom Love Customer des années 80 au début fails to pay  Ce langage est inspiré du SmallTalk et du C 5
  6. 6. IntroductionLes bases d’Objective-C Origine du langageAutres concepts d’Objective-C Environnements de travailLes nouveautés d’Objective-C 2.0 Domaines d’applicationConclusions et perspectives 6 Objective-c est un langage multi plateforme Il est utilisé :  sous Mac OS d‘Apple avec la bibliothèque de classes Cocoa  Linux et Windows avec la bibliothèque de classes libre GNUstep Cocoa et GNUstep sont les successeurs de lAPI OpenStep, utilisée dans les systèmes dexploitation NeXTSTEP et OPENSTEP 6
  7. 7. IntroductionLes bases d’Objective-C Origine du langageAutres concepts d’Objective-C Environnements de travailLes nouveautés d’Objective-C 2.0 Domaines d’applicationConclusions et perspectives 7 ProjectCenter : LIDE GNUStep Il nécessite l’instalation de GCC et des bibliothéques GNUstep Cet IDE n est pas très développé Il est actuellement à sa version 0.6 qui est sortie en 12 décembre 2010 7
  8. 8. IntroductionLes bases d’Objective-C Origine du langageAutres concepts d’Objective-C Environnements de travailLes nouveautés d’Objective-C 2.0 Domaines d’applicationConclusions et perspectives 8 Xcode: LIDE Apple Un ensemble d’outils créé par Apple pour développement de des applications Mac . Il est actuellement à sa version 4.2 sortie avec MAC OS 10.7 8
  9. 9. IntroductionLes bases d’Objective-C Origine du langageAutres concepts d’Objective-C Environnement de travailLes nouveautés d’Objective-C 2.0 Domaine d’applicationConclusions et perspectives 9  Objective C est une solution technique proposée par Apple permettant de réaliser des applications vraiment bien adaptées pour les appareils de type mobile ou tablette. Customer  Elle est destiné uniquementfails to aux appareils de la marque pay Apple : 9
  10. 10. Les bases d’Objective C  ID  Objet  Types de base  Class10
  11. 11. Introduction IDLes bases d’Objective-C ObjetAutres concepts d’Objective-CLes nouveautés d’Objective-C 2.0 Types de baseConclusions et perspectives Class 11  Il existe deux sortes de typage:  Le typage statique : On précise le type de l’objet, c’est-à-dire la classe à laquelle appartient l’objet au moment de la déclaration. Le compilateur s’assure Customer que ce type est respecté tout au long du code. fails to pay  Le typage dynamique: On déclare l’objet sans type grâce au pointeur id. Le compilateur ne possède alors aucune connaissance sur le type de la référence qui peut représenter une instance de n’importe quelle classe L’Objective C se caractérise par le typage dynamique 11
  12. 12. Introduction IDLes bases d’Objective-C ObjetAutres concepts d’Objective-CLes nouveautés d’Objective-C 2.0 Types de baseConclusions et perspectives Class 12 ID:  En Objective-C, les objets sont identifiés par un type de données distinctes: id . Customer fails to  Ce type est défini comme un pointeur vers un pointeur vers pay les données de lobjet (ses variables dinstance). id anObject;  Tous les objets, indépendamment de leurs variables dinstance ou des méthodes, sont de type ID .  id est le type par défaut de la valeur retournée par n’importe quelle méthode Objective-C. 12
  13. 13. Introduction IDLes bases d’Objective-C ObjetAutres concepts d’Objective-C Types de baseLes nouveautés d’Objective-C 2.0 ClassConclusions et perspectives 13 Racine de l’arbre des classes • Object • NSObject Objective Java C Le préfixe NS vient de NextStep 13
  14. 14. Introduction IDLes bases d’Objective-C ObjetAutres concepts d’Objective-CLes nouveautés d’Objective-C 2.0 Types de baseConclusions et perspectives Class 14 NSObject NSArray NSString NSMutable 14
  15. 15. Introduction IDLes bases d’Objective-C ObjetAutres concepts d’Objective-CLes nouveautés d’Objective-C 2.0 Types de baseConclusions et perspectives Class 15  Objective-C est un sur-ensemble du langage C.  Il n’a fait que rajouter des concepts et les mots-clefs les accompagnant, notons également : Customer  la présence des valeurs nil et Nil: fails to pay  nil est l’équivalent de NULL pour un pointeur d’objet. nil et NULL ne sont pas interchangeables  Nil est l’équivalent de nil pour un pointeur de classe, car en Objective-C, les classes sont aussi des objets (instances de méta-classes)  la présence du type id, du type SEL et du type BOOL avec ses valeurs YES et NO 15
  16. 16. Introduction IDLes bases d’Objective-C ObjetAutres concepts d’Objective-CLes nouveautés d’Objective-C 2.0 Types de baseConclusions et perspectives Class 16  la présence de deux mots-clés self et super dont le fonctionnement est semblable aux this et super respectivement de C# et Java:  Le mot-clé self désigne l’objet courant dans la définition d’une méthode  Le mot-clé super désigne la classe parente Les mots-clés self et super sont très utilisés en Objective- C, notamment pour l’allocation et l’initialisation des instances. 16
  17. 17. Introduction IDLes bases d’Objective-C ObjetAutres concepts d’Objective-CLes nouveautés d’Objective-C 2.0 Types de baseConclusions et perspectives Class 17 Customer fails to pay 17
  18. 18. Introduction IDLes bases d’Objective-C ObjetAutres concepts d’Objective-CLes nouveautés d’Objective-C 2.0 Types de baseConclusions et perspectives Class 18 Fichier herder .h @interface MaClasse : NSObject { // vous placez ici toutes vos propriétés } // et vos méthodes en dehors des accolades Customer end fails to pay Fichier d’implémantation main.m // Vous devez absolument importer votre fichier .h #import «MaClasse.h »; @implentation MaClasse // vous placez ici votre code end 18
  19. 19. Introduction IDLes bases d’Objective-C ObjetAutres concepts d’Objective-CLes nouveautés d’Objective-C 2.0 Types de baseConclusions et perspectives Class 19 Message:  Les objets Objective-C communiquent entre eux grâce à des envois de messages qui sont gérés par le runtime Customer fails to  Les envois de message sepay en utilisant la syntaxe font suivante : [ recepteur message];  L’envoi de message correspond à un appel de fonctions. 19
  20. 20. Introduction IDLes bases d’Objective-C ObjetAutres concepts d’Objective-CLes nouveautés d’Objective-C 2.0 Types de baseConclusions et perspectives Class 20 Méthode:  Dans une classe , on peux définir des méthodes  de classe : préfixée par + ( correspondent aux Customer fails to méthodes statiques de java) pay  d’instance: préfixée par -  Les symboles + et – n’ont rien à voir avec la signification public et pravite de UML.  En Objective-C , les méthodes sont toujours publiques 20
  21. 21. Introduction IDLes bases d’Objective-C ObjetAutres concepts d’Objective-CLes nouveautés d’Objective-C 2.0 Types de baseConclusions et perspectives Class 21 Syntaxe: - ( void) myMethod : (int) : arg Type de Customer retour fails to pay Peut prendre n’importe type de données valide: void : pas de retour id : pointeur vers un objet de n’importe classe NSString* : pointeur vers une chaine de caractére ( NSString). 21
  22. 22. Introduction IDLes bases d’Objective-C ObjetAutres concepts d’Objective-CLes nouveautés d’Objective-C 2.0 Types de baseConclusions et perspectives Class 22 Syntaxe: - ( void) myMethod (int) : arg Type de Customer méthode fails to pay Peut prendre: +: pour les méthodes de classe - : pour les méthodes d’instance 22
  23. 23. Introduction IDLes bases d’Objective-C ObjetAutres concepts d’Objective-CLes nouveautés d’Objective-C 2.0 Types de baseConclusions et perspectives Class 23 Syntaxe: - ( void) myMethod : (int) : arg Nom de la Customer méthode to fails pay 23
  24. 24. Introduction IDLes bases d’Objective-C ObjetAutres concepts d’Objective-CLes nouveautés d’Objective-C 2.0 Types de baseConclusions et perspectives Class 24 Syntaxe: - ( void) mymethod : (int) : arg Type Nom de d’argument l’argument Déclaration de multiple argument : - (void) mymethodAndAlso : (int) arg1 : (int) arg2 ou aussi - (void) mymethod: (int) arg1 andAlso: (int) arg2 Méthode prend 2 argument et elle est appelée « mymethod:andAlso: » 24
  25. 25. Introduction IDLes bases d’Objective-C ObjetAutres concepts d’Objective-CLes nouveautés d’Objective-C 2.0 Types de baseConclusions et perspectives Class 25 Appel à la méthode: - ( void) myMethod : (int) : arg [myobject myMethod: 5]; - (void) myMethodAndAlso : (int) arg1 : (int) arg2 [myobject myMethodAndAlso :5:6]; - (void) myMethod: (int) arg1 andAlso: (int) arg2 [myObject myMethod:5 andAlso:6]; 25
  26. 26. Introduction IDLes bases d’Objective-C ObjetAutres concepts d’Objective-CLes nouveautés d’Objective-C 2.0 Types de baseConclusions et perspectives Class 26 visibilité pour les variables dinstance @ Private: la variable dinstance nest accessible que Customer dans la classe qui la déclare. fails to pay @ protected: la variable dinstance est accessible au sein de la classe qui le déclare et avec la classe qui en hérite. @ Public: la variable dinstance est accessible partout. 26
  27. 27. Cycle de vie d’un objet  Création d’objet  Gestion de mémoire  Destruction d’objet27
  28. 28. IntroductionLes bases d’Objective-C Création d’objetAutres concepts d’Objective-C Gestion de mémoireLes nouveautés d’Objective-C 2.0 Destruction d’objetConclusions et perspectives 28 Création d’objet: • 2 étapes:  allocation de mémoire pour stocker l’objet Customer + alloc Méthode de classe qui alloue l’espace fails to mémoire nécessaire pay  initialisation d’objet - init Méthode d’instance pour initialiser l’objet Création= allocation+ initialisation Person *person = nil; person = [[Person alloc] init]; 28
  29. 29. IntroductionLes bases d’Objective-C Création d’objetAutres concepts d’Objective-C Gestion de mémoireLes nouveautés d’Objective-C 2.0 Destruction d’objetConclusions et perspectives 29 Gestion de mémoire: //Pdf 406;;;PAG28 30 Mode managed(géré) via le mécanisme de comptage de référence( reference counting) : Customer • l’environnement d’exécution associe à chaque objet un compteur. fails to • Ce compteur représente le nombre de références pointant vers cet objet. pay • Si le compteur est> 0, lobjet est vivant et valide.  + alloc et –copy créent l’objet avec un compteur initialisé en 1  - retain incrémente le compteur  - release décrémente le compteur • Lorsque le compteur atteint 0 ,l’objet est détruit  - dealloc est appelée automatiquement • -(NSUInteger)retainCount Renvoi la valeur du compteur de référence sous forme d’entier. 29
  30. 30. IntroductionLes bases d’Objective-C Création d’objetAutres concepts d’Objective-C Gestion de mémoireLes nouveautés d’Objective-C 2.0 Destruction d’objetConclusions et perspectives 30 Le compteur de référence en action Person *person = [[Person alloc] init]; Customer [person retain]; fails to pay [person release]; [person release]; 30
  31. 31. IntroductionLes bases d’Objective-C Création d’objetAutres concepts d’Objective-C Gestion de mémoireLes nouveautés d’Objective-C 2.0 Destruction d’objetConclusions et perspectives 31 Les autorelease pools • les autorelease pools entrent en jeu dans la gestion de mémoire des objet dont on dispose pas directement de leur création via les méthodes alloc , init et copy • Un pool est une zone mémoire dans laquelle des objets sont alloués Customer fails to • Un autorelease pool est une instance de NSAutoreleasePool qui définit un champ dobjets temporaires pay • Ces objet sont ajoutés au autorelease pool actuel suite à un message - autoreleased . • Lorsque la autorelease pool est libérée tous les objets qui y ont été ajoutés sont automatiquement libérés. Cest un moyen simple de gérer la libération automatique des objets qui sont nécessaires temporairement. 31
  32. 32. IntroductionLes bases d’Objective-C Création d’objetAutres concepts d’Objective-C Gestion de mémoireLes nouveautés d’Objective-C 2.0 Destruction d’objetConclusions et perspectives 32 Customer fails to pay 32
  33. 33. IntroductionLes bases d’Objective-C Création d’objetAutres concepts d’Objective-C Gestion de mémoireLes nouveautés d’Objective-C 2.0 Destruction d’objetConclusions et perspectives 33 L’objet est créé Customer fails to pay 33
  34. 34. IntroductionLes bases d’Objective-C Création d’objetAutres concepts d’Objective-C Gestion de mémoireLes nouveautés d’Objective-C 2.0 Destruction d’objetConclusions et perspectives 34 L’objet est ajouté à la pool suite à -autorealease Customer fails to pay 34
  35. 35. IntroductionLes bases d’Objective-C Création d’objetAutres concepts d’Objective-C Gestion de mémoireLes nouveautés d’Objective-C 2.0 Destruction d’objetConclusions et perspectives 35 Lorsque la pool est libérée elle-même , elle envoie -realease à tous ses objets Customer fails to pay 35
  36. 36. IntroductionLes bases d’Objective-C Création d’objetAutres concepts d’Objective-C Gestion de mémoireLes nouveautés d’Objective-C 2.0 Destruction d’objetConclusions et perspectives 36 Lorsque la pool est libérée elle-même , elle envoie -realease à tous ses objets Customer fails to pay 36
  37. 37. IntroductionLes bases d’Objective-C Création d’objetAutres concepts d’Objective-C Gestion de mémoireLes nouveautés d’Objective-C 2.0 Destruction d’objetConclusions et perspectives 37 Lorsque la pool est libérée elle-même , elle envoie -realease à tous ses objets Customer fails to pay 37
  38. 38. IntroductionLes bases d’Objective-C Création d’objetAutres concepts d’Objective-C Gestion de mémoireLes nouveautés d’Objective-C 2.0 Destruction d’objetConclusions et perspectives 38 Lorsque la pool est libérée elle-même , elle envoie -realease à tous ses objets Customer fails to pay 38
  39. 39. Autres concepts d’Objective C  L’héritage  Le polymorphisme et La surcharge  Protocole  Catégories  Run-time39
  40. 40. Introduction HéritageLes bases d’Objective-C Polymorphisme et surchargeAutres concepts d’Objective-C ProtocoleLes nouveautés d’Objective-C 2.0 CatégoriesConclusions et perspectives Run-Time 40 Héritage:  La réutilisation du code dune classe mère dans une classe fille. Customer  Comme Java, Objective C est un langage orienté objet à fails to héritage simple. Héritage pay @interface NomClassFille: NomClassMere déclaration des méthodes @end  Objective-C n’implémente pas l’héritage multiple, et le compense par d’autres concepts: les protocoles et les catégories . 40
  41. 41. Introduction HéritageLes bases d’Objective-C Polymorphisme et surchargeAutres concepts d’Objective-C ProtocoleLes nouveautés d’Objective-C 2.0 CatégoriesConclusions et perspectives Run-Time 41 Polymorphism e:  Le polymorphisme est un concept extrêmement puissant en POO, il permet de manipuler des objets sans en connaître le type tout en se basant sur la relation d’héritage.  Un objet a comme type non seulement sa classe mais aussi n’importe quelle classe dérivée.  L’Objective C supporte le polymorphisme simple qui est présenté par l’intermédiaire des protocoles . Surcharge:  Contrairement à C + +, Java et C #, l’Objective C ne supporte pas la surcharge des méthodes et des 41 opérateurs.
  42. 42. Introduction HéritageLes bases d’Objective-C Polymorphisme et surchargeAutres concepts d’Objective-C ProtocoleLes nouveautés d’Objective-C 2.0 CatégoriesConclusions et perspectives Run-Time 42 Protocole :  Un protocole est un ensemble de méthodes définies pour être implémentées par des classes adhérentes.  Le protocole ne fournit donc pas d’implémentation, mais Customer juste la définition des méthodes. fails to pay Cette notion est reconnue en langage java par interface ( ne faut donc pas confondre avec la notion dinterface de objective C). les protocoles Declaration de protocole un fichier d’en-tête ( .h) sont déclarés dans @protocole Nom-protocole déclaration des méthodes @end 42
  43. 43. Introduction HéritageLes bases d’Objective-C Polymorphisme et surchargeAutres concepts d’Objective-C ProtocoleLes nouveautés d’Objective-C 2.0 CatégoriesConclusions et perspectives Run-Time 43  Une classe peut implémenter un nombre quelconque de protocoles implémentation de protocole par une classe @interface NomClass :Nom_super_Class <proto1,proto2….> //implémentation @end  Son implémentation doit alors contenir une définition pour toutes les méthodes de tous les protocoles de la liste 43
  44. 44. Introduction HéritageLes bases d’Objective-C Polymorphisme et surchargeAutres concepts d’Objective-C ProtocoleLes nouveautés d’Objective-C 2.0 CatégoriesConclusions et perspectives Run-Time 44 Les catégories : Les catégories permettent d’étendre les fonctionnalités d’une classe sans avoir besoin de définir une sous-classe en ajouter des méthodes à la classe existante. Customer La déclaration et l’implémentation d’une catégorie sont fails to similaires à celles d’une classe pay Catégorie #import « NomClassACatégoriser.h » @interface NomClassACatégoriser (NomCatégorie) // declaration des attributs et des méthodes @end @implementation NomClassACatégoriser (NomCatégorie) // declaration des variables // implémentation des méthodes 44
  45. 45. Introduction HéritageLes bases d’Objective-C Polymorphisme et surchargeAutres concepts d’Objective-C ProtocoleLes nouveautés d’Objective-C 2.0 CatégoriesConclusions et perspectives Run-Time 45 Run-Time:  Le système dexécution en Objective C est un élément essentiel de la langue. Customer  Le run-time fournit le comportement de la liaison fails to dynamique, ainsi que quelques autres fonctionnalités pay très puissantes, comme le chargement dynamique de classes dans un programme en cours, prévoyant la persistance des objets, et de soutenir certaines des caractéristiques de lhéritage multiple.  Les capacités et la mise en œuvre de la composante temps dexécution de lObjective C a tendance à varier entre les compilateurs plus dautres caractéristiques du langage. 45
  46. 46. Les nouveautés d’Objective-C 2.0  Garbage Collector  @Properties,@ synthesize  @optional,@required  Dot Syntax46
  47. 47. Introduction Garbage CollectorLes bases d’Objective-C @Properties,@ synthesizeAutres concepts d’Objective-CLes nouveautés d’Objective-C 2.0 @optional,@requiredConclusions et perspectives Dot Syntax 47 2007 : Sortie de Mac OS X v10.5 Leopard Mise à jours des standards de l’objective-C Customer fails to Nouveautés: pay  Outils de gestion de mémoire dynamique regroupés dans un système nommé garbage collector.  Ajout de mots clés :@proprty,@ synthesize  Modifications de syntaxe ( Dot Syntax) 47
  48. 48. Introduction Garbage CollectorLes bases d’Objective-C @Properties,@ synthesizeAutres concepts d’Objective-CLes nouveautés d’Objective-C 2.0 @optional,@requiredConclusions et perspectives Dot Syntax 48Garbage Collector: Comme dans le monde java et .Net,La fonction principale d’un ramasse-miettes est de trouver les objets qui ne sont plus utilisés afin de libérer la mémoire qu’ils occupent. L’activation du ramasse-miettes se fait au moment de la compilation, Customer et c’est donc une option à passer au to fails compilateur pay Il existe trois modes différents pour la gestion automatique de la mémoire :  Unsupported (non compatible ): Le code n’est pas écrit pour la gestion automatique de mémoire et est donc incompatible avec le garbage Collector  Required (nécessaire ): Le garbage collector est requis car le code ne gère pas la mémoire (retain/release).  Supported (compatible): Cela signifie que le code peut s’exécuter en mode ramasse-miettes, mais également en mode géré 48
  49. 49. Introduction Garbage CollectorLes bases d’Objective-C @Properties,@ synthesizeAutres concepts d’Objective-C @optional,@requiredLes nouveautés d’Objective-C 2.0 Dot SyntaxConclusions et perspectives 49@Properties,@ synthesize La synthèse automatique des accesseurs et modificateurs se fera avec : Customer fails to pay  @ Properties : génèration des déclarations de setter et des getter dans l’interface (.h)  @synthesize : génèration des implémentations de setter et des getter dans dans le fichier d’implémentation (.m) 49
  50. 50. Introduction Garbage CollectorLes bases d’Objective-C @Properties,@ synthesizeAutres concepts d’Objective-C @optional,@requiredLes nouveautés d’Objective-C 2.0 Dot SyntaxConclusions et perspectives 50@Properties: Par défaut, les propriétés crées:  porteront respectivement le nom de nom/setNom pour le Customer getter et le setter fails to pay - (void) setMaChaine: (NSString @property NSString * *)chaine; maChaine; - (NSString *) maChaine;  sont en lecture et écriture (readwrite) On peut modifier ces valeurs par défauts en ajoutant des attributs aux propriétés 50
  51. 51. Introduction Garbage CollectorLes bases d’Objective-C @Properties,@ synthesizeAutres concepts d’Objective-CLes nouveautés d’Objective-C 2.0 @optional,@requiredConclusions et perspectives Dot Syntax 51@Properties: Declaration: @propery (writability, setter, atomicity) type name;  Writability :readonly, readwrite  Setter semantic :assign, copy, retain Customer  Atomicity :atomic, nonatomic fails to pay On peut modifier ces valeurs par défauts en ajoutant des attributs aux propriétes : @property (getter=maChaine) NSString * maChaine; @property (setter=setMaChaine) NSString * maChaine; @property (getter=maChaine, setter=setMaChaine) NSString * maChaine; @property NSString * maChaine; @property (readwrite) NSString * maChaine; 51
  52. 52. Introduction Garbage CollectorLes bases d’Objective-C @Properties,@ synthesizeAutres concepts d’Objective-CLes nouveautés d’Objective-C 2.0 @optional,@requiredConclusions et perspectives Dot Syntax 52  Lorsqu’une classe implémente un protocole, elle doit implémenter toutes ses méthodes .  Avec Objective-C 2.0, les nouveaux mots-clefs @optional Customer et @required permettent de distinguer des méthodes fails to optionnelles des méthodespay obligatoires. Declaration de protocole @protocole Nom-protocole @optional - (void) methodeoptionnelle ; @required - (void) methodheObligatoire ; @end 52
  53. 53. Introduction Garbage CollectorLes bases d’Objective-C @Properties,@ synthesizeAutres concepts d’Objective-CLes nouveautés d’Objective-C 2.0 @optional,@requiredConclusions et perspectives Dot Syntax 53Dot Syntax : C’est une nouvelle syntaxe introduite avec Objective C 2.0 utilisant un point (.) au lieu des crochets habituels ([ ]) int age= [person age] Customer ; int age=peron.age ; fails to [person setAge:newAge] ; pay peron.age = newAge; Une meilleur lisibilité du code lorsque plusieurs messages doivent être imbriqués [[person child] setAge:newAge] ; peron.child.age = newAge; 53
  54. 54. Etude comparative d’Objective C  Objective C VS Java  Autres Comparaisons54
  55. 55. IntroductionLes bases d’Objective-C Objective C VS JavaLes concepts d’orienté objet dans Objective-CLes nouveautés d’Objective-C 2.0 Autres ComparaisonsConclusions et perspectives 55 Java Objective C les API sont définies et mises en les API cohérentes sont définies par la Langage Orienté Objet à la fois Langage Orienté Objet compilé œuvre par les distributions Sun Java spécification OpenStep. compilé et interprété (en langage directement en langage machine Development Kit Ceci est mis en œuvre par GNUstep intermédiaire) et Mac OS X Cocoa. La syntaxe de Java est basé sur le est basé sur C, et les extensions OO utilise garbage collection pour la utilise la gestion de la mémoire langage C + + sont comparables à ceux de Smalltalk gestion de la mémoire manuelle, le comptage de référence, est typé statiquement, mais fournit les et garbage collection comme des est typé dynamiquement, mais fournit mécanismes de type-casting pour options également le typage statique contourner interfaces limitations du fournit des certaines fournit des protocoles typage statique Tas fixes Tas sont géré par lOS et le système dexécution 55
  56. 56. IntroductionLes bases d’Objective-C Objective C VS JavaLes concepts d’orienté objet dans Objective-C Autres ComparaisonsLes nouveautés d’Objective-C 2.0Conclusions et perspectives 56 56
  57. 57. 57 Merci pour votre Attention

×