SlideShare une entreprise Scribd logo

programmation orienté objet c++

C
coursuniv

par : http://coursuniversite.com/ programmation orienté objet c++

1  sur  110
[object Object],[object Object]
Plan du document ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Programmation << classique >> ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Décomposition fonctionnelle ,[object Object],[object Object],[object Object],[object Object],main() init() calcule() trie() affiche() compare() permute() factorise()
Programmation orientée objets ,[object Object],[object Object],[object Object],[object Object],[object Object]
Décomposition fonctionnelle classique main() init() calcule() trie() compare() permute() factorise() Données Données

Recommandé

Chapitre5: Classes et objets
Chapitre5: Classes et objetsChapitre5: Classes et objets
Chapitre5: Classes et objetsAziz Darouichi
 
Chapitre6: Surcharge des opérateurs
Chapitre6:  Surcharge des opérateursChapitre6:  Surcharge des opérateurs
Chapitre6: Surcharge des opérateursAziz Darouichi
 
Partie 11: Héritage — Programmation orientée objet en C++
Partie 11: Héritage — Programmation orientée objet en C++Partie 11: Héritage — Programmation orientée objet en C++
Partie 11: Héritage — Programmation orientée objet en C++Fabio Hernandez
 
Chapitre2fonctionscppv2019
Chapitre2fonctionscppv2019Chapitre2fonctionscppv2019
Chapitre2fonctionscppv2019Aziz Darouichi
 
c# programmation orientée objet (Classe & Objet)
c# programmation orientée objet (Classe & Objet)c# programmation orientée objet (Classe & Objet)
c# programmation orientée objet (Classe & Objet)Mahfoud EL HOUDAIGUI
 
Chapitre4: Pointeurs et références
Chapitre4: Pointeurs et références Chapitre4: Pointeurs et références
Chapitre4: Pointeurs et références Aziz Darouichi
 

Contenu connexe

Tendances

Héritage et polymorphisme- Jihen HEDHLI
Héritage et polymorphisme- Jihen HEDHLIHéritage et polymorphisme- Jihen HEDHLI
Héritage et polymorphisme- Jihen HEDHLIJihenHedhli1
 
UML Part 4- diagrammres de classes et d'objets mansouri
UML Part 4- diagrammres de classes et d'objets mansouriUML Part 4- diagrammres de classes et d'objets mansouri
UML Part 4- diagrammres de classes et d'objets mansouriMansouri Khalifa
 
Poo en c++ les relations entre classes
Poo en c++ les relations entre classesPoo en c++ les relations entre classes
Poo en c++ les relations entre classesAmina HAMEURLAINE
 
Correction Examen 2016-2017 POO .pdf
Correction Examen 2016-2017 POO .pdfCorrection Examen 2016-2017 POO .pdf
Correction Examen 2016-2017 POO .pdfslimyaich3
 
POO Java Chapitre 6 Exceptions
POO Java  Chapitre 6 ExceptionsPOO Java  Chapitre 6 Exceptions
POO Java Chapitre 6 ExceptionsMouna Torjmen
 
Partie 12: Polymorphisme — Programmation orientée objet en C++
Partie 12: Polymorphisme — Programmation orientée objet en C++Partie 12: Polymorphisme — Programmation orientée objet en C++
Partie 12: Polymorphisme — Programmation orientée objet en C++Fabio Hernandez
 
Programmation orientée objet : Object, classe et encapsulation
Programmation orientée objet : Object, classe et encapsulationProgrammation orientée objet : Object, classe et encapsulation
Programmation orientée objet : Object, classe et encapsulationECAM Brussels Engineering School
 
POO Java Chapitre 2 Encapsulation
POO Java Chapitre 2 EncapsulationPOO Java Chapitre 2 Encapsulation
POO Java Chapitre 2 EncapsulationMouna Torjmen
 
Chapitre1: Langage Python
Chapitre1: Langage PythonChapitre1: Langage Python
Chapitre1: Langage PythonAziz Darouichi
 
Exercice 1 java Héritage
Exercice 1 java HéritageExercice 1 java Héritage
Exercice 1 java HéritageNadaBenLatifa
 
