Vous êtes sur la page 1sur 31

2ÈME ANNÉE CPI

PROGRAMMATION ORIENTÉE OBJET


ZAKARIA GHEID
Z.GHEID@ESI-SBA.DZ

FÉVRIER 2020
CHAPITRE 1
INTRODUCTION À LA POO (RAPPEL)

PROGRAMMATION ORIENTÉE OBJET– 2ÈME ANNÉE CPI - 2020


CH1 – INTRODUCTION (RAPPEL)
DIFFÉRENCE ENTRE PP ET PPO

LA PP EST SIMPLE ET FACILE À MANIPULER PAR LES DÉBUTANTS


PP
PROGRAMME Program exemple CODE
Var
f1() X x:...;
y:...;

f2() function f1():...


Y function f2():...
function f3():...
f3() Variables BEGIN
...
Fonctions END.

3 PROGRAMMATION ORIENTÉE OBJET– 2ÈME ANNÉE CPI - 2020


CH1 – INTRODUCTION (RAPPEL)
DIFFÉRENCE ENTRE PP ET PPO

AU FUR ET À MESURE QUE LE PROGRAMME VA AGRANDIR, LE CODE SERA


PP TRÈS COMPLIQUÉ

PROGRAMME CODE
f3()
f1() f3() a x
1- Difficile à lire
f2() f3() f3() b y
2- Difficile à modifier

f3() f3() c z 3- Difficile à étendre

Fonctions Variables

4 PROGRAMMATION ORIENTÉE OBJET– 2ÈME ANNÉE CPI - 2020


CH1 – INTRODUCTION (RAPPEL)
DIFFÉRENCE ENTRE PP ET PPO

LE PROGRAMME EST DÉCOUPÉ EN DES UNITÉS (OBJETS). LES VARIABLES


POO ET FONCTIONS DÉPENDANTES SONT REGROUPÉES DANS UN MÊME OBJET

PROGRAMME CODE
Attribut
a b c x 1- Facile à lire

2- Facile à modifier
f1() f2() f3()
Méthode 3- Facile à étendre
Objet Objet

5 PROGRAMMATION ORIENTÉE OBJET– 2ÈME ANNÉE CPI - 2020


CHAPITRE 2
OBJETS, CLASSES ET INTERFACES
(PARTIE I)

PROGRAMMATION ORIENTÉE OBJET– 2ÈME ANNÉE CPI - 2020


CH2 – OBJET, CLASSE ET INTERFACE

1- DÉFINITIONS 2- DÉCLARATION 3- COMPILATION


4- CONCLUSION
DE BASE JAVA ET DÉROULEMENT

7 PROGRAMMATION ORIENTÉE OBJET– 2ÈME ANNÉE CPI - 2020


CH2 – OBJET, CLASSE ET INTERFACE
1- DÉFINITIONS DE BASE

DÉFINITION

OBJET CLASSE INTERFACE

Elément de base de la Représente une famille Représente une famille


POO. Il contient un d’objets. Elle contient abstraite d’objets. Elle
ensemble d’attributs la définition des contient les noms des
(Etat) et peut exécuter attributs qui méthodes pouvant
un ensemble de constituent ses objet et être exécutées par ses
méthodes les méthodes pouvant objets.
(comportement) être exécutées par ses
objets

8 PROGRAMMATION ORIENTÉE OBJET– 2ÈME ANNÉE CPI - 2020


CH2 – OBJET, CLASSE ET INTERFACE
1- DÉFINITIONS DE BASE

EXEMPLE

OBJET CLASSE INTERFACE


produit1{ Produit { Perissable {
122, id, alertExp(),
Candia1L, nom, peutVendre()
90, prix, }
50 qte_en_stock,
} ajouterAuStock(qte)
}

9 PROGRAMMATION ORIENTÉE OBJET– 2ÈME ANNÉE CPI - 2020


CH2 – OBJET, CLASSE ET INTERFACE
1- DÉFINITIONS DE BASE

ANALOGIE AVEC LA PP

OBJET CLASSE INTERFACE


Est une variable Est un type concret Est un type abstrait

10 PROGRAMMATION ORIENTÉE OBJET– 2ÈME ANNÉE CPI - 2020


CH2 – OBJET, CLASSE ET INTERFACE
1- DÉFINITIONS DE BASE

REPRÉSENTATION GRAPHIQUE

Class Nom Interface <<Nom>>


Produit <<Perissable>>
- id + alertExp() Méthodes
- nom Attributs + peutVendre()
- prix
- qteEnStock
Méthodes
+ ajouterAuStock(qty)

11 PROGRAMMATION ORIENTÉE OBJET– 2ÈME ANNÉE CPI - 2020


CH2 – OBJET, CLASSE ET INTERFACE

1- DÉFINITIONS 2- DÉCLARATION 3- COMPILATION


4- CONCLUSION
DE BASE JAVA ET DÉROULEMENT

12 PROGRAMMATION ORIENTÉE OBJET– 2ÈME ANNÉE CPI - 2020


