100% ont trouvé ce document utile (1 vote)
70 vues21 pages

Introduction à la Programmation Java

Ce document introduit la programmation orientée objet en Java. Il présente les concepts clés de la POO comme les classes, les objets, l'encapsulation et l'héritage. Le document décrit également le processus de développement en Java incluant la compilation et l'exécution du code.

Transféré par

Syrine Labidi
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
100% ont trouvé ce document utile (1 vote)
70 vues21 pages

Introduction à la Programmation Java

Ce document introduit la programmation orientée objet en Java. Il présente les concepts clés de la POO comme les classes, les objets, l'encapsulation et l'héritage. Le document décrit également le processus de développement en Java incluant la compilation et l'exécution du code.

Transféré par

Syrine Labidi
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Programmation Orientée Objet

Introduction à Java
Riadh BOUSLIMI

1
PRÉSENTATION

2
Programmation orientée objet

Qu’est ce que la programmation objet


❑ « La programmation orientée objet (POO), ou programmation par
objet, est un concept de programmation informatique élaboré par les
Norvégiens Ole-Johan Dahl et Kristen Nygaard au début des années 1960
et poursuivi par les travaux de l’Américain Alan Kay dans les années 1970.
Il consiste en la définition et l’interaction de briques logicielles appelées
objets. »
❑La programmation procédurale consiste à écrire des procédures ou des
fonctions qui effectuent des opérations sur les données, tandis que la
programmation orientée objet consiste à créer des objets contenant à la
fois des données et des fonctions.
❑Exemples de langages de programmation orientés objets :
Java, C++, Python, C#, Ruby, etc.
3
Programmation orientée objet

La Programmation Orientée Objet


❑ Les concepts de base de la POO sont :
▪ L’abstraction
▪ La modularité
▪ L’encapsulation
▪ Le polymorphisme
❑ Les outils qui supportent ces concepts sont :
▪ Les classes ou les prototypes En Java
▪ L’héritage (simple ou multiple)
▪ Le système de typage (statique ou dynamique, explicite ou inféré)
❑ Points forts (supposés)
▪ Du code plus proche du monde réel et donc plus facile à assimiler et à maintenir.
▪ Stabilité accrue : les modifications ne s’appliquent que localement à des sous-systèmes.

4
Programmation orientée objet

Gestion d’une bibliothèque d’une université


Objets Fonctions (méthodes)
❑ Etudiant ❑ Trouver les livres disponibles
▪ Etat, livres, emprunts ❑ Trouver les livres par thème
❑ Livre ❑ Trouver les étudiants retardataires
▪ Etudiants, emprunts
❑ Vérifier l’état d’un étudiant
❑ Thème
❑ Déterminer les livres non rendus
▪ Année, Livres
❑ Calculer le nombre d’emprunts
❑ Emprunt
▪ Etudiants, livre

Des données Des comportements


Les objets s’échangent des messages en
fonction de leurs comportements associés.
10
5
Programmation orientée objet

Les avantages et les inconvénients


La programmation orientée objets admet des avantages mais aussi des inconvénients :
❑ Les avantages sont :
➢ Amélioration de la productivité du développement logiciel: la programmation orientée objet est
modulaire. Les objets peuvent également être réutilisés dans plusieurs applications.
➢ Amélioration de la maintenabilité des logiciels: puisque La conception étant modulaire, une partie
du système peut être mis à jour en cas de problèmes sans avoir besoin de faire changements.
➢ Développement plus rapide : la réutilisation permet un développement plus rapide.
➢ Réduction des coûts de développement et meilleure qualité logiciel: la réutilisation des logiciels
réduit également le coût de développement. Ce qui permet d'utiliser plus de temps et de ressources
pour la vérification du logiciel.
❑ Les inconvénients sont :
➢ Nécessite du temps d’apprentissage : pour s’habituer aux techniques de programmation tel que
l’héritage et le polymorphisme.
➢ La grande taille de programme: les programmes orientés objets impliquent généralement plus de
lignes de code que les programmes procéduraux.
➢ Programmes plus lents: les programmes orientés objet sont généralement plus lents que les
programmes basés sur des procédures, car ils nécessitent généralement plus d'instructions pour être
6
exécutées.
Programmation orientée objet

Qu'est-ce que java?


❑Le langage Java a été initialement développé par James
Gosling chez Sun Microsystems, qui est maintenant une filiale
d'Oracle Corporation, et lancé en 1995 en tant que James Gosling

composant principal de la plateforme Java de Sun


Microsystems.

❑Java est dérivé d’une grande partie de sa syntaxe de C / C ++,


mais il a moins de fonctionnalités de bas niveau de l’un ou de
l'autre.

7
Programmation orientée objet

Caractéristiques principales de java?


❑Il y avait 5 objectifs principaux dans la création du
langage Java.

❑Il devrait:
➢ être simple, orienté objet et familier
➢ robuste et sécurisé
➢ être indépendant de l'architecture et portable
➢ s’exécuter avec des performances élevées
➢ être interprété, multithreadé et dynamique

8
Programmation orientée objet

Historique des versions de Java

9
Programmation orientée objet