Chapitre8: Collections et Enumerations En Java
Chapitre8: Collections et Enumerations En JavaChapitre8: Collections et Enumerations En Java
Chapitre8: Collections et Enumerations En JavaAziz Darouichi
 
Introduction à l’orienté objet en Python
Introduction à l’orienté objet en PythonIntroduction à l’orienté objet en Python
Introduction à l’orienté objet en PythonAbdoulaye Dieng
 
Site web d'une agence de voyage
Site web d'une agence de voyage Site web d'une agence de voyage
Site web d'une agence de voyage WissalWahsousse
 
Python For Data Science - French Course
Python For Data Science - French CoursePython For Data Science - French Course
Python For Data Science - French CourseHaytam EL YOUSSFI
 
Chp6 - De UML vers C++
Chp6 - De UML vers C++Chp6 - De UML vers C++
Chp6 - De UML vers C++Lilia Sfaxi
 
Développement d'un site web jee de e commerce basé sur spring (m.youssfi)
Développement d'un site web jee de e commerce basé sur spring (m.youssfi)Développement d'un site web jee de e commerce basé sur spring (m.youssfi)
Développement d'un site web jee de e commerce basé sur spring (m.youssfi)ENSET, Université Hassan II Casablanca
 

Tendances (20)

Introduction à Python
Introduction à PythonIntroduction à Python
Introduction à Python
 
Héritage et polymorphisme- Jihen HEDHLI
Héritage et polymorphisme- Jihen HEDHLIHéritage et polymorphisme- Jihen HEDHLI
Héritage et polymorphisme- Jihen HEDHLI
 
UML Part 4- diagrammres de classes et d'objets mansouri
UML Part 4- diagrammres de classes et d'objets mansouriUML Part 4- diagrammres de classes et d'objets mansouri
UML Part 4- diagrammres de classes et d'objets mansouri
 
Cours c++
Cours c++Cours c++
Cours c++
 
Poo en c++ les relations entre classes
Poo en c++ les relations entre classesPoo en c++ les relations entre classes
Poo en c++ les relations entre classes
 
Cours de c
Cours de cCours de c
Cours de c
 
Correction Examen 2016-2017 POO .pdf
Correction Examen 2016-2017 POO .pdfCorrection Examen 2016-2017 POO .pdf
Correction Examen 2016-2017 POO .pdf
 
POO Java Chapitre 6 Exceptions
POO Java  Chapitre 6 ExceptionsPOO Java  Chapitre 6 Exceptions
POO Java Chapitre 6 Exceptions
 
Partie 12: Polymorphisme — Programmation orientée objet en C++
Partie 12: Polymorphisme — Programmation orientée objet en C++Partie 12: Polymorphisme — Programmation orientée objet en C++
Partie 12: Polymorphisme — Programmation orientée objet en C++
 
Programmation orientée objet : Object, classe et encapsulation
Programmation orientée objet : Object, classe et encapsulationProgrammation orientée objet : Object, classe et encapsulation
Programmation orientée objet : Object, classe et encapsulation
 
Chap1: Cours en C++
Chap1: Cours en C++Chap1: Cours en C++
Chap1: Cours en C++
 
POO Java Chapitre 2 Encapsulation
POO Java Chapitre 2 EncapsulationPOO Java Chapitre 2 Encapsulation
POO Java Chapitre 2 Encapsulation
 
Chapitre1: Langage Python
Chapitre1: Langage PythonChapitre1: Langage Python
Chapitre1: Langage Python
 
Exercice 1 java Héritage
Exercice 1 java HéritageExercice 1 java Héritage
Exercice 1 java Héritage
 
Chapitre8: Collections et Enumerations En Java
Chapitre8: Collections et Enumerations En JavaChapitre8: Collections et Enumerations En Java
Chapitre8: Collections et Enumerations En Java
 
Introduction à l’orienté objet en Python
Introduction à l’orienté objet en PythonIntroduction à l’orienté objet en Python
Introduction à l’orienté objet en Python
 
Site web d'une agence de voyage
Site web d'une agence de voyage Site web d'une agence de voyage
Site web d'une agence de voyage
 
Python For Data Science - French Course
Python For Data Science - French CoursePython For Data Science - French Course
Python For Data Science - French Course
 