CH2 – OBJET, CLASSE ET INTERFACE
2- DÉCLARATION DES OBJETS, CLASSES ET INTERFACES

SYNTAXE JAVA A- DÉCLARATION D’UNE CLASSE (MODÈLE)

MODÈLE
class NomDeLaClasse{
//attributs
TypeAtt1 nomAtt1;
TypeAtt2 nomAtt2;
...
//méthodes
TypeRetourMét1 nomMét1(TypeParam1 nomParam1,...){
//core de la méthode
}
...
}

13 PROGRAMMATION ORIENTÉE OBJET– 2ÈME ANNÉE CPI - 2020


CH2 – OBJET, CLASSE ET INTERFACE
2- DÉCLARATION DES OBJETS, CLASSES ET INTERFACES

SYNTAXE JAVA A- DÉCLARATION D’UNE CLASSE (EXEMPLE)


CODE
class Produit{
//attributs
int id;
String nom;
double qteEnStock;

//méthodes
boolean ajouterAuStock(double qte){
/*traitement pour ajouter la quantité spécifiée
par le paramètre "qty" au stock*/
}
}

14 PROGRAMMATION ORIENTÉE OBJET– 2ÈME ANNÉE CPI - 2020


CH2 – OBJET, CLASSE ET INTERFACE
2- DÉCLARATION DES OBJETS, CLASSES ET INTERFACES

SYNTAXE JAVA B- DÉCLARATION D’UN OBJET (MODÈLE)

MODÈLE
//A- Déclaration en deux étapes

//1-Reservation de nom
NomDeLaClasse nomObjet;

//2-instanciation
nomObjet= new NomDeLaClasse();

//B- Déclaration en une étape


NomDeLaClasse nomObjet= new NomDeLaClasse();

15 PROGRAMMATION ORIENTÉE OBJET– 2ÈME ANNÉE CPI - 2020


CH2 – OBJET, CLASSE ET INTERFACE
2- DÉCLARATION DES OBJETS, CLASSES ET INTERFACES

SYNTAXE JAVA B- DÉCLARATION D’UN OBJET (EXEMPLE)

EXEMPLE
//A- Déclaration en deux étapes

//1-Reservation de nom
Produit prod1;

//2-instanciation
prod1 = new Produit();

//B- Déclaration en une étape


Produit prod1= new Produit();

16 PROGRAMMATION ORIENTÉE OBJET– 2ÈME ANNÉE CPI - 2020


CH2 – OBJET, CLASSE ET INTERFACE
2- DÉCLARATION DES OBJETS, CLASSES ET INTERFACES

SYNTAXE JAVA B- DÉCLARATION D’UNE INTERFACE (MODÈLE)

MODÈLE
interface NomDeLinterface{

//méthodes sans core


TypeRetourMét1 nomMét1(TypeX paramX,...);
TypeRetourMét2 nomMét2(TypeY paramY,...);
...
}

17 PROGRAMMATION ORIENTÉE OBJET– 2ÈME ANNÉE CPI - 2020


CH2 – OBJET, CLASSE ET INTERFACE
2- DÉCLARATION DES OBJETS, CLASSES ET INTERFACES

SYNTAXE JAVA B- DÉCLARATION D’UNE INTERFACE (EXEMPLE)

EXEMPLE
interface Perissable{

//méthodes sans core


void alertExp();
boolean peutVendre();
}

18 PROGRAMMATION ORIENTÉE OBJET– 2ÈME ANNÉE CPI - 2020


CH2 – OBJET, CLASSE ET INTERFACE

1- DÉFINITIONS 2- DÉCLARATION 3- COMPILATION


4- CONCLUSION
DE BASE JAVA ET DÉROULEMENT

19 PROGRAMMATION ORIENTÉE OBJET– 2ÈME ANNÉE CPI - 2020


CH2 – OBJET, CLASSE ET INTERFACE
3- COMPILATION ET EXÉCUTION

PROGRAMME JAVA A- STRUCTURE D’UN PROGRAMME JAVA

PACKAGE_1 PACKAGE_Z

CLASSE_1 CLASSE_N CLASSE_A CLASSE_B


… main() …

INTERFACE_1 INTERFACE_M INTERFACE_X INTERFACE_Y


… …

20 PROGRAMMATION ORIENTÉE OBJET– 2ÈME ANNÉE CPI - 2020


CH2 – OBJET, CLASSE ET INTERFACE
3- COMPILATION ET EXÉCUTION

PROGRAMME JAVA A- STRUCTURE D’UN PROGRAMME JAVA

Package_1: Package_z:
- Classe_1: - Classe_x:
- Attributs - Attributs
- Méthode_1: - Méthode_x1:
- Traitements … - Traitements
- Méthode_2: - Méthode_x2:
- Traitement - Traitement
- Méthode_n:…etc. - Méthode_xn:…etc.
- Classe_2:…etc. - Classe_y:…etc.

21 PROGRAMMATION ORIENTÉE OBJET– 2ÈME ANNÉE CPI - 2020


