SlideShare une entreprise Scribd logo
1  sur  8
Télécharger pour lire hors ligne
SUPPORT DE COURS
PROGRAMMATION ORIENTÉE OBJET
1
CHAPITRE 1
INTRODUCTION GÉNÉRALE
2
1. La programmation orientée objet
La Programmation Orientée Objet (POO) est un style de programmation où l’on
considère que les composants autonomes (les objets) disposent de ressources et de
moyens d’interaction entre eux.
La programmation procédurale suppose que le programmeur s’intéresse en priorité aux
traitements que son programme devra effectuer.
Identifier les traitements puis Ecrire les fonctions les données sont des paramètres
d’entrées aux fonctions
La programmation orientée objet propose une méthodologie centrée sur les données.
Identifier un ensemble d’objets, puis écrire les traitements On associe chaque
traitement à un objet donné.
Un objet peut être vu comme une entité regroupant un ensemble de données et de
méthodes (l’équivalent d’une fonction en C) de traitement.
Idée de base :
o Regrouper les données et les traitements relatifs à une même entité (réelle ou
conceptuelle) dans une entité informatique appelée objet.
o Un système d’information est un ensemble d’objets qui interagissent.
o Les modèles d’objets sont définis dans des classes.
Avantages :
o Meilleure modularité
o Maintenance aisée des applications
o Réutilisabilité des objets dans d’autres programmes
2. L’Objet
Les données de l’objet sont appelées des attributs. Elles indiquent son état à un instant
donné.
Les traitements (ou fonctions) de l’objet sont appelés des méthodes. Ils définissent son
comportement.
Chaque objet possède une identification unique qui est indiquée par une ou plusieurs
références.
L’objet peut se comporter comme une boite noire (le contenu est masqué par des contrôles
d’accès). Dans ce cas, quelques méthodes doivent assurer son intégration dans le système
(interface de service)
3
Un objet est une variable (presque) comme les autres. Il faut notamment qu’il soit déclaré
avec son type. Le type d’un objet est un type complexe (par opposition aux types primitifs
entier, caractère, …) qu’on appelle une classe.
3. La Classe
La classe est un modèle de définition pour les objets ayant les mêmes propriétés.
Une classe doit être considérée comme un nouveau type défini par le concepteur.
Il existe des contrôles d’utilisation d’une classe.
La classe définie les contrôles (ou restrictions) d’accès aux membres (attributs et
méthodes) de ses objets.
Le contrôle d’utilisation d’une classe et celui d’accès aux membres d’une classe sont deux
concepts différents.
Une classe regroupe un ensemble de données (qui peuvent être des variables primitives
ou des objets) et un ensemble de méthodes de traitement de ces données et/ou de données
extérieures à la classe.
4. Le langage Java
Java est un langage de programmation orienté objet (pur), développé par
« Sun Microsystems» en 1995 et racheté par « Oracle » en 2009.
Java est multi-plateforme : il est conçu pour être indépendant de la machine exécutant le
code grâce à la JVM (Java Virtual Machine ou machine virtuelle de Java).
Java est interprété : le code source est compilé en pseudo code (byte code) puis exécuté
par la JVM.
Java est multithread : un thread est une entité d’exécution qui peut s’exécuter en parallèle
d’une manière concurrente à d’autres threads au sein d’une même application.
Java est dynamique : les composants d’une application (les classes) sont chargés au
lancement de l’application.
4.1. Exécution d’un programme Java
Source Java :
Le fichier source d’un programme java est un fichier texte dont l’extension est « .java »
Une application peut être constituée de plusieurs fichiers sources.
4
Pseudo code Java :
Un fichier source Java est compilé pour générer le pseudo code (ou byte code) sous
forme d’un fichier dont l’extension est « .class »
Interprétation :
La JVM (nommé interpréteur Java) qui tourne sur une plateforme donnée est capable
d’interpréter le byte code et le transforme en code binaire exécutable par le processeur.
Figure 1.1. Les étapes pour exécuter un programme Java
4.2. Structure générale d’une application indépendante
Une application Java indépendante possède un point d’entrée unique qui est la méthode
(ou fonction) « main () » de prototype :
public static void main (String[] args)
En Java, tout se trouve dans une classe. Il ne peut y avoir de déclarations ou de code en
dehors du corps d’une classe.
Une classe ne contient pas directement du code. Elle contient des déclarations de variables
(attributs) et des méthodes (fonctions).
Une méthode peut contenir du code et des déclarations de variables locales.
Tout fichier source doit porter le nom de la classe publique qu’il contient avec
l’extension « .java »
Les arguments sont contenus dans le tableau args.
5
Exemple :
public class Exemple
{
//déclaration des attributs
//définition des méthodes
public static void main (String [] args)
{
//déclaration des variables locales
System.out.println(“Bonjour”);
}
}
5. Outils de développement
Le JDK (Java Development Kit) est le kit de développement de base qui est proposé
gratuitement. Il contient plusieurs outils qu’on peut appeler par de simples commandes :
o javac : le compilateur java
o java : l’interpréteur d’application (JVM)
o jar : un compresseur de classes Java
o appletviewer : un interpréteur d’applet
o …..
La JRE (Java Runtime Environment) doit être installée sur les machines qui exécuteront
des programmes Java. La JRE contient la JVM, des librairies et d’autres composants
nécessaires à l’exécution des applets et des applications Java.
LE JDK contient lui-même le JRE.
Figure 1.2. Les environnements Java
6
Environnement de Développement Intégrés (EDI ou IDE en anglais) :
o Kawa, JBuilder, Visual J++, Eclipse, Netbeans, ….
6. Références
Claude Delannoy : programmer en java, ISBN10 : 2212135661, Eyrolles 2012.
M. Bouzeghoub, G. Gardarin, P. Valduriez, Les objets, Eyrolles 1998.
E.Puybaret, Java - 1 Premières applications professionnelles en Java, Les Cahiers du
Programmeur 2003.
G.Clavel, et al., Java, La synthèse, Dunod 2003.
H. Bersini, La programmation orientée objet, Cours et exercices en UML 2, avec Java, C#
2, C++, Python, PHP 5 et LINQ, Eyrolles 2008
C.Delannoy, S'initier à la programmation : Avec des exemples en C, C++, C#, Java et
PHP, Eyrolles, 2008
Sites Web
www.java.com : site officiel Java (JDK et doc.)
https://www.javaworld.com : Infos sur Java
https://www.oracle.com/fr/java/ : Logiciel Java