Chp6 - De UML vers C++
Chp6 - De UML vers C++Chp6 - De UML vers C++
Chp6 - De UML vers C++
 
Développement d'un site web jee de e commerce basé sur spring (m.youssfi)
Développement d'un site web jee de e commerce basé sur spring (m.youssfi)Développement d'un site web jee de e commerce basé sur spring (m.youssfi)
Développement d'un site web jee de e commerce basé sur spring (m.youssfi)
 

En vedette

Analyse et conception des systèmes d’information
Analyse et conception des systèmes d’informationAnalyse et conception des systèmes d’information
Analyse et conception des systèmes d’informationMireille Blay-Fornarino
 
C Plus Plus demo
C Plus Plus demoC Plus Plus demo
C Plus Plus demopadnot
 
Web-In 2010: Programmation Native iOS (French)
Web-In 2010: Programmation Native iOS (French)Web-In 2010: Programmation Native iOS (French)
Web-In 2010: Programmation Native iOS (French)Fred Brunel
 
Correction de td poo n2
Correction de td poo n2Correction de td poo n2
Correction de td poo n2yassine kchiri
 
Espejos en Aguas Quietas
Espejos en Aguas QuietasEspejos en Aguas Quietas
Espejos en Aguas QuietasOscar Ayala
 
Claude Levi Strauss
Claude Levi StraussClaude Levi Strauss
Claude Levi Straussplehnka
 
Protecting education personnel_french
Protecting education personnel_frenchProtecting education personnel_french
Protecting education personnel_frenchAhmed GALAI
 
Butlletí n.11 Acció de Govern
Butlletí n.11 Acció de GovernButlletí n.11 Acció de Govern
Butlletí n.11 Acció de Governsocialistes_ cat
 
Piloto coed hda santa clara
Piloto coed hda santa claraPiloto coed hda santa clara
Piloto coed hda santa claraAdalberto
 

En vedette (20)

TP C++ : enoncé
TP C++ : enoncéTP C++ : enoncé
TP C++ : enoncé
 
TP C++ : Correction
TP C++ : CorrectionTP C++ : Correction
TP C++ : Correction
 
Chapitre05 : Les tableaux
Chapitre05 : Les tableauxChapitre05 : Les tableaux
Chapitre05 : Les tableaux
 
Chapitre 01 - Notions de base
Chapitre 01 - Notions de baseChapitre 01 - Notions de base
Chapitre 01 - Notions de base
 
Chapitre 04 : les fonctions
Chapitre 04 : les fonctionsChapitre 04 : les fonctions
Chapitre 04 : les fonctions
 
Chapitre 02 : Variables, Expressions et Instructions
Chapitre 02 : Variables, Expressions et InstructionsChapitre 02 : Variables, Expressions et Instructions
Chapitre 02 : Variables, Expressions et Instructions
 
Chapitre 03 : Structures de contrôle
Chapitre 03 : Structures de contrôleChapitre 03 : Structures de contrôle
Chapitre 03 : Structures de contrôle
 
Serie de TD 3 POO
Serie de TD 3 POOSerie de TD 3 POO
Serie de TD 3 POO
 
Analyse et conception des systèmes d’information
Analyse et conception des systèmes d’informationAnalyse et conception des systèmes d’information
Analyse et conception des systèmes d’information
 
C Plus Plus demo
C Plus Plus demoC Plus Plus demo
C Plus Plus demo
 
TD Java POO
TD Java POO TD Java POO
TD Java POO
 
Web-In 2010: Programmation Native iOS (French)
Web-In 2010: Programmation Native iOS (French)Web-In 2010: Programmation Native iOS (French)
Web-In 2010: Programmation Native iOS (French)
 
Correction de td poo n2
Correction de td poo n2Correction de td poo n2
Correction de td poo n2
 
Introduction à C++
Introduction à C++Introduction à C++
Introduction à C++
 
Espejos en Aguas Quietas
Espejos en Aguas QuietasEspejos en Aguas Quietas
Espejos en Aguas Quietas
 
Claude Levi Strauss
Claude Levi StraussClaude Levi Strauss
Claude Levi Strauss
 
Protecting education personnel_french
Protecting education personnel_frenchProtecting education personnel_french
Protecting education personnel_french
 
