[PDF] La programmation orientée objet - 4e édition : Cours et exercices en





Previous PDF Next PDF



Untitled

AVEC L'ALTERNANCE. METTEZ UN PIED. CHEZ SNCF ET DEVENEZ. UNE POINTURE. SNCF. SNCF RECRUTE SUR SNCF.COM/FORMATION. Page 2 



LIVRE_Le Langage des Gestes pour les nuls_de Joseph Messinget

Joseph Messinger psychologue de formation



Académie de Caen

4 fév. 2015 DE FORMATION AU CŒUR DU FERROVIAIRE. AVEC L'ALTERNANCE. METTEZ UN PIED. CHEZ SNCF ET DEVENEZ. UNE POINTURE. SNCF RECRUTE SUR SNCF.



La fabrique de lalternance: la `` démocratie participative dans la

1 fév. 2012 leur environnement18 pour mettre à jour les variables multiples du ... complexe de fabrique de l'alternance que nous étions en train ...



Grammaires locales pour lanalyse automatique de textes: méthodes

24 sept. 2011 L'explosion du nombre de documents disponibles (notamment sur Internet) a rendu le domaine du Traitement Automatique des Langues (TAL) et ses ...



Enfant en jeu - HAL-SHS

15 jan. 2010 (soit comme animateurs soit en participant à la vie de famille dans le milieu rural)



Ergonomie des produits et des services

exemple au développement d'un « compagnon d'étude » qui détecte chez l'en- Principes de production de données sur le produit en devenir.



PROGRAMME DÉTUDES - FRANCISATION - Domaine des langues

développer chez les adultes pour lesquels la langue française n'est pas la langue maternelle les habiletés de base en français oral et écrit facilitant



Bulletin officiel n°31 du 30 juillet 2020 Sommaire

30 juil. 2020 pour mettre en œuvre une véritable continuité des apprentissages un suivi individuel des enfants. Elle s'appuie sur le Rased (réseau ...



La programmation orientée objet - 4e édition : Cours et exercices en

– Le livre de Java premier langage. Avec 80 exercices corrigés. N°12376 5e édition

L'approche objet est enseignée dans les universités dès les premiers niveaux des cursus informatiques, car sacompréhension est le prérequis indispensable à toute pratique économe, fiable et élégante de la plupart destechniques informatiques qui en sont dérivées, depuis Java et Python, jusqu'à UML 2, en passant par C# et C++.

L'objet par la pratique avec Python, Java, C# et C++ et PHP 5... en UML 2

Cette quatrième édition de l'ouvrage L'orienté objetdécortique l'ensemble des mécanismes de la programmation objet