Contenu connexe

Tendances

Cours : les arbres Prof. KHALIFA MANSOURI
Cours : les arbres Prof. KHALIFA MANSOURI Cours : les arbres Prof. KHALIFA MANSOURI
Cours : les arbres Prof. KHALIFA MANSOURI Mansouri Khalifa
 
POO Java Chapitre 2 Encapsulation
POO Java Chapitre 2 EncapsulationPOO Java Chapitre 2 Encapsulation
POO Java Chapitre 2 EncapsulationMouna Torjmen
 
Chapitre 2 classe et objet
Chapitre 2   classe et objetChapitre 2   classe et objet
Chapitre 2 classe et objetAmir Souissi
 
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
 
POO Java Chapitre 4 Heritage et Polymorphisme
POO Java Chapitre 4 Heritage et PolymorphismePOO Java Chapitre 4 Heritage et Polymorphisme
POO Java Chapitre 4 Heritage et PolymorphismeMouna Torjmen
 
Cours Programmation Orientée Objet en C++
Cours Programmation Orientée Objet en C++Cours Programmation Orientée Objet en C++
Cours Programmation Orientée Objet en C++Amina HAMEURLAINE
 
Travaux Dirigés : Algorithmique et Structure de Données
Travaux Dirigés : Algorithmique et Structure de DonnéesTravaux Dirigés : Algorithmique et Structure de Données
Travaux Dirigés : Algorithmique et Structure de DonnéesAnass41
 
Ch3-les structures conditionnelles.pdf
Ch3-les structures conditionnelles.pdfCh3-les structures conditionnelles.pdf
Ch3-les structures conditionnelles.pdfFadouaBouafifSamoud
 
Ch2-Notions de base & actions élémentaires.pdf
Ch2-Notions de base & actions élémentaires.pdfCh2-Notions de base & actions élémentaires.pdf
Ch2-Notions de base & actions élémentaires.pdfFadouaBouafifSamoud
 
POO Java Chapitre 6 Exceptions
POO Java  Chapitre 6 ExceptionsPOO Java  Chapitre 6 Exceptions
POO Java Chapitre 6 ExceptionsMouna Torjmen
 
Collections In Java
Collections In JavaCollections In Java
Collections In JavaBinoj T E
 
Object oriented programming in python
Object oriented programming in pythonObject oriented programming in python
Object oriented programming in pythonnitamhaske
 

Tendances (20)

Cours : les arbres Prof. KHALIFA MANSOURI
Cours : les arbres Prof. KHALIFA MANSOURI Cours : les arbres Prof. KHALIFA MANSOURI
Cours : les arbres Prof. KHALIFA MANSOURI
 
POO Java Chapitre 2 Encapsulation
POO Java Chapitre 2 EncapsulationPOO Java Chapitre 2 Encapsulation
POO Java Chapitre 2 Encapsulation
 
Chapitre 2 classe et objet
Chapitre 2   classe et objetChapitre 2   classe et objet
Chapitre 2 classe et objet
 
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)
 
Securite electrique
Securite electriqueSecurite electrique
Securite electrique
 