Butlletí n.11 Acció de Govern
Butlletí n.11 Acció de GovernButlletí n.11 Acció de Govern
Butlletí n.11 Acció de Govern
 
Piloto coed hda santa clara
Piloto coed hda santa claraPiloto coed hda santa clara
Piloto coed hda santa clara
 
El Piano
El PianoEl Piano
El Piano
 

Similaire à programmation orienté objet c++

Deuxième partie.pptx
Deuxième partie.pptxDeuxième partie.pptx
Deuxième partie.pptxSafaeLhr1
 
Formation C# - Cours 3 - Programmation objet
Formation C# - Cours 3 - Programmation objetFormation C# - Cours 3 - Programmation objet
Formation C# - Cours 3 - Programmation objetkemenaran
 
Utilisation de ZK avec Java - Retour d’expérience
Utilisation de ZK avec Java - Retour d’expérienceUtilisation de ZK avec Java - Retour d’expérience
Utilisation de ZK avec Java - Retour d’expériencelouschwartz
 
Les nouveautés de C++11 : Ecrire du C++ Moderne
Les nouveautés de C++11 : Ecrire du C++ ModerneLes nouveautés de C++11 : Ecrire du C++ Moderne
Les nouveautés de C++11 : Ecrire du C++ ModerneMicrosoft
 
Découvrez C# 4.0 et les améliorations apportées à la BCL
Découvrez C# 4.0 et les améliorations apportées à la BCLDécouvrez C# 4.0 et les améliorations apportées à la BCL
Découvrez C# 4.0 et les améliorations apportées à la BCLDotNetHub
 
Introduction à React JS
Introduction à React JSIntroduction à React JS
Introduction à React JSAbdoulaye Dieng
 
Patterns and OOP in PHP
Patterns and OOP in PHPPatterns and OOP in PHP
Patterns and OOP in PHPjulien pauli
 
Java-2eme partie.pptx
Java-2eme partie.pptxJava-2eme partie.pptx
Java-2eme partie.pptxHassanAbdel
 
Java- LT informatique
Java-  LT informatiqueJava-  LT informatique
Java- LT informatiqueHassanChaaban
 
Qualité logicielle
Qualité logicielleQualité logicielle
Qualité logiciellecyrilgandon
 
Open close principle, on a dit étendre, pas extends !
Open close principle, on a dit étendre, pas extends !Open close principle, on a dit étendre, pas extends !
Open close principle, on a dit étendre, pas extends !Engineor
 
Visual Studio 2008 Overview
Visual Studio 2008 OverviewVisual Studio 2008 Overview
Visual Studio 2008 OverviewGregory Renard
 

Similaire à programmation orienté objet c++ (20)

Deuxième partie.pptx
Deuxième partie.pptxDeuxième partie.pptx
Deuxième partie.pptx
 
Formation C# - Cours 3 - Programmation objet
Formation C# - Cours 3 - Programmation objetFormation C# - Cours 3 - Programmation objet
Formation C# - Cours 3 - Programmation objet
 
Utilisation de ZK avec Java - Retour d’expérience
Utilisation de ZK avec Java - Retour d’expérienceUtilisation de ZK avec Java - Retour d’expérience
Utilisation de ZK avec Java - Retour d’expérience
 
Part1
Part1Part1
Part1
 
Les nouveautés de C++11 : Ecrire du C++ Moderne
Les nouveautés de C++11 : Ecrire du C++ ModerneLes nouveautés de C++11 : Ecrire du C++ Moderne
Les nouveautés de C++11 : Ecrire du C++ Moderne
 
Les Activités.pdf
Les Activités.pdfLes Activités.pdf
Les Activités.pdf
 
POO-chapitre3.pptx
POO-chapitre3.pptxPOO-chapitre3.pptx
POO-chapitre3.pptx
 
Découvrez C# 4.0 et les améliorations apportées à la BCL
Découvrez C# 4.0 et les améliorations apportées à la BCLDécouvrez C# 4.0 et les améliorations apportées à la BCL
Découvrez C# 4.0 et les améliorations apportées à la BCL
 
Introduction à React JS
Introduction à React JSIntroduction à React JS
Introduction à React JS
 
