P.O.O.
(Programmation
Orientée Objet)
CHOUITI Sidi Mohammed
Cours pour L2 en Informatique
Département d’Informatique
Université de Tlemcen
2023-2024
Plan du cours
1. Introduction à la Programmation Orientée Objet
2. Classes & Objets
3. Héritage & polymorphisme
4. Abstraction & déclaration finale
5. Interfaces
6. Paquetage & Encapsulation
7. Classes Courantes en Java
8. Gestion des Exceptions
9. Interfaces graphiques
UABB-Tlemcen – Département d’Informatique 2
Objectifs du cours POO
1. Appréhender les concepts de l'approche objet afin d’être
capable de comprendre toute technologie (basée sur
l’objet.
Objet
Classe Héritage
2. S’initier à la programmation en java
UABB-Tlemcen – Départ d’Informatique 3
Bref historique
Langages machine (0/1) Langages symboliques
(Assembleur) Langages de haut niveau ou indépendants
du matériel (Basic, Fortran, Cobol, etc.)
Programmation structurée Programmation procédurale
Programmation modulaire Programmation objet ..
UABB-Tlemcen – Départ d’Informatique 4
Bref historique
•Simula a été le premier langage de programmation à
implémenter le concept de classes en 1967 !
Ole-Johan Kristen
Dahl Nygaard
UABB-Tlemcen – Départ d’Informatique 5
Bref historique
•Smalltalk, en plus d’implémenter les principaux concepts
de base (classe, objet, héritage, polymorphisme), introduit
la notion d'objet persistant, de traitement des exceptions et
le principe Modèle-Vue-Contrôleur. (les années 70).
UABB-Tlemcen – Départ d’Informatique 6
Bref historique
•Depuis, de nombreux langages orientés objets ont été mis
au point
Object Pascal
Objective C C++
Java C#
…
UABB-Tlemcen – Départ d’Informatique 7
Paradigmes de programmation
Un paradigme est une manière de programmer.
Deux paradigmes : programmations Impérative et Orientée Objet
Procédurale Orientée Objet
• Que doit faire ce programme ? • Quelles sont les entités de ce
programme ?
• De quelles procédures ai-je • Quels sont les objets
besoin ? fondamentaux de l’application ?
Autres paradigmes: programmation Déclarative
-HTML, XML, etc. (descriptive),
- Lisp, etc. (fonctionnelle),
-Prolog, etc. (Logique), etc.
UABB-Tlemcen – Départ d’Informatique 8
Principes de l’approche objet
• La programmation objet systématise la modularité et
permet la réutilisation de composants logiciels
•Maîtrise de la complexité d’un système, repose sur :
• La Décomposition
• L’Abstraction
• L’Encapsulation
UABB-Tlemcen – Départ d’Informatique 9
Les raisons du succès de la POO
•Fondée sur une solide approche génie logiciel ;
•Maitrise de la complexité de grands systèmes logiciels ;
•Consolidation par les méthodes O.O. et le standard (UML)
qu’elles utilisent comme langage de modélisation objet ;
•Ses fondements facilitent la programmation distribuée.
UABB-Tlemcen – Départ d’Informatique 10
Ce qu’il faut savoir sur java
Fichier de code source: .java
Fichier compilé (code intermédiaire ou byte code) : .class
Outils nécessaires : JRE, JDK, etc.
Environnement utilisé en TP : blueJ
Qualités essentielles : Portabilité (JVM) et Facilité d’utilisation
UABB-Tlemcen – Départ d’Informatique 11
Ce qu’il faut savoir sur java
Conventions de nommage
• Organisation des fichiers
- Le fichier .java doit avoir le même nom que la classe publique qu’il
décrit
- 1 fichier .java par classe, même pour celle contenant le main() ,
exception pour les inner classes
• Eléments de base
- paquetages minuscules
- classes MajusculePourLaPremiereLettreDeChaqueMot
- interface MajusculePourLaPremiereLettreDeChaqueMot
- méthodes minusculePourLaPremiereLettre
- constantes MAJUSCULES
- variables minusculePourLaPremiereLettre
UABB-Tlemcen – Départ d’Informatique 12
Ce qu’il faut savoir sur java
Exemple :
fichier [Link]
class Bonjour {
public static void main(String[] args) {
[Link]("Bonjour tout le monde !");
}
}
UABB-Tlemcen – Départ d’Informatique 13
Ce qu’il faut savoir sur java
blueJ
UABB-Tlemcen – Départ d’Informatique 14
Références bibliographiques
1- Hugues Bersini. – La programmation ORIENTÉE OBJET
Cours et exercices en UML2, Python, PHP, C#, C++ et Java (y
compris Android).
2- C. DELANNOY. – Programmer en Java.
UABB-Tlemcen – Départ d’Informatique 15
Sites Web
1- Sites officiels :
Téléchargement :
[Link]
Documentation
[Link]
2- Penser Java :
[Link]/livres/java/traduction/tij2/
3- EDI blueJ : [Link]
4-Le site d’un champion du java : Jean-Michel DOUDOUX
[Link]
130 chapitres (4 131 pages)
UABB-Tlemcen – Départ d’Informatique 16