La programmation orientée objet : cours et exercices en UML2, Python, PHP, C#, C++ et Java (y compris Android)

Enregistré dans:
Détails bibliographiques
Auteur principal: Bersini, Hugues, 1961-
Support: Livre
Langue: Français
Publié: Paris : Eyrolles, DL 2017.
Édition: 7e édition.
Sujets:
Autres localisations: Voir dans le Sudoc
Résumé: Description des mécanismes de la programmation orientée objet avec des exemples tirés des langages les plus connus comme Java, C++ ou UML 2. Avec de nombreux exercices. ↑Electre 2018
Table des matières:
  • P. 1
  • Chapitre 1 Principes de base : quel objet pour l'informatique ?
  • P. 2
  • Le trio <entité, attribut, valeur>
  • P. 2
  • Stockage des objets en mémoire
  • P. 7
  • L'objet dans sa version passive
  • P. 9
  • L'objet dans sa version active
  • P. 11
  • Introduction à la notion de classe
  • P. 14
  • Des objets en interaction
  • P. 16
  • Des objets soumis à une hiérarchie
  • P. 18
  • Polymorphisme
  • P. 21
  • Chapitre 2 Un objet sans classe... n'a pas de classe
  • P. 22
  • Constitution d'une classe d'objets
  • P. 26
  • La classe comme module fonctionnel
  • P. 29
  • La classe comme garante de son bon usage
  • P. 30
  • La classe comme module opérationnel
  • P. 32
  • Un premier petit programme complet dans les cinq langages
  • P. 45
  • La classe et la logistique de développement
  • P. 46
  • Exercices
  • P. 51
  • Chapitre 3 Du faire savoir au savoir-faire du procédural à l'OO
  • P. 52
  • Objectif objet : les aventures de l'OO
  • P. 53
  • Mise en pratique
  • P. 53
  • Analyse
  • P. 55
  • Conception
  • P. 56
  • Conséquences de l'orientation objet
  • P. 59
  • Chapitre 4 Ici Londres : les objets parlent aux objets
  • P. 60
  • Envois de messages
  • P. 61
  • Association de classes
  • P. 63
  • Dépendance de classes
  • P. 66
  • Réaction en chaîne de messages
  • P. 67
  • Exercices
  • P. 69
  • Chapitre 5 Collaboration entre classes
  • P. 70
  • Pour en finir avec la lutte des classes
  • P. 70
  • La compilation Java : effet domino
  • P. 71
  • En C(...), Python, PHP ou C++
  • P. 73
  • De l'association unidirectionnelle à l'association bidirectionnelle
  • P. 76
  • Auto-association
  • P. 78
  • Paquets et espaces de noms
  • P. 81
  • Exercices
  • P. 83
  • Chapitre 6 Méthodes ou messages ?
  • P. 84
  • Passage d'arguments prédéfinis dans les messages
  • P. 89
  • Passage d'argument objet dans les messages
  • P. 97
  • Une méthode est-elle d'office un message ?
  • P. 100
  • La mondialisation des messages
  • P. 101
  • Exercices
  • P. 107
  • Chapitre 7 L'encapsulation des attributs
  • P. 108
  • Accès aux attributs d'un objet
  • P. 114
  • Encapsulation : pour quoi faire ?
  • P. 119
  • Exercices
  • P. 121
  • Chapitre 8 Les classes et leur jardin secret
  • P. 122
  • Encapsulation des méthodes
  • P. 126
  • Les niveaux intermédiaires d'encapsulation
  • P. 130
  • Exercices
  • P. 131
  • Chapitre 9 Vie et mort des objets
  • P. 132
  • Question de mémoire
  • P. 139
  • C++ : le programmeur est le seul maître à bord
  • P. 143
  • En Java, C(...), Python et PHP : la chasse au gaspi
  • P. 150
  • Exercices
  • P. 155
  • Chapitre 10 UML
  • P. 156
  • Diagrammes UML
  • P. 156
  • Représentation graphique standardisée
  • P. 157
  • Du tableau noir à l'ordinateur
  • P. 159
  • Programmer par cycles courts en superposant les diagrammes
  • P. 160
  • Diagramme de classe et diagramme de séquence
  • P. 161
  • Diagramme de classe
  • P. 197
  • Les bienfaits d'UML
  • P. 200
  • Diagramme de séquence
  • P. 206
  • Diagramme d'états-trasitions
  • P. 210
  • Exercices
  • P. 217
  • Chapitre 11 Héritage
  • P. 218
  • Comment regrouper les classes dans des superclasses ?
  • P. 219
  • Héritage des attributs
  • P. 224
  • Héritage ou composition ?
  • P. 225
  • Économiser en ajoutant des classes ?
  • P. 226
  • Héritage des méthodes
  • P. 235
  • La recherche des méthodes dans la hiérarchie
  • P. 236
  • Encapsulation protected
  • P. 237
  • Héritage et constructeurs
  • P. 243
  • Héritage public en C++
  • P. 244
  • Le multihéritage
  • P. 255
  • Exercices
  • P. 261
  • Chapitre 12 Redéfinition des méthodes
  • P. 262
  • La redéfinition des méthodes
  • P. 263
  • Beaucoup de verbiage mais peu d'actes véritables
  • P. 264
  • Un match de football polymorphique
  • P. 296
  • Exercices
  • P. 307
  • Chapitre 13 Abstraite, cette classe est sans objet
  • P. 308
  • De Canaletto à Turner
  • P. 308
  • Des classes sans objet
  • P. 309
  • Du principe de l'abstraction à l'abstraction syntaxique
  • P. 318
  • Un petit supplément de polymorphisme
  • P. 322
  • Exercices
  • P. 333
  • Chapitre 14 Clonage, comparaison et affectation d'objets
  • P. 334
  • Introduction à la classe Object
  • P. 336
  • Décortiquons la classe Object
  • P. 338
  • Test d'égalité de deux objets
  • P. 343
  • Le clonage d'objets
  • P. 347
  • Égalité et clonage d'objets en Python
  • P. 348
  • Égalité et clonage d'objets en PHP
  • P. 350
  • Égalité, clonage et affectation d'objets en C++
  • P. 361
  • En C(...), un cocktail de Java et de C++
  • P. 367
  • Exercices
  • P. 369
  • Chapitre 15 Interfaces
  • P. 370
  • Interfaces : favoriser la décomposition et la stabilité
  • P. 370
  • Java, C(...) et PHP : interface et héritage
  • P. 372
  • Les trois raisons d'être des interfaces
  • P. 385
  • Les interfaces dans UML 2
  • P. 387
  • En C++ : fichiers .h et fichiers .cpp
  • P. 390
  • Interfaces : du local à Internet
  • P. 391
  • Exercices
  • P. 395
  • Chapitre Distribution gratuite d'objets : pour services rendus sur le réseau
  • P. 396
  • Objets distribués sur le réseau : pourquoi ?
  • P. 400
  • RMI (Remote Method Invocation
  • P. 406
  • Corba (Common Object Request Broker Architecture)
  • P. 414
  • Ajoutons un peu de flexibilité à tout cela
  • P. 418
  • Les services web sur .Net
  • P. 430
  • Exercices
  • P. 433
  • Chapitre 17 Multithreading
  • P. 435
  • Informatique séquentielle
  • P. 436
  • Multithreading
  • P. 437
  • Implémentation en Java
  • P. 440
  • Implémentation en C(...)
  • P. 442
  • Implémentation en Python
  • P. 443
  • L'effet du multithreading sur les diagrammes de séquence UML
  • P. 444
  • Du multithreading aux applications distribuées
  • P. 445
  • Des threads équirépartis
  • P. 447
  • Synchroniser les threads
  • P. 455
  • Exercices
  • P. 459
  • Chapitre 18 Programmation événementielle
  • P. 460
  • Des objets qui s'observent
  • P. 461
  • En Java
  • P. 464
  • En C(...) : les délégués
  • P. 473
  • En Python : tout reste à faire
  • P. 475
  • Un feu de signalisation plus réaliste
  • P. 477
  • Exercices
  • P. 479
  • Chapitre 19 Persistance d'objets
  • P. 480
  • Sauvegarder l'état entre deux exécutions
  • P. 481
  • Simple sauvegarde sur fichier
  • P. 488
  • Sauvegarder les objets sans les dénaturer : la sérialisation
  • P. 493
  • Les bases de données relationnelles
  • P. 506
  • Réservation de places de spectacles
  • P. 511
  • Les bases de données relationnelles-objet
  • P. 514
  • Les bases de données orientées objet
  • P. 516
  • Django et Python
  • P. 518
  • LINQ
  • P. 524
  • Exercices
  • P. 527
  • Chapitre 20 Et si on faisait un petit flipper ?
  • P. 528
  • Généralités sur le flipper et les GUI
  • P. 540
  • Retour au Flipper
  • P. 553
  • Un petit tennis
  • P. 561
  • Chapitre 21 Les graphes
  • P. 562
  • Le monde regorge de réseaux
  • P. 563
  • Tout d'abord : juste un ensemble d'objets
  • P. 565
  • Liste liée
  • P. 571
  • La généricité en C++
  • P. 575
  • La généricité en Java et C(...)
  • P. 581
  • Passons aux graphes
  • P. 586
  • Exercices
  • P. 591
  • Chapitre 22 Petite chimie OO amusante
  • P. 592
  • Pourquoi de la chimie OO ?
  • P. 593
  • Les diagrammes de classes du réacteur chimique
  • P. 609
  • La simulation immunologique en OO ?
  • P. 615
  • Chapitre 23 Programmation Java sous Android
  • P. 617
  • Un petit calculateur élémentaire
  • P. 645
  • Chapitre 24 Design patterns
  • P. 646
  • Introduction aux design patterns
  • P. 647
  • Les patterns trucs et ficelles
  • P. 655
  • Les patterns qui se jettent à l'OO
  • P. 669
  • Index