Patterns and OOP in PHP
Patterns and OOP in PHPPatterns and OOP in PHP
Patterns and OOP in PHP
 
POO
POOPOO
POO
 
Java-2eme partie.pptx
Java-2eme partie.pptxJava-2eme partie.pptx
Java-2eme partie.pptx
 
Presentation JPA
Presentation JPAPresentation JPA
Presentation JPA
 
Java- LT informatique
Java-  LT informatiqueJava-  LT informatique
Java- LT informatique
 
Qualité logicielle
Qualité logicielleQualité logicielle
Qualité logicielle
 
generation_code.pdf
generation_code.pdfgeneration_code.pdf
generation_code.pdf
 
Open close principle, on a dit étendre, pas extends !
Open close principle, on a dit étendre, pas extends !Open close principle, on a dit étendre, pas extends !
Open close principle, on a dit étendre, pas extends !
 
Visual Studio 2008 Overview
Visual Studio 2008 OverviewVisual Studio 2008 Overview
Visual Studio 2008 Overview
 
Pensez objets avec java
Pensez objets avec javaPensez objets avec java
Pensez objets avec java
 
Poo
PooPoo
Poo
 

Plus de coursuniv

Loi d’ohm et loi de joule
Loi d’ohm et loi de jouleLoi d’ohm et loi de joule
Loi d’ohm et loi de joulecoursuniv
 
Influences électrostatiques
Influences électrostatiquesInfluences électrostatiques
Influences électrostatiquescoursuniv
 
Réseaux électriques linéaires théorèmes généraux
Réseaux électriques linéaires théorèmes générauxRéseaux électriques linéaires théorèmes généraux
Réseaux électriques linéaires théorèmes générauxcoursuniv
 
Chapitre 2 potentiel électrostatique
Chapitre 2  potentiel électrostatiqueChapitre 2  potentiel électrostatique
Chapitre 2 potentiel électrostatiquecoursuniv
 
Généralité sur le courant électrique
Généralité sur le courant électriqueGénéralité sur le courant électrique
Généralité sur le courant électriquecoursuniv
 
Généralité sur le courant électrique
Généralité sur le courant électriqueGénéralité sur le courant électrique
Généralité sur le courant électriquecoursuniv
 
Chapitre 4 equilibre électrostatique des conducteurs
Chapitre 4   equilibre électrostatique des conducteursChapitre 4   equilibre électrostatique des conducteurs
Chapitre 4 equilibre électrostatique des conducteurscoursuniv
 
Chapitre 1 loi de coulomb et champ électrostatique
Chapitre 1  loi de coulomb et champ électrostatiqueChapitre 1  loi de coulomb et champ électrostatique
Chapitre 1 loi de coulomb et champ électrostatiquecoursuniv
 
Chapitre 3 théorème de gauss
Chapitre 3  théorème de gaussChapitre 3  théorème de gauss
Chapitre 3 théorème de gausscoursuniv
 
Analyse numerique
Analyse numeriqueAnalyse numerique
Analyse numeriquecoursuniv
 
Cours langage c
Cours langage cCours langage c
Cours langage ccoursuniv
 
Corrigés exercices langage C
Corrigés exercices langage CCorrigés exercices langage C
Corrigés exercices langage Ccoursuniv
 
Loi de coulomb
Loi de coulomb Loi de coulomb
Loi de coulomb coursuniv
 
Architecture des ordinateurs 3
Architecture des ordinateurs 3Architecture des ordinateurs 3
Architecture des ordinateurs 3coursuniv
 
Architecture 4
Architecture 4Architecture 4
Architecture 4coursuniv
 

Plus de coursuniv (20)

Algo et c
Algo et cAlgo et c
Algo et c
 
Loi d’ohm et loi de joule
Loi d’ohm et loi de jouleLoi d’ohm et loi de joule
Loi d’ohm et loi de joule
 
Influences électrostatiques
Influences électrostatiquesInfluences électrostatiques
Influences électrostatiques
 
Réseaux électriques linéaires théorèmes généraux
Réseaux électriques linéaires théorèmes générauxRéseaux électriques linéaires théorèmes généraux
Réseaux électriques linéaires théorèmes généraux
 