Java vs c++
❑ Le C++ dépend de la plateforme par contre Java est indépendant. Le
code source en C++ est compilé en code natif (exécutable), qui ne
s'exécute que sur une architecture particulière.
❑ Le code Java est compilé en bytecode qui peut s'exécuter sur n’importe
quelle plateforme dont il foudre installer une machine virtuelle Java.
❑ Les bytecodes produits sur une machine pourront s'exécuter sur des
architectures différentes.
❑ Le programme est distribué à la fois de manière compilé et portable.

1
0
Programmation orientée objet

Exécution du code java


Lors de l'exécution d'un programme Java compilé, la machine virtuelle Java
JVM:
❑ Lit le bytecode
❑ Vérifie qu'il est correct
❑ Optimise les instructions
❑ Compile le bytecode en code natif
❑ Exécute le code natif

 Java produit un code (bytecode) qui est portable. Il est robuste (il est sûr, typé statiquement et
fortement) et performant (il est exécuté après une compilation en code natif)

1
1
Programmation orientée objet

Concept d’objet
- Un objet consiste à encapsuler l’état et le comportement dans une
seule unité de programmation.
- Un objet java est un objet du monde réel.
- Exemple :

Comportement
[Link]() [Link]() [Link]() [Link]()
[Link]élérer() [Link]() [Link]() [Link]()
[Link]() [Link]() [Link]() 1
[Link]() 2
ENVIRONNEMENT DE DÉVELOPPEMENT

13
Programmation orientée objet

Compilateur
❑Le processeur de l’ordinateur ne comprend pas le code Java (code
source)
❑Le compilateur traduit (compile) le code source
▪ Vers du code binaire natif (langage compilé)
• Spécifique à un processeur donné
• Spécifique au système d’exploitation utilisé
▪ Vers un langage neutre (ex: bytecode)
• Ce langage neutre est alors interprété par la machine virtuelle java (Java Virtual Machine -
JVM)
❑ Un interpréteur interprète directement le code source (langage
interprété)

14
Programmation orientée objet

Processus de compilation en Java


Fichier source [Link]

Compilation javac [Link]


(JDK)
interprétation

bytecode java Test


[Link]

API JRE 7.0


JRE

OS Windows, Mac, Linux

Processeur Intel, AMD

15
Programmation orientée objet

Méthode main – Arguments en paramètre


❑ En Java, args contient les arguments de ligne de commande fournis
sous forme de tableau d'objets String.
[Link]:

public class Test {


public static void main(String[] args) {
[Link](« Bonjour " + arg[0] + " " + arg[1]);
}
}
> javac [Link]
> dir
[Link]
> java Test BOUSLIMI Riadh
Bonjour BOUSLIMI Riadh

16
Programmation orientée objet

Méthode main – java Test


[Link]: [Link]:

public class Test { class Voiture {


int vitesse;
String modele ;
Voiture v = new Voiture(1, "Peugeot");
void accelerer () {
[Link]()
vitesse += 1;
[Link]();
}
[Link]();
void freiner() {
Vitesse =-1;
}
}

17
Programmation orientée objet

Méthode main – java Test


[Link]: [Link]:

public class Test { class Voiture {


int vitesse;
public static void main(String[] args) { String modele ;
Voiture v = new Voiture(1, "Peugeot");
void accelerer () {
[Link]()
nombreDeNotes += 1;
[Link]();
}
[Link]();
[Link]("Modèle=" + [Link] +
void freiner() {
"Vitesse=" + [Link]);
Vitesse =-1;
}
}

18
Programmation orientée objet

Méthode main – java Test


[Link]: > dir
[Link]:
[Link]
class Voiture {
public class Test {
[Link]
int vitesse;
public static void main(String[] args) { > String modele ;
javac [Link]
Voiture v = new Voiture(1, "Peugeot"); > dir
void accelerer () {
[Link]
[Link]()
nombreDeNotes += 1;
[Link]
[Link]();
}
[Link](); [Link]
[Link]("Modèle: " + [Link] + [Link]
void freiner() {
", Vitesse=" + [Link]);
Vitesse
> java Test =-1;
}
Modèle: Peugeot, Vitesse : 2
}

19
Quizz
1) Java est un langage
(a) Compilé
(b) Interprété
(c) Compilé et interprété
(d) Ni compilé ni interprété
2) Java est un langage développé par
(a) Hewlett-Packard
(b) Sun Microsystems
(c) Microsoft
(d) Oracle
3) Lequel de ces langages de programmation n’est pas orienté objet?
(a) C++
(b) Java
(c) C
(d) Python
4) Qu’est-ce que l’état d’un objet?
(a) C’est l’ensemble des méthodes d’un objet.
(b) C’est l’ensemble des attributs d’un objet.
(c) C’est la valeur des attributs d’un objet.
(d) C’est l’ensemble des méthodes et attributs d’un objet 2
0
Bibliographie
❑ Apprendre la Programmation Orientée Objet avec le langage Java,
Luc Gervais, Eni Ressources Informatiques, 385 pages, 16 mai 2018

❑ L'orienté objet, Hugues Bersini & Ivan Wellesz, Eyrolles, 602 pages,
3ème édition, 1er avril 2007

2
1

Vous aimerez peut-être aussi