| | Objective-C pour le développeur avancéLe langage iPhone/iPad et Mac OS X pour les développeurs C++/Java/C#de Pierre Chatelier |
Public visé : Intermédiaires, Avancés Résumé de l'éditeur
Le langage iPhone/iPad et Mac OS X pour les développeurs C++/Java/C#
Face à un C++ puissant, efficace et maîtrisé, Objective-C
surprend par sa richesse et sa souplesse.
Adressé au développeur confirmé, ce livre dense et érudit
guidera les amoureux de la programmation iPhone/iPad et Mac OS X
à travers toutes les subtilités de ce langage.
Objective-C, langage objet indispensable pour développer en natif
sous Mac OS X et pour l'iPhone et l'iPad.
Avec le succès de l'iPhone et de l'iPad, la maîtrise d'Objective-C,
langage natif des systèmes Apple Mac OS X et iPhone/iPad,
devient un passage obligé pour les professionnels de la programmation
- alors même qu'il ne fait pas partie de la formation classique
des développeurs.
Adressé au développeur qui connaît déjà d'autres langages objet,
cet ouvrage éclaire toutes les subtilités d'Objective-C en le
comparant avec les principaux langages que sont C++, Java,
C syntaxe et concepts objet
(classes, héritage, instanciation), gestion de la mémoire,
chaînes de caractères, exceptions, multithreading,
concept des propriétés, mécanismes de modifications à l'exécution...
sans oublier les nouveautés d'Objective-C 2.0.
Sommaire- Chapitre 1 - Le monde d'Objective-C
- Du C au modèle objet : les principaux protagonistes
- ObjectiveC et ses API (Cocoa...) : les racines non Unix de Mac OS X
- La bibliothèque standard Objective-C
- La documentation officielle d'Objective-C
- Compilation d'un programme Objective-C
- La bibliothèque runtime d'Objective-C
- Compilation et linkage
- Code minimal
- Différences 32/64 bits
- 32 et 64 bits côte à côte
- Interopérabilité d'Objective-C avec d'autres langages
- Chapitre 2 - Généralité sur la syntaxe
- Les mots-clefs d'Objective-C
- Les vrais mots-clefs
- Les faux mots-clefs
- Syntaxe autorisée par le C sous-jacent
- Commentaires
- Mélange code/déclarations
- Variable de boucle for
- Nouveaux types et valeurs en Objective-C
- Type BOOL, valeurs YES et NO
- Type id, valeur nil
- Type Class, valeur Nil
- Type SEL
- @encode()
- Organisation du code source : fichiers .h, fichiers .m et inclusion
- Nom des classes : pourquoi NS ?
- Fonctions et méthodes : une similarité trompeuse
- Chapitre 3 - Clases et objets
- Classe racine, type id, valeurs nil et Nil
- Déclaration des classes
- Attributs et méthodes
- Déclarations anticipées (forward) : @class, @protocol
- Visibilité public, protected, private
- Méthodes « privées »
- Données membres de classe (« static »)
- Méthodes, messages et fonctions
- Prototype et appel, méthodes d'instance, méthodes de classe
- Accès aux données d'instance de son objet déclencheur
- Les cibles self et super
- Identifiant et signature du prototype, surcharge
- Pointeur de méthode : le sélecteur
- Type SEL et @selector()
- Divers usages de sélecteur
- Callbacks
- Paramètres par défaut
- Nombre d'arguments variable
- Arguments muets
- Modificateurs de prototype (const, static, virtual, « =0 », friend, throw
- Messages et transmission
- Envoi d'un message à nil
- Délégation d'un message vers un objet inconnu
- Forwarding : gestion d'un message inconnu
- Méthodes et fonctions
- Cohabitation cordiale
- La fonction cachée derrière une méthode
- Manipulation au runtime des classes et méthodes
- Chapitre 4 - Les formes d'héritage
- Héritage simple
- Héritage multiple
- Downcasting
- Virtualité
- Héritage virtuel du C++
- Extension de classe (sans héritage) : les catégories
- Classes abstraites
- Chapitre 5 - Instantiation, destruction et copie
- Variable objet et pointeur d'objets
- Forme de Coplien
- Constructeurs, initialisateurs
- Destructeurs
- Opérateurs de copie
- Comparaison d'objets
- Étendre un objet
- Chapitre 6 - Gestion de la mémoire et ramasse-miettes
- new et delete
- Compteur de références (retain, release)
- alloc, copy, mutableCopy, retain, release
- autorelease
- Exemple de l'utilité des bassins d'autorelease
- Méthodes nécessitant une bonne compréhension de la gestion de la mémoire
- Ramasse-miettes (garbage collector)
- Singleton
- Chapitre 7 - Les chaînes de caractères en Objective-C
- Seuls objets « statiques » possibles d'un code source Objective-C
- NSString et les encodages
- NSString vers chaîne C
- NSLog(), extension de format %@, description d'un objet
- NSCharacterSet, NSMutableCharacterSet
- Interprétation des chaînes
- Expressions régulières
- Chapitre 8 - Les exceptions
- Lancer, intercepter, relancer : @try, @throw, @catch
- @finally
- Méthodes « filtres » d'exception
- Exception non interceptée (uncaught exception)
- Exception et bassin d'autorelease local
- Exceptions C++
- Spécificités 64 bits
- Chapitre 9 - Le multithreading et les outils associés
- @synchronized
- Le cas des propriétés
- volatile
- Les utilitaires Cocoa et système
- Les API de répartition de charge : NSOperation, Grand Central Dispatch
- Se passer du multithread
- Chapitre 10 - Code implicite et propriétés
- Key-value coding
- Propriétés
- Chapitre 11 - Le dynamisme et les manipulations du runtime
- De l'utilité du dynamisme
- Les RTTI du C++ (Run-Time Type Information)
- Introspection
- Manipulations avancées
- Binaire Objective–C et outils de consultation
- Chapitre 12 - La STL et Cocoa
- Conteneurs
- Itérateurs
- Foncteurs (objets-fonctions)
- Algorithmes
- Fonctions de rappels (callbacks) par blocks
- Chapitre 13 - Les évolutions d'Objective-C :
performances et extensions du langage
- Évolution des performances d'Objective-C
- Objective-C 2.0
- Objective-C++
- Une évolution non standard du C : les blocks
- ANNEXE A - Fonctionnalités propres au C++
- ANNEXE B - Mise en correspondance des fonctionnalités C++/Objective-C
- ANNEXE C - Glossaire
- Index
203 pages,
1ère édition,
Juin 2010
Editions Eyrolles,
ISBN10 : 2212127510,
ISBN13 : 9782212127515,
Collection Blanche Commandez sur Eyrolles :
30,40
EUR TTC seulement (au lieu de 32,00
EUR TTC : prix public) Commandez sur www.amazon.fr : 30,40 EUR TTC (prix éditeur 32,00 EUR TTC)
-
Livraison Gratuite ! |