Chapitre 2 potentiel électrostatique
Chapitre 2  potentiel électrostatiqueChapitre 2  potentiel électrostatique
Chapitre 2 potentiel électrostatique
 
Généralité sur le courant électrique
Généralité sur le courant électriqueGénéralité sur le courant électrique
Généralité sur le courant électrique
 
Généralité sur le courant électrique
Généralité sur le courant électriqueGénéralité sur le courant électrique
Généralité sur le courant électrique
 
Chapitre 4 equilibre électrostatique des conducteurs
Chapitre 4   equilibre électrostatique des conducteursChapitre 4   equilibre électrostatique des conducteurs
Chapitre 4 equilibre électrostatique des conducteurs
 
Chapitre 1 loi de coulomb et champ électrostatique
Chapitre 1  loi de coulomb et champ électrostatiqueChapitre 1  loi de coulomb et champ électrostatique
Chapitre 1 loi de coulomb et champ électrostatique
 
Analyse s1
Analyse s1Analyse s1
Analyse s1
 
Chapitre 3 théorème de gauss
Chapitre 3  théorème de gaussChapitre 3  théorème de gauss
Chapitre 3 théorème de gauss
 
Analyse numerique
Analyse numeriqueAnalyse numerique
Analyse numerique
 
Excel
ExcelExcel
Excel
 
Excel
ExcelExcel
Excel
 
Cours langage c
Cours langage cCours langage c
Cours langage c
 
Corrigés exercices langage C
Corrigés exercices langage CCorrigés exercices langage C
Corrigés exercices langage C
 
C
CC
C
 
Loi de coulomb
Loi de coulomb Loi de coulomb
Loi de coulomb
 
Architecture des ordinateurs 3
Architecture des ordinateurs 3Architecture des ordinateurs 3
Architecture des ordinateurs 3
 
Architecture 4
Architecture 4Architecture 4
Architecture 4
 