CH2 – OBJET, CLASSE ET INTERFACE
3- COMPILATION ET EXÉCUTION

PROGRAMME JAVA B- ORDRE DE DÉROULEMENT DU PROGRAMME


CODE
class class_x{
1- Chercher la classe qui contient la // atributs
méthode main() ...

2- Exécuter la méthode main() de //méthodes


haut jusqu’en bas ...

//méthode main
public static void main(String args[]){
//notre programme principal va ici
}
}

22 PROGRAMMATION ORIENTÉE OBJET– 2ÈME ANNÉE CPI - 2020


CH2 – OBJET, CLASSE ET INTERFACE
3- COMPILATION ET EXÉCUTION

COMPILATION JAVA A- FONCTIONNEMENT DU COMPILATEUR JAVA

1- Prend en entrée un programme écrit Code Byte Machine


en java source code virtuelle

2- Traduit le programme java dans un JVM Windows


32bits
langage intermédiaire appelé bytecode
(indépendant de la machine) Fichier.java Fichier.class
JVM Linux
32bits

3- Le programme compilé s’exécute …


dans un interpréteur appelé machine
virtuelle (JVM), installé sur la machine

23 PROGRAMMATION ORIENTÉE OBJET– 2ÈME ANNÉE CPI - 2020


CH2 – OBJET, CLASSE ET INTERFACE
3- COMPILATION ET EXÉCUTION

COMPILATION JAVA B- OUTILS NÉCESSAIRES POUR LA PROGRAMMATION JAVA

1- Pour écrire: un éditeur de texte

2- Pour compiler: le compilateur Java (javac)

3- Pour exécuter: une machine virtuelle Java (JVM) correspondante à votre machine

REMARQUE
Le compilateur Java (javac) et la machine virtuelle (JVM) sont disponibles dans un
seul pack appelé Java Development Kit (JDK) téléchargeable depuis le site d’Oracle

24 PROGRAMMATION ORIENTÉE OBJET– 2ÈME ANNÉE CPI - 2020


CH2 – OBJET, CLASSE ET INTERFACE

1- DÉFINITIONS 2- DÉCLARATION 3- COMPILATION


4- CONCLUSION
DE BASE JAVA ET DÉROULEMENT

25 PROGRAMMATION ORIENTÉE OBJET– 2ÈME ANNÉE CPI - 2020


CH2 – OBJET, CLASSE ET INTERFACE
4- CONCLUSION

QUIZ A- ELÉMENTS DE BASES

Q- Qu’est ce qu’ un objet, une classe et une interface?

R- Objet : élément de base, contient des attributs et exécute des méthodes.

- Classe: un type d’objets, définit l’ensemble d’attributs et méthodes constituant


ses objets.

- Interface: un type abstrait, définit l’ensemble de méthodes pouvant être exécutées


par ses objets.

26 PROGRAMMATION ORIENTÉE OBJET– 2ÈME ANNÉE CPI - 2020


CH2 – OBJET, CLASSE ET INTERFACE
4- CONCLUSION

QUIZ B- DÉCLARATION DES OBJETS, CLASSES ET INTERFACES EN JAVA

Q- Comment déclarer un objet, une classe et une interface en java?

R- Objet : à l’aide du mot clé « new » (diapo 15-16)

- Classe: à l’aide du mot clé « class » (diapo 13-14)

- Interface: à l’aide du mot clé « interface » (diapo 17-18)

27 PROGRAMMATION ORIENTÉE OBJET– 2ÈME ANNÉE CPI - 2020


CH2 – OBJET, CLASSE ET INTERFACE
4- CONCLUSION

QUIZ C- ECRIRE UN PROGRAMME EN JAVA

Q- Comment écrire un programme en java?

R- 1- Ecrire le code necessaire des classes et interface.

2- Dans une de vos classes, déclarer une méthode public static void
main(String args[])ou vous mettez votre programme principal (declaration
d’objets, affectation des valeurs, appel aux méthodes,…)

28 PROGRAMMATION ORIENTÉE OBJET– 2ÈME ANNÉE CPI - 2020


CH2 – OBJET, CLASSE ET INTERFACE
4- CONCLUSION

QUIZ D- COMPILATION ET EXÉCUTION JAVA

Q- Comment exécuter un programme java?

R- 1- Sauvegarder votre programme dans un fichier “nom.java”.

2- Télécharger le JDK correspondant à votre plateforme d’execution (SE+matériel)

3- Compiler votre fichier nom.java à l’aide du compilateur “javac”

4- Exécuter votre code compiler à l’aide de la machine virtuelle “java”

29 PROGRAMMATION ORIENTÉE OBJET– 2ÈME ANNÉE CPI - 2020


CHAPITRE 2
OBJETS, CLASSES ET INTERFACES
(PARTIE II)

PROGRAMMATION ORIENTÉE OBJET– 2ÈME ANNÉE CPI - 2020


TEMPLATE COPYRIGHT

© Copyright Showeet.com

PROGRAMMATION ORIENTÉE OBJET– 2ÈME ANNÉE CPI - 2020