(classes et objets, interactions entre classes, envois de messages, encapsulation, héritage, polymorphisme, modélisation...

en les illustrant d'exemples empruntant aux technologies les plus populaires : Java et C#, C++, Python, PHP 5, UML 2, mais

aussi les services web, RMI, les bases de données objet, différentes manières de résoudre

la mise en correspondance relationnel/objet par le langage innovant de requête objet LINQ et enfin les design patterns. Chaque chapitre est introduit par

un dialogue vivant, à la manière du maître et de l'élève, et se complète de nombreux exercices en UML 2, Java, Python,

PHP 5, C# et C++.

À qui s'adresse ce livre ?

• Ce livre sera lu avec profit par tous les étudiants de disciplines informatiques liées à l'approche objet (programmation orientée

objet, modélisation UML, Java, Python, PHP 5, C#/C++...) et pourra être utilisé par leurs enseignants comme matériel de cours.

• Il est également destiné à tous les développeurs qui souhaitent approfondir leur compréhension des concepts objet sous-

jacents au langage qu'ils utilisent.

Au sommaire

Principes de base :L'objet, version passive, version active - Notion de classe - Interaction et hiérarchie des objets -

Polymorphisme - Héritage.

La classe, module fonctionnel et opérationnel- La classe garante de son bon usage - Premier programme complet en Java, PHP 5 et Python, C# et C++. Du procédural à l'orienté objet : Mise en pra- tique - Analyse - Conception. Les objets parlent aux objets :Envois de messages - Association de classes -

Dépendance de classes.

Collaboration entre classes :Compilation Java et effet domino - En PHP 5, Python, C# et en C++ - Association unidirectionnelle/bidirectionnelle - Auto-association - Assemblage.

Méthodes ou messages :

Passage d'arguments prédéfinis dans les messages - Arguments objets. L'encapsulation des attributs :Accès aux attri-

buts d'un objet.

Les classes et leur jardin secret :Encapsulation des méthodes - Niveaux intermédiaires d'encapsu-

lation - Éviter l'effet papillon. Vie et mort des objets :C++, ou le programmeur seul maître à bord - Java, PHP 5,

Python et C#, ou la chasse au gaspi.

UML :Représentation graphique standardisée - Diagrammes de classe et de séquen-

ce. Héritage - Regroupement en superclasses - Héritage des attributs - Composition : Héritage des méthodes -

Encapsulation protected - Héritage public en C++ - Multihéritage. Redéfinition des méthodes :Un match de football polymorphique. Abstraite, cette classe est sans objet : De Canaletto à Turner - Abstraction syntaxique -

Supplément de polymorphisme.

Clonage, comparaison et assignation d'objets :La classe Object - Égalité, clonage et affectation d'objets en C++ et C#. Interfaces :Favoriser la décomposition et la stabilité - Java, PHP 5 et C# : inter- face via l'héritage - C++ : fichiers .h et .cpp. Distribution d'objets sur le réseau :RMI - Corba - Services web.

Multithreading :Implémentation en Java, PHP 5, Python et C# - Multithreading et diagrammes de séquence UML -

Vers les applications distribuées - Des threads équirépartis et synchronisés.

Programmation événementielle :Des

objets qui s'observent - En Java, PHP 5, Python et C#. Persistance d'objets :Sauvegarde sur fichier - La sérialisation - Bases de données relationnelles et objet - La bibliothèque LINQ. Simulation d'un flipper.

Les graphes :Liste liée -

Généricité en C++ et en Java, PHP 5 et Python- Les design patterns.

Le code source des exercices et leurs corrections sont fournis sur le site d'accompagnement www.editions-eyrolles.com.

Code éditeur : G12441 • ISBN : 978-2-212-12441-5

H. Bersini

Hugues Bersini

Ingénieur physicien, directeur du Laboratoire d'intelligence artificielle de l'Université libre de

Bruxelles, Hugues Bersini enseigne l'informatique et la programmation aux facultés polytechnique et Solvay de cette même université.

Ivan Wellesz

est développeur Java indépendant et formateur Unix, C et Java chez Orsys. Il a travaillé treize ans

chez Tektronix où il a participé à la conception d'interfaces homme-machine et de systèmes d'armes à DCN-BREST.

Programmation objet

35 ?
9 7 8 2 2 1 2 1 2 4 4 1 5

La programmation

orientée objet

Cours et exercices en UML 2,

avec Java 5, C# 2, C++, Python, PHP 5 et LINQ

Hugues Bersini

La programmation

orientée objet

Cours et exercices en UML 2

avec Java 5, C# 2, C++, Python, PHP 5 et LINQ bersini 2008 25/11/08 12:26 Page 1

La programmation

orientÈe objet bersini2008 titre 20/11/08 13:38 Page 1

DA N S L A M Ê M E C O L L E C T I O N

C . DE L A N N O Y. - Programmer en Java. Java 5 et 6. N°12232, 5e édition, 2007, 800 pages avec CD-Rom.

J.-B. B

O I C H AT. - Apprendre Java et C++ en parallèle. N° 12403, 4e édition, 2008, 600 pages avec CD-Rom. A . TASSO. - Le livre de Java premier langage.

Avec 80 exercices corrigés.

N°12376, 5e édition, 2008, 520 pages avec CD-Rom. C . DABA N C O U RT. - Apprendre à programmer.

Algorithmes et conception objet - BTS, Deug, IUT,

licence

N°12350, 2e édition, 2008, 296.

P. RO Q U E S. - UML 2 par la pratique. Étude de cas et exercices corrigés.

N°12322, 6e édition, 2008, 368.

A . TASSO. - Apprendre à programmer en ActionScript 3.

N°12199, 2008, 438 pages.

A . BR I L L A N T. - XML. Cours et exercices.

N°12151, 2007, 282 pages.

C . DE L A N N O Y. - C++ pour les programmeurs C.

N°12231, 6e édition, 2007, 602 pages.

C . SO U T O U. - UML 2 pour les bases de données.

Avec 20 exercices corrigés.

N°12091, 2007, 314 pages.

X BL A N C, I. MO U N I E R. - UML 2 pour

les développeurs.

N°12029, 2006, 202 pages

H . SU T T E R (trad. T. PE T I L L O N). - Mieux programmer en C++

N°09224, 2001, 215 pages.

P. HA G G A R (trad. T. TH A U R E A UX). -

Mieux programmer en Java

N°09171, 2000, 225 pages.

CH E Z L E M Ê M E ÉDI T E U R

B. ME Y E R. - Conception et programmation

orientées objet. N°12270, 2008, 1222 pages (Collection Blanche).

T. ZI ADÉ. - Programmation Python.

N°11677, 2006, 530 pages (Collection Blanche).

P. RO Q U E S. - UML 2. Modéliser une application web.

N°11770, 2006, 236 pages (coll. Cahiers du

programmeur). P. RO Q U E S, F. VA L L É E. - UML 2 en action.

De l'analyse des besoins à la conception.

N°12104, 4e édition 2007, 382 pages.

E . PU YBA R E T. - Swing.

N°12019, 2007, 500 pages (coll. Cahiers du

programmeur) E . PU YBA R E T. - Java 1.4 et 5.0.

N°11916, 3e édition 2006, 400 pages

(coll. Cahiers du programmeur) S P

O W E R S. - Débuter en JavaScript

N°12093, 2007, 386 pages

T.

TE MPL I E R, A. GO U G E O N. - JavaScript pour

le Web 2.0

N°12009, 2007, 492 pages

J. ZE LDM A N. - Design web : utiliser les standards,

CSS et XHTML.

N°12026, 2e édition 2006, 444 pages.

X. BR IF FA U LT, S. DU C A S S E. - Programmation Squeak

N°11023, 2001, 328 pages.

J.-L. BÉ N A RD, L. BO S S AVI T , R.MÉDI N A , D. WI L L I A M S. - L'Extreme Programming, avec deux études de cas.

N°11051, 2002, 300 pages.

P. RI G A UX, A. RO C HFE LD. - Traité de modélisation objet

N°11035, 2002, 308 pages.

Hugues Bersini

La programmation

orientÈe objet bersini2008 titre 20/11/08 13:38 Page 2

ÉDITIONS EYROLLES

61, bd Saint-Germain

75240 Paris Cedex 05

www.editions-eyrolles.com

Le code de la propriété intellectuelle du 1

er juillet 1992 interdit en effet expressément la photocopie à

usage collectif sans autorisation des ayants droit. Or, cette pratique s'est généralisée notamment dans les

établissements d'enseignement, provoquant une baisse brutale des achats de livres, au point que la possibilité

même pour les auteurs de créer des oeuvres nouvelles et de les faire éditer correctement est aujourd'hui

menacée.

En application de la loi du 11 mars 1957, il est interdit de reproduire intégralement ou partiellement le

présent ouvrage, sur quelque support que ce soit, sans autorisation de l'éditeur ou du Centre Français d'Exploitation du

Droit de Copie, 20, rue des Grands-Augustins, 75006 Paris. © Groupe Eyrolles, 2009, ISBN : 978-2-212-12441-5

Cet ouvrage est la quatrième édition avec mise à jour et changement de titre de l'ouvrage de Hugues Bersini

et Ivan Wellesz paru à l'origine sous le titre " L'Orienté objet » (ISBN 978-2-212-12084-8)

Table des matières

Avant-propos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

LÕorientation objet en deux mots . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2

Objectifs de lÕouvrage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

Plan de lÕouvrage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

Ë qui sÕadresse ce livre ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

CHAPITRE 1

Principes de base : quel objet pour l'informatique ? . . . . . . . . . . . . . . . . . . 9

Le trio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

Stockage des objets en mŽmoire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

LÕobjet dans sa version passive . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

LÕobjet dans sa version active . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

Introduction ˆ la notion de classe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

Des objets en interaction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

Des objets soumis ˆ une hiŽrarchie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

Polymorphisme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

HŽritage bien reu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

Exercices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

CHAPITRE 2

Un objet sans classe... n'a pas de classe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

Constitution dÕune classe dÕobjets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30

La classe comme module fonctionnel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

La classe comme garante de son bon usage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

La classe comme module opŽrationnel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37

Bersini 4e.book Page V Mardi, 2. décembre 2008 7:58 07

L'orienté objet

VI Un premier petit programme complet dans les cinq langages . . . . . . . . . . . . . . . . 39

La classe et la logistique de développement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50

Exercices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52

CHAPITRE 3

Du faire savoir au savoir-faire... du procédural à l'OO . . . . . . . . . . . . . . . . 57

Objectif objet : les aventures de l'OO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58

Mise en pratique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60

Analyse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60

Conception . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62

Impacts de l'orientation objet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62

CHAPITRE 4

Ici Londres : les objets parlent aux objets . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65

Envois de messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66

Association de classes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67

Dépendance de classes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68

Réaction en chaîne de messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70

Exercices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71

CHAPITRE 5

Collaboration entre classes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73

Pour en finir avec la lutte des classes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74

La compilation Java : effet domino . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76

En C#, en Python, PHP 5 et en C++ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77

De l'association unidirectionnelle à l'association bidirectionnelle . . . . . . . . . . . . . 79

Auto-association . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82

Package et namespace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83

Exercices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86

CHAPITRE 6

Méthodes ou messages ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87

Passage d'arguments prédéfinis dans les messages . . . . . . . . . . . . . . . . . . . . . . . . . 88

Passage d'argument objet dans les messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95

Une méthode est-elle d'office un message ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102

La mondialisation des messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104

Exercices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105

Bersini 4e.book Page VI Mardi, 2. décembre 2008 7:58 07

Table des matières

VII

CHAPITRE 7

LÕencapsulation des attributs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109

Accès aux attributs d'un objet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110

Encapsulation : pourquoi faire ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115

Exercices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120

CHAPITRE 8

Les classes et leur jardin secret . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123

Encapsulation des méthodes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124

Les niveaux intermédiaires d'encapsulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127

Afin d'éviter l'effet papillon . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131

Exercices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134

CHAPITRE 9

Vie et mort des objets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135

Question de mémoire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136

C++ : le programmeur est le seul maître à bord . . . . . . . . . . . . . . . . . . . . . . . . . . . 145

En Java, C#, Python et PHP 5 : la chasse au gaspi . . . . . . . . . . . . . . . . . . . . . . . . . 148

Exercices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154

CHAPITRE 10

UML 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159

Diagrammes UML 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161

Représentation graphique standardisée . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162

Du tableau noir à l'ordinateur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163

quotesdbs_dbs22.pdfusesText_28
[PDF] Indemnités pécuniaires - CNS

[PDF] recrutement d 'un(e) cfc dafpic de l 'académie de lyon fiche de poste

[PDF] (Online Shop) (CGV) - NAVYBOOT

[PDF] La mise en place d un système de comptabilité générale dans une

[PDF] Praticien spécialiste (médecin) - DSP de Tizi Ouzou

[PDF] direction des examens, concours professionnels et - UNAPEES

[PDF] Permanence CANEBIERE - Encre Bleue

[PDF] MATERNELLE elbilia maternelle primaire khouribga - Groupe Elbilia

[PDF] Praticien spécialiste (médecin) - DSP de Tizi Ouzou

[PDF] Insee - Institut national de la statistique et des études économiques

[PDF] Télédéclaration des loyers - Caf

[PDF] Annuaire de l 'inspection du travail en PACA - Santé et Sécurité au

[PDF] Enquête CAP initiale - Programme Solidarité Eau

[PDF] COORDONNEES DE L 'UPMC

[PDF] Biographie de Mme Fatema Marouane : ministre de l - Marocma