programmation orienté objet c++

  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6. Décomposition fonctionnelle classique main() init() calcule() trie() compare() permute() factorise() Données Données
  • 7. Décomposition orientée objets init() calcule() trie() compare() permute() factorise() Données Données
  • 8. Habituellement, un programme c'est une suite d'instructions. L'ordinateur est très bête et il faut tout lui détailler. Exemple programme d’ouverture de porte Tout se passe très bien. Mais qu'est-ce qui se passe par exemple si on met une porte automatique ? Le programme sera incapable de trouver la poignée et d'ouvrir la porte ! Avantages de la programmation objet Mettre la main sur la poignée de la porte Tourner la poignée Pousser la porte Mettre le doigt sur l'interrupteur Appuyer sur l'interrupteur pour allumer l'ampoule
  • 9. En programmation objet, on associe aux objets des actions (aussi appellées méthodes ). Par exemple, à l'objet porte on peut associer la méthode ouvrir . De même pour l'ampoule on pourrait associer une méthode allumer , éteindre , etc. Le programme devient plus simple: On a plus besoin de savoir comment la portes'ouvre. On se contente de l'ouvrir. Pour indiquer qu'on applique la méthode (ouvrir) sur l'objet (porte), on note souvent objet . méthode (ici : porte.ouvrir). porte.ouvrir ampoule.allumer
  • 10. Bien sûr il faut détailler ce que fait la méthode ouvrir de porte et la méthode allumer de lumière . On ne va pas détailler dans le programme ce que fait la méthode ouvrir, mais on va le détailler dans l'objet lui-même . C'est normal, puisque la méthode ouvrir ne s'applique qu'à la porte, pas à la lumière: porte.ouvrir : Mettre la main sur la poignée Tourner la poignée Pousser la porte
  • 11. On peut changer la porte en mettant une porte automatique. On peut aussi l'ouvrir (même si la porte elle-même ne s'ouvre pas de la même façon): Mais votre programme pourra l'ouvrir sans rien changer: Le programme principal : il est inchangé malgré le changement de porte porte.ouvrir : Se placer devant la porte Attendre que la porte soit complètement ouverte porte.ouvrir ampoule.allumer
  • 12. La programmation objet a plusieurs intérêts, entre autres: Vous pouvez utiliser des objets sans savoir comment ils sont programmés derrière (c'est le cas notre ouverture de porte). Les objets peuvent être modifiés sans avoir à modifier votre programme (c'est aussi le cas ici). Les objets sont facilement réutilisables dans de nouveaux programmes. Les langages objets offrent des mécanismes pour permettre ce genre de programmation.
  • 13. Qu’est-ce qu’un objet ? + de cours sur http:// coursuniversite.com /
  • 14. Objets de la vie courante grosminet titi felix garfield Rêve poursuit poursuit mange parle odie 0605040302 0102030405 0203040506 007BEJ06 45BEJ91 123CDE91 001-DF-YTR java 2 Dupond Dupont
  • 16.
  • 17.
  • 18. Téléphone portable État appeler (personne) appeler (Bob) monTéléphone voirRépertoire() chercher Numero (personne) recevoir msg (msg) appeler (Bob et Paulette)
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24. Classe CompteBancaire CompteBancaire CompteBancaire solde déposer() retirer() attributs opérations Nom de la classe
  • 25.
  • 26.
  • 27. Héritage: les concepts + de cours sur http:// coursuniversite.com /
  • 28.
  • 29. Généralisation Constat: des caractéristiques communes calculerIntérêts () créditerIntérêts () changerTaux () déposer () retirer () taux intérêts solde CompteEpargne changerDecouvert () déposer () retirer () montantDécouvAutorisé solde CompteChèque
  • 30. Généralisation Nota : La sémantique de retirer est différente calculerIntérêts () créditerIntérêts () changerTaux () taux intérêts CompteEpargne changerDecouvert () retirer () montantDécouvertAutorisé CompteCheque déposer () retirer() solde CompteBancaire
  • 31. Spécialisation Un PlanEpargneLogement est un CompteEpargne ayant des caractéristiques propres calculerMontantPrêt() retirer() durée dateDebut périodiciteVersement montantVersement PlanEpargneLogement calculerIntérêts () créditerIntérêts () changerTaux () taux intérêts CompteEpargne PlanEpargneLogement
  • 32. Arborescence d'héritage changerDecouvert () retirer () montantDécouvAutorisé CompteChèque calculerIntérêts () créditerIntérêts () changerTaux () taux intérêts CompteEpargne déposer () retirer() solde CompteBancaire calculerMontantPrêt() retirer() durée dateDebut périodiciteVersement montantVersement PlanEpargneLogement
  • 33. Redéfinition d’une méthode Sémantique de la méthode retirer : CompteChèque : retrait autorisé suivant découvert CompteEpargne : pas de découvert autorisé PlanEpargneLogement : pas de retrait calculerIntérêts () créditerIntérêts () changerTaux () taux intérêts CompteEpargne calculerMontantPrêt() retirer () durée dateDebut périodiciteVersement montantVersement PlanEpargneLogement déposer () retirer () solde CompteBancaire ChangDecouvert () retirer () montantDécouvertAutorisé CompteChèque
  • 34.
  • 35.
  • 36. Associer les classes : Les concepts + de cours sur http:// coursuniversite.com /
  • 37. Association Une agence gère plusieurs clients. Un client possède un et un seul compte courant. gérer Compte Client Agence posséder
  • 38. Multiplicités les plus courantes 1 Un et un seul 0..1 Zéro ou un M..N De M à N (entiers naturels) * De zéro à plusieurs 0..* De zéro à plusieurs 1..* D'un à plusieurs gérer * 1 Compte Client Agence posséder 1 1
  • 39.
  • 40. Association multiple : Tableau de références sur des objets unClient:Client uneAgence:Agence nom adresse lesClients * 500 BNP EVRY … 0 500 indice
  • 41.
  • 42.
  • 43. Le langage C++ se veut un langage C amélioré. Il possède des fonctionnalités supplémentaires, et notamment * la surcharge de fonctions * le passage par référence * l'emplacement des déclarations * l'allocation dynamique Les apports spécifiques de C++ sont * l'aide à l'abstraction de données: définition de types de données, et de leur implémentation concrète. * l'aide à la programmation objet: hiérarchie de classes et héritage. Meilleur C
  • 44.
  • 45.
  • 46.
  • 47.
  • 48.
  • 49.
  • 50.
  • 51.
  • 52.
  • 53.
  • 54.
  • 55.
  • 56.
  • 57.
  • 58.
  • 59.
  • 60.
  • 61.
  • 62.
  • 63.
  • 64.
  • 65.
  • 66.
  • 67. // Fichier main.c #include &quot;point.h&quot; void main() { Point a(1,2), b(3,-5); a.affiche(); b.affiche(); a.deplace(1,1); a.affiche(); } // Fichier point.h class Point { int x, y; public: Point (int, int); void deplace (int, int); void affiche (); }; // Fichier point.c #include <iostream.h> #include &quot;point.h&quot; Point::Point(int a, int b) { x = a; y = b ; } void Point::deplace (int dx , int dy) { x += dx; y += dy; } void Point::affiche() { cout << &quot;x = &quot; << x <<&quot; , y = &quot;<< y << endl; }
  • 68.
  • 69.
  • 70.
  • 71.
  • 72.
  • 73.
  • 74.
  • 75.
  • 76.
  • 77.
  • 78.
  • 79.
  • 80.
  • 81.
  • 82.
  • 83.
  • 84.
  • 85.
  • 86.
  • 87.
  • 88.
  • 89.
  • 90.
  • 91.
  • 92.
  • 93.
  • 94.
  • 95.
  • 96.
  • 97.
  • 98.
  • 99.
  • 100.
  • 101.
  • 102.
  • 103.
  • 104.
  • 105.
  • 106.
  • 107.
  • 108.
  • 109.
  • 110.