Chapitre 04 : les fonctions
Chapitre 04 : les fonctionsChapitre 04 : les fonctions
Chapitre 04 : les fonctions
 
TP C++ : Correction
TP C++ : CorrectionTP C++ : Correction
TP C++ : Correction
 
POO Java Chapitre 4 Heritage et Polymorphisme
POO Java Chapitre 4 Heritage et PolymorphismePOO Java Chapitre 4 Heritage et Polymorphisme
POO Java Chapitre 4 Heritage et Polymorphisme
 
Cours Programmation Orientée Objet en C++
Cours Programmation Orientée Objet en C++Cours Programmation Orientée Objet en C++
Cours Programmation Orientée Objet en C++
 
Cours java
Cours javaCours java
Cours java
 
Travaux Dirigés : Algorithmique et Structure de Données
Travaux Dirigés : Algorithmique et Structure de DonnéesTravaux Dirigés : Algorithmique et Structure de Données
Travaux Dirigés : Algorithmique et Structure de Données
 
Introduction àJava
Introduction àJavaIntroduction àJava
Introduction àJava
 
Ch3-les structures conditionnelles.pdf
Ch3-les structures conditionnelles.pdfCh3-les structures conditionnelles.pdf
Ch3-les structures conditionnelles.pdf
 
Le langage C
Le langage CLe langage C
Le langage C
 
Cours langage-c
Cours langage-cCours langage-c
Cours langage-c
 
Programmation en C
Programmation en CProgrammation en C
Programmation en C
 
Ch2-Notions de base & actions élémentaires.pdf
Ch2-Notions de base & actions élémentaires.pdfCh2-Notions de base & actions élémentaires.pdf
Ch2-Notions de base & actions élémentaires.pdf
 
POO Java Chapitre 6 Exceptions
POO Java  Chapitre 6 ExceptionsPOO Java  Chapitre 6 Exceptions
POO Java Chapitre 6 Exceptions
 
Collections In Java
Collections In JavaCollections In Java
Collections In Java
 
Object oriented programming in python
Object oriented programming in pythonObject oriented programming in python
Object oriented programming in python
 

Similaire à Chapitre 1 introduction generale

POO Licence L2 Partie I.pdf
POO Licence L2 Partie I.pdfPOO Licence L2 Partie I.pdf
POO Licence L2 Partie I.pdfLarbaSAWADOGO2
 
Seance_1_cours_introduction_java_Copie.pptx
Seance_1_cours_introduction_java_Copie.pptxSeance_1_cours_introduction_java_Copie.pptx
Seance_1_cours_introduction_java_Copie.pptxRihabBENLAMINE
 
Cours java smi_2011_2012_partie_i_29_octobre_2011
Cours java smi_2011_2012_partie_i_29_octobre_2011Cours java smi_2011_2012_partie_i_29_octobre_2011
Cours java smi_2011_2012_partie_i_29_octobre_2011yassine kchiri
 
Cours java smi 2007 2008
Cours java smi 2007 2008Cours java smi 2007 2008
Cours java smi 2007 2008Khalil Lechheb
 
Cours java smi 2007 2008
Cours java smi 2007 2008Cours java smi 2007 2008
Cours java smi 2007 2008Khalil Lechheb
 
PROGRAMMATION 2e GENIE PARTIE THEORIE.ppt
PROGRAMMATION 2e GENIE PARTIE THEORIE.pptPROGRAMMATION 2e GENIE PARTIE THEORIE.ppt
PROGRAMMATION 2e GENIE PARTIE THEORIE.pptEddySHANGA
 
Java uik-chap2-dev java
Java uik-chap2-dev javaJava uik-chap2-dev java
Java uik-chap2-dev javaAmel Morchdi
 
Formation JAVA/J2EE
Formation JAVA/J2EEFormation JAVA/J2EE
Formation JAVA/J2EEInes Ouaz
 
Formation JAVA (1)
Formation JAVA (1)Formation JAVA (1)
Formation JAVA (1)Ahmed Charef
 
La persistance des données : ORM et hibernate
La persistance des données : ORM et hibernateLa persistance des données : ORM et hibernate
La persistance des données : ORM et hibernateYouness Boukouchi
 
Langage Java et Programmation Orienté Objet
Langage Java et Programmation Orienté ObjetLangage Java et Programmation Orienté Objet
Langage Java et Programmation Orienté ObjetMohammed Jaafar
 
Support formation vidéo : OCA Java SE 8 Programmer (1Z0-808) (1)
Support formation vidéo : OCA Java SE 8 Programmer (1Z0-808) (1)Support formation vidéo : OCA Java SE 8 Programmer (1Z0-808) (1)
Support formation vidéo : OCA Java SE 8 Programmer (1Z0-808) (1)SmartnSkilled
 

Similaire à Chapitre 1 introduction generale (20)

POO Licence L2 Partie I.pdf
POO Licence L2 Partie I.pdfPOO Licence L2 Partie I.pdf
POO Licence L2 Partie I.pdf
 
Seance_1_cours_introduction_java_Copie.pptx
Seance_1_cours_introduction_java_Copie.pptxSeance_1_cours_introduction_java_Copie.pptx
Seance_1_cours_introduction_java_Copie.pptx
 
4711538.pptx
4711538.pptx4711538.pptx
4711538.pptx
 
Cours java smi_2011_2012_partie_i_29_octobre_2011
Cours java smi_2011_2012_partie_i_29_octobre_2011Cours java smi_2011_2012_partie_i_29_octobre_2011
Cours java smi_2011_2012_partie_i_29_octobre_2011
 
Cours java smi 2007 2008
Cours java smi 2007 2008Cours java smi 2007 2008
Cours java smi 2007 2008
 
Cours java smi 2007 2008
Cours java smi 2007 2008Cours java smi 2007 2008
Cours java smi 2007 2008
 
POO-Cours.pdf
POO-Cours.pdfPOO-Cours.pdf
POO-Cours.pdf
 
PROGRAMMATION 2e GENIE PARTIE THEORIE.ppt
PROGRAMMATION 2e GENIE PARTIE THEORIE.pptPROGRAMMATION 2e GENIE PARTIE THEORIE.ppt
PROGRAMMATION 2e GENIE PARTIE THEORIE.ppt
 
Java uik-chap2-dev java
Java uik-chap2-dev javaJava uik-chap2-dev java
Java uik-chap2-dev java
 
Formation JAVA/J2EE
Formation JAVA/J2EEFormation JAVA/J2EE
Formation JAVA/J2EE
 
Formation JAVA (1)
Formation JAVA (1)Formation JAVA (1)
Formation JAVA (1)
 
La persistance des données : ORM et hibernate
La persistance des données : ORM et hibernateLa persistance des données : ORM et hibernate
La persistance des données : ORM et hibernate
 
Développement Sous Android
Développement Sous AndroidDéveloppement Sous Android
Développement Sous Android
 
Programmation Java
Programmation JavaProgrammation Java
Programmation Java
 
XB-Java.ppt
XB-Java.pptXB-Java.ppt
XB-Java.ppt
 
Langage Java et Programmation Orienté Objet
Langage Java et Programmation Orienté ObjetLangage Java et Programmation Orienté Objet
Langage Java et Programmation Orienté Objet
 
Support formation vidéo : OCA Java SE 8 Programmer (1Z0-808) (1)
Support formation vidéo : OCA Java SE 8 Programmer (1Z0-808) (1)Support formation vidéo : OCA Java SE 8 Programmer (1Z0-808) (1)
Support formation vidéo : OCA Java SE 8 Programmer (1Z0-808) (1)
 
Jpa(1)
Jpa(1)Jpa(1)
Jpa(1)
 
Les Classe en Java
Les Classe en JavaLes Classe en Java
Les Classe en Java
 
Cours de JAVA de base
Cours de JAVA  de baseCours de JAVA  de base
Cours de JAVA de base
 

Plus de Amir Souissi

Chap5 diagramme d'etats-transitions
Chap5 diagramme d'etats-transitionsChap5 diagramme d'etats-transitions
Chap5 diagramme d'etats-transitionsAmir Souissi
 
Chapitre 5 classes abstraites et interfaces
Chapitre 5  classes abstraites et interfacesChapitre 5  classes abstraites et interfaces
Chapitre 5 classes abstraites et interfacesAmir Souissi
 
Chapitre 3 elements de base de java
Chapitre 3  elements de base de javaChapitre 3  elements de base de java
Chapitre 3 elements de base de javaAmir Souissi
 
Chapitre 4 persistance des donnees
Chapitre 4  persistance des donneesChapitre 4  persistance des donnees
Chapitre 4 persistance des donneesAmir Souissi
 
Chapitre 3 activites et intents
Chapitre 3   activites et  intentsChapitre 3   activites et  intents
Chapitre 3 activites et intentsAmir Souissi
 
Chapitre 2 elements graphiques android
Chapitre 2   elements graphiques androidChapitre 2   elements graphiques android
Chapitre 2 elements graphiques androidAmir Souissi
 
Chapitre 1 decouverte du developpement android
Chapitre 1  decouverte du developpement androidChapitre 1  decouverte du developpement android
Chapitre 1 decouverte du developpement androidAmir Souissi
 
Atelier symfony n 3
Atelier symfony n 3Atelier symfony n 3
Atelier symfony n 3Amir Souissi
 
Atelier symfony n 2
Atelier symfony n 2Atelier symfony n 2
Atelier symfony n 2Amir Souissi
 
Atelier symfony n 1
Atelier symfony n 1Atelier symfony n 1
Atelier symfony n 1Amir Souissi
 
diagramme de séquence UML
diagramme de séquence UMLdiagramme de séquence UML
diagramme de séquence UMLAmir Souissi
 
diagramme de classe
diagramme de classediagramme de classe
diagramme de classeAmir Souissi
 
diagramme des cas d'utilisation
diagramme des cas d'utilisationdiagramme des cas d'utilisation
diagramme des cas d'utilisationAmir Souissi
 
introduction à la modélisation objet
introduction à la modélisation objetintroduction à la modélisation objet
introduction à la modélisation objetAmir Souissi
 

Plus de Amir Souissi (19)

Chap5 diagramme d'etats-transitions
Chap5 diagramme d'etats-transitionsChap5 diagramme d'etats-transitions
Chap5 diagramme d'etats-transitions
 
Chapitre 5 classes abstraites et interfaces
Chapitre 5  classes abstraites et interfacesChapitre 5  classes abstraites et interfaces
Chapitre 5 classes abstraites et interfaces
 
Chapitre 3 elements de base de java
Chapitre 3  elements de base de javaChapitre 3  elements de base de java
Chapitre 3 elements de base de java
 
Chapitre 4 persistance des donnees
Chapitre 4  persistance des donneesChapitre 4  persistance des donnees
Chapitre 4 persistance des donnees
 
Chapitre 3 activites et intents
Chapitre 3   activites et  intentsChapitre 3   activites et  intents
Chapitre 3 activites et intents
 
Chapitre 2 elements graphiques android
Chapitre 2   elements graphiques androidChapitre 2   elements graphiques android
Chapitre 2 elements graphiques android
 
Chapitre 1 decouverte du developpement android
Chapitre 1  decouverte du developpement androidChapitre 1  decouverte du developpement android
Chapitre 1 decouverte du developpement android
 
Atelier symfony n 3
Atelier symfony n 3Atelier symfony n 3
Atelier symfony n 3
 
Atelier symfony n 2
Atelier symfony n 2Atelier symfony n 2
Atelier symfony n 2
 
Atelier symfony n 1
Atelier symfony n 1Atelier symfony n 1
Atelier symfony n 1
 
Tp n 6 linux
Tp n 6 linuxTp n 6 linux
Tp n 6 linux
 
Tp n 5 linux
Tp n 5 linuxTp n 5 linux
Tp n 5 linux
 
Tp n 4 linux
Tp n 4 linuxTp n 4 linux
Tp n 4 linux
 
Tp n 3 linux
Tp n 3 linuxTp n 3 linux
Tp n 3 linux
 
Tp n 1 linux
Tp n 1 linuxTp n 1 linux
Tp n 1 linux
 
diagramme de séquence UML
diagramme de séquence UMLdiagramme de séquence UML
diagramme de séquence UML
 
diagramme de classe
diagramme de classediagramme de classe
diagramme de classe
 
diagramme des cas d'utilisation
diagramme des cas d'utilisationdiagramme des cas d'utilisation
diagramme des cas d'utilisation
 
introduction à la modélisation objet
introduction à la modélisation objetintroduction à la modélisation objet
introduction à la modélisation objet
 

Dernier

Apolonia, Apolonia.pptx Film documentaire
Apolonia, Apolonia.pptx         Film documentaireApolonia, Apolonia.pptx         Film documentaire
Apolonia, Apolonia.pptx Film documentaireTxaruka
 
Les roches magmatique géodynamique interne.pptx
Les roches magmatique géodynamique interne.pptxLes roches magmatique géodynamique interne.pptx
Les roches magmatique géodynamique interne.pptxShinyaHilalYamanaka
 
Formation échiquéenne jwhyCHESS, parallèle avec la planification de projet
Formation échiquéenne jwhyCHESS, parallèle avec la planification de projetFormation échiquéenne jwhyCHESS, parallèle avec la planification de projet
Formation échiquéenne jwhyCHESS, parallèle avec la planification de projetJeanYvesMoine
 
L application de la physique classique dans le golf.pptx
L application de la physique classique dans le golf.pptxL application de la physique classique dans le golf.pptx
L application de la physique classique dans le golf.pptxhamzagame
 
CompLit - Journal of European Literature, Arts and Society - n. 7 - Table of ...
CompLit - Journal of European Literature, Arts and Society - n. 7 - Table of ...CompLit - Journal of European Literature, Arts and Society - n. 7 - Table of ...
CompLit - Journal of European Literature, Arts and Society - n. 7 - Table of ...Universidad Complutense de Madrid
 
python-Cours Officiel POO Python-m103.pdf
python-Cours Officiel POO Python-m103.pdfpython-Cours Officiel POO Python-m103.pdf
python-Cours Officiel POO Python-m103.pdftrendingv83
 