Notes de l'éditeur

  1. On perçoit le monde comme un ensemble d ’objets Un objet possède un nom, unique : identité. Deux jumeaux (Dupont et Dupond) sont 2 personnes distinctes. Identité = les objets peuvent être distingués grâce à leur existence inhérente et non grâce à la description des propriétés qu&apos;ils peuvent avoir. =&gt; Faire pressentir que l ’on abstrait la réalité: On classe les objets par famille en faisant abstraction de quelques différences, de détails non pertinents. On élabore une définition théorique de ce que doit être un objet de cette classe Quand on voit un téléphone, quelle que soit la marque ou le type, on sait qu’on va pouvoir composer un numéro. Faire pressentir la différence entre objet de la vie courante et objet logiciel (on en parle vraiment slide 5) - les objets peuvent interagir entre eux, cf. slide suivant
  2. Objet coopératif Un objet agit sur son environnement On peut interagir avec la plupart des objets télé, téléphone, voiture Contre exemple : livre Chaque objet est capable de rendre un ensemble de services bien définis. On peut faire interagir les objets pour accomplir une tache complexe.
  3. On n’a pas à savoir qu’il y a des bougies de préchauffage ou non (diesel ou non), un carburateur et encore moins la coopération (interne) des ces objets … pour démarrer sa voiture. Idem pour un téléviseur. La télécommande sert à adresser des signaux de changements d’états mais à aucun moment le téléspectateur n’a à ouvrir sa télé pour changer de chaîne.
  4. Exercice conception Unité 1 sur le site web (&amp;quot;Définir les objets d&apos;un système&amp;quot;) Pour une voiture: services : démarrer État : niveaux (batterie, réservoirs) Identité : plaque d&apos;immatriculation La réalisation du service dépend de l&apos;état de l&apos;objet. La voiture démarre si niveau batterie OK
  5. Illustre le transparent précédent. + Les services sont définis précisément. Si on demande un service non défini,il ne peut être réalisé.
  6. Représentation graphique : rectangle avec une première partie pour l’identité d’objet, une deuxième pour attributs (constant ou variable) Conventions d’écritures - l’identité d’un attribut commence par une minuscule - quand on change de mot, majuscule - idem pour attribut variable - constante = tout en majuscule
  7. Pour réaliser un service demandé,un objet peut demander la coopération d&apos;un autre objet en lui envoyant à son tour un message. et ainsi de suite.
  8. Vous pouvez reprendre l&apos;exemple des Dupond et Dupont Exercice Conception sur le web : &amp;quot;Identité d&apos;objet&amp;quot;
  9. Nom du constructeur = nom de la classe