Intégration des TICE dans l'enseignement de la Physique-Chimie.pptx
Intégration des TICE dans l'enseignement de la Physique-Chimie.pptxIntégration des TICE dans l'enseignement de la Physique-Chimie.pptx
Intégration des TICE dans l'enseignement de la Physique-Chimie.pptxabdououanighd
 
Cours Généralités sur les systèmes informatiques
Cours Généralités sur les systèmes informatiquesCours Généralités sur les systèmes informatiques
Cours Généralités sur les systèmes informatiquesMohammedAmineHatoch
 
Télécommunication et transport .pdfcours
Télécommunication et transport .pdfcoursTélécommunication et transport .pdfcours
Télécommunication et transport .pdfcourshalima98ahlmohamed
 
les_infections_a_streptocoques.pptkioljhk
les_infections_a_streptocoques.pptkioljhkles_infections_a_streptocoques.pptkioljhk
les_infections_a_streptocoques.pptkioljhkRefRama
 
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 6, 7 GLOBAL SUCCESS (2...
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 6, 7 GLOBAL SUCCESS (2...GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 6, 7 GLOBAL SUCCESS (2...
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 6, 7 GLOBAL SUCCESS (2...Nguyen Thanh Tu Collection
 
Copie de Engineering Software Marketing Plan by Slidesgo.pptx.pptx
Copie de Engineering Software Marketing Plan by Slidesgo.pptx.pptxCopie de Engineering Software Marketing Plan by Slidesgo.pptx.pptx
Copie de Engineering Software Marketing Plan by Slidesgo.pptx.pptxikospam0
 
Neuvaine de la Pentecôte avec des textes de saint Jean Eudes
Neuvaine de la Pentecôte avec des textes de saint Jean EudesNeuvaine de la Pentecôte avec des textes de saint Jean Eudes
Neuvaine de la Pentecôte avec des textes de saint Jean EudesUnidad de Espiritualidad Eudista
 
L'expression du but : fiche et exercices niveau C1 FLE
L'expression du but : fiche et exercices  niveau C1 FLEL'expression du but : fiche et exercices  niveau C1 FLE
L'expression du but : fiche et exercices niveau C1 FLElebaobabbleu
 
Formation qhse - GIASE saqit_105135.pptx
Formation qhse - GIASE saqit_105135.pptxFormation qhse - GIASE saqit_105135.pptx
Formation qhse - GIASE saqit_105135.pptxrajaakiass01
 
Conférence Sommet de la formation 2024 : Développer des compétences pour la m...
Conférence Sommet de la formation 2024 : Développer des compétences pour la m...Conférence Sommet de la formation 2024 : Développer des compétences pour la m...
Conférence Sommet de la formation 2024 : Développer des compétences pour la m...Technologia Formation
 
RAPPORT DE STAGE D'INTERIM DE ATTIJARIWAFA BANK
RAPPORT DE STAGE D'INTERIM DE ATTIJARIWAFA BANKRAPPORT DE STAGE D'INTERIM DE ATTIJARIWAFA BANK
RAPPORT DE STAGE D'INTERIM DE ATTIJARIWAFA BANKNassimaMdh
 
Bilan énergétique des chambres froides.pdf
Bilan énergétique des chambres froides.pdfBilan énergétique des chambres froides.pdf
Bilan énergétique des chambres froides.pdfAmgdoulHatim
 

Dernier (19)

Apolonia, Apolonia.pptx Film documentaire
Apolonia, Apolonia.pptx         Film documentaireApolonia, Apolonia.pptx         Film documentaire
Apolonia, Apolonia.pptx Film documentaire
 
Les roches magmatique géodynamique interne.pptx
Les roches magmatique géodynamique interne.pptxLes roches magmatique géodynamique interne.pptx
Les roches magmatique géodynamique interne.pptx
 
Formation échiquéenne jwhyCHESS, parallèle avec la planification de projet
Formation échiquéenne jwhyCHESS, parallèle avec la planification de projetFormation échiquéenne jwhyCHESS, parallèle avec la planification de projet
Formation échiquéenne jwhyCHESS, parallèle avec la planification de projet
 
L application de la physique classique dans le golf.pptx
L application de la physique classique dans le golf.pptxL application de la physique classique dans le golf.pptx
L application de la physique classique dans le golf.pptx
 
CompLit - Journal of European Literature, Arts and Society - n. 7 - Table of ...
CompLit - Journal of European Literature, Arts and Society - n. 7 - Table of ...CompLit - Journal of European Literature, Arts and Society - n. 7 - Table of ...
CompLit - Journal of European Literature, Arts and Society - n. 7 - Table of ...
 
python-Cours Officiel POO Python-m103.pdf
python-Cours Officiel POO Python-m103.pdfpython-Cours Officiel POO Python-m103.pdf
python-Cours Officiel POO Python-m103.pdf
 
Intégration des TICE dans l'enseignement de la Physique-Chimie.pptx
Intégration des TICE dans l'enseignement de la Physique-Chimie.pptxIntégration des TICE dans l'enseignement de la Physique-Chimie.pptx
Intégration des TICE dans l'enseignement de la Physique-Chimie.pptx
 
Cours Généralités sur les systèmes informatiques
Cours Généralités sur les systèmes informatiquesCours Généralités sur les systèmes informatiques
Cours Généralités sur les systèmes informatiques
 
Télécommunication et transport .pdfcours
Télécommunication et transport .pdfcoursTélécommunication et transport .pdfcours
Télécommunication et transport .pdfcours
 
les_infections_a_streptocoques.pptkioljhk
les_infections_a_streptocoques.pptkioljhkles_infections_a_streptocoques.pptkioljhk
les_infections_a_streptocoques.pptkioljhk
 
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 6, 7 GLOBAL SUCCESS (2...
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 6, 7 GLOBAL SUCCESS (2...GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 6, 7 GLOBAL SUCCESS (2...
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 6, 7 GLOBAL SUCCESS (2...
 
Copie de Engineering Software Marketing Plan by Slidesgo.pptx.pptx
Copie de Engineering Software Marketing Plan by Slidesgo.pptx.pptxCopie de Engineering Software Marketing Plan by Slidesgo.pptx.pptx
Copie de Engineering Software Marketing Plan by Slidesgo.pptx.pptx
 
Neuvaine de la Pentecôte avec des textes de saint Jean Eudes
Neuvaine de la Pentecôte avec des textes de saint Jean EudesNeuvaine de la Pentecôte avec des textes de saint Jean Eudes
Neuvaine de la Pentecôte avec des textes de saint Jean Eudes
 
L'expression du but : fiche et exercices niveau C1 FLE
L'expression du but : fiche et exercices  niveau C1 FLEL'expression du but : fiche et exercices  niveau C1 FLE
L'expression du but : fiche et exercices niveau C1 FLE
 
Formation qhse - GIASE saqit_105135.pptx
Formation qhse - GIASE saqit_105135.pptxFormation qhse - GIASE saqit_105135.pptx
Formation qhse - GIASE saqit_105135.pptx
 
Conférence Sommet de la formation 2024 : Développer des compétences pour la m...
Conférence Sommet de la formation 2024 : Développer des compétences pour la m...Conférence Sommet de la formation 2024 : Développer des compétences pour la m...
Conférence Sommet de la formation 2024 : Développer des compétences pour la m...
 
RAPPORT DE STAGE D'INTERIM DE ATTIJARIWAFA BANK
RAPPORT DE STAGE D'INTERIM DE ATTIJARIWAFA BANKRAPPORT DE STAGE D'INTERIM DE ATTIJARIWAFA BANK
RAPPORT DE STAGE D'INTERIM DE ATTIJARIWAFA BANK
 
Bilan énergétique des chambres froides.pdf
Bilan énergétique des chambres froides.pdfBilan énergétique des chambres froides.pdf
Bilan énergétique des chambres froides.pdf
 
Echos libraries Burkina Faso newsletter 2024
Echos libraries Burkina Faso newsletter 2024Echos libraries Burkina Faso newsletter 2024
Echos libraries Burkina Faso newsletter 2024
 

Chapitre 1 introduction generale

  • 2.
  • 4. 2 1. La programmation orientée objet La Programmation Orientée Objet (POO) est un style de programmation où l’on considère que les composants autonomes (les objets) disposent de ressources et de moyens d’interaction entre eux. La programmation procédurale suppose que le programmeur s’intéresse en priorité aux traitements que son programme devra effectuer. Identifier les traitements puis Ecrire les fonctions les données sont des paramètres d’entrées aux fonctions La programmation orientée objet propose une méthodologie centrée sur les données. Identifier un ensemble d’objets, puis écrire les traitements On associe chaque traitement à un objet donné. Un objet peut être vu comme une entité regroupant un ensemble de données et de méthodes (l’équivalent d’une fonction en C) de traitement. Idée de base : o Regrouper les données et les traitements relatifs à une même entité (réelle ou conceptuelle) dans une entité informatique appelée objet. o Un système d’information est un ensemble d’objets qui interagissent. o Les modèles d’objets sont définis dans des classes. Avantages : o Meilleure modularité o Maintenance aisée des applications o Réutilisabilité des objets dans d’autres programmes 2. L’Objet Les données de l’objet sont appelées des attributs. Elles indiquent son état à un instant donné. Les traitements (ou fonctions) de l’objet sont appelés des méthodes. Ils définissent son comportement. Chaque objet possède une identification unique qui est indiquée par une ou plusieurs références. L’objet peut se comporter comme une boite noire (le contenu est masqué par des contrôles d’accès). Dans ce cas, quelques méthodes doivent assurer son intégration dans le système (interface de service)
  • 5. 3 Un objet est une variable (presque) comme les autres. Il faut notamment qu’il soit déclaré avec son type. Le type d’un objet est un type complexe (par opposition aux types primitifs entier, caractère, …) qu’on appelle une classe. 3. La Classe La classe est un modèle de définition pour les objets ayant les mêmes propriétés. Une classe doit être considérée comme un nouveau type défini par le concepteur. Il existe des contrôles d’utilisation d’une classe. La classe définie les contrôles (ou restrictions) d’accès aux membres (attributs et méthodes) de ses objets. Le contrôle d’utilisation d’une classe et celui d’accès aux membres d’une classe sont deux concepts différents. Une classe regroupe un ensemble de données (qui peuvent être des variables primitives ou des objets) et un ensemble de méthodes de traitement de ces données et/ou de données extérieures à la classe. 4. Le langage Java Java est un langage de programmation orienté objet (pur), développé par « Sun Microsystems» en 1995 et racheté par « Oracle » en 2009. Java est multi-plateforme : il est conçu pour être indépendant de la machine exécutant le code grâce à la JVM (Java Virtual Machine ou machine virtuelle de Java). Java est interprété : le code source est compilé en pseudo code (byte code) puis exécuté par la JVM. Java est multithread : un thread est une entité d’exécution qui peut s’exécuter en parallèle d’une manière concurrente à d’autres threads au sein d’une même application. Java est dynamique : les composants d’une application (les classes) sont chargés au lancement de l’application. 4.1. Exécution d’un programme Java Source Java : Le fichier source d’un programme java est un fichier texte dont l’extension est « .java » Une application peut être constituée de plusieurs fichiers sources.
  • 6. 4 Pseudo code Java : Un fichier source Java est compilé pour générer le pseudo code (ou byte code) sous forme d’un fichier dont l’extension est « .class » Interprétation : La JVM (nommé interpréteur Java) qui tourne sur une plateforme donnée est capable d’interpréter le byte code et le transforme en code binaire exécutable par le processeur. Figure 1.1. Les étapes pour exécuter un programme Java 4.2. Structure générale d’une application indépendante Une application Java indépendante possède un point d’entrée unique qui est la méthode (ou fonction) « main () » de prototype : public static void main (String[] args) En Java, tout se trouve dans une classe. Il ne peut y avoir de déclarations ou de code en dehors du corps d’une classe. Une classe ne contient pas directement du code. Elle contient des déclarations de variables (attributs) et des méthodes (fonctions). Une méthode peut contenir du code et des déclarations de variables locales. Tout fichier source doit porter le nom de la classe publique qu’il contient avec l’extension « .java » Les arguments sont contenus dans le tableau args.
  • 7. 5 Exemple : public class Exemple { //déclaration des attributs //définition des méthodes public static void main (String [] args) { //déclaration des variables locales System.out.println(“Bonjour”); } } 5. Outils de développement Le JDK (Java Development Kit) est le kit de développement de base qui est proposé gratuitement. Il contient plusieurs outils qu’on peut appeler par de simples commandes : o javac : le compilateur java o java : l’interpréteur d’application (JVM) o jar : un compresseur de classes Java o appletviewer : un interpréteur d’applet o ….. La JRE (Java Runtime Environment) doit être installée sur les machines qui exécuteront des programmes Java. La JRE contient la JVM, des librairies et d’autres composants nécessaires à l’exécution des applets et des applications Java. LE JDK contient lui-même le JRE. Figure 1.2. Les environnements Java
  • 8. 6 Environnement de Développement Intégrés (EDI ou IDE en anglais) : o Kawa, JBuilder, Visual J++, Eclipse, Netbeans, …. 6. Références Claude Delannoy : programmer en java, ISBN10 : 2212135661, Eyrolles 2012. M. Bouzeghoub, G. Gardarin, P. Valduriez, Les objets, Eyrolles 1998. E.Puybaret, Java - 1 Premières applications professionnelles en Java, Les Cahiers du Programmeur 2003. G.Clavel, et al., Java, La synthèse, Dunod 2003. H. Bersini, La programmation orientée objet, Cours et exercices en UML 2, avec Java, C# 2, C++, Python, PHP 5 et LINQ, Eyrolles 2008 C.Delannoy, S'initier à la programmation : Avec des exemples en C, C++, C#, Java et PHP, Eyrolles, 2008 Sites Web www.java.com : site officiel Java (JDK et doc.) https://www.javaworld.com : Infos sur Java https://www.oracle.com/fr/java/ : Logiciel Java