Principes de la technologie orientée objets

Slides:



Advertisements
Présentations similaires
Applications N-Tiers Rappels: architecture et méthodologie
Advertisements

Mathilde VINCENT - Olivier JOURDAN Paris - le 7/2/2012
Chapitre 4: Le comportement des clients de l'UC
Module 5 : Implémentation de l'impression
Eléments de Génie Logiciel
Génie Logiciel 2 Julie Dugdale
Treuil IRD Abdelwahed FSSM-Marrakech
Réflexivité et réseaux d’ information
Calcul géométrique avec des données incertaines
UML - Présentation.
Etude de la dynamique des groupes et des objets intermédiaires de conception, en s’appuyant sur la dynamique de l’émergence des état problèmes Reza MOVAHEDKHAH,
Le Modèle Logique de Données
Programmation Orientée Objet (POO)
INTRODUCTION.
ESIEE Paris © Denis BUREAU I N Initiation à la programmation avec le langage Java.
Introduction à la POO: Les classes vs les objets
Langage SysML.
PARTIE 3 : Le SYSTEME D’INFORMATION FUTUR
Récursivité.
Les Cas d’utilisation.
Concepts de base : la Classe Pour faire une comparaison simple, une classe serait a priori, une structure C avec des variables et des fonctions.
Introduction à la conception de Bases de Données Relationnelles
Chap 4 Les bases de données et le modèle relationnel
IFT1025, Programmation 2 Jian-Yun Nie
Introduction au paradigme objet Concepts importants surcharge (overload) redéfinition (override) Définition d’une classe Définition des attributs.
RDF(S)
77 Utilisation des classes (suite). 7-2 Objectifs A la fin de ce cours, vous serez capables de : Définir des méthodes surchargées dans une classe Fournir.
Classes abstraites et Interfaces
Vers la conception objet
Modèle Logique de Données
Outils pour la modélisation des systèmes distribués
Langage Oriente Objet Cours 2.
SYSTEMES D’INFORMATION
Structures de données IFT-2000
Structures de données IFT-10541
IGL301 - Spécification et vérification des exgiences 1 Chapitre 1 Introduction (ref : Bray chapitre 1)
IGL301 - Spécification et vérification des exgiences 1 Chapitre 2 Le processus dingénierie des exigences (ref : Bray chapitre 2)
Unified Modeling Langage
Cours de Base de Données & Langage SQL
Cours N°2 Base de Données & Langage SQL
Module 2 : Préparation de l'analyse des performances du serveur
Leçon 1 : notion dobjet IUP Génie Informatique Besançon Méthode et Outils pour la Programmation Françoise Greffier Université de Franche-Comté.
Initiation à la conception des systèmes d'informations
Processus d'un projet F.Pfister
99 Réutilisation du code grâce à l'héritage. 9-2 Objectifs À la fin de ce cours, vous serez capables de : Définir l'héritage Utiliser l'héritage pour.
Sensibilisation a la modelisation
Patrons de conceptions de créations
Présentation de la méthode des Eléments Finis
Introduction.
ANALYSE METHODE & OUTILS
Objectifs À la fin de ce cours, vous serez capables de :
INTRODUCTION.
Le contenu est basé aux transparents du 7 ème édition de «Software Engineering» de Ian Sommerville«Software Engineering» de Ian Sommerville B.Shishedjiev.
Les principes de la modélisation de systèmes
Vocabulaire La polysémie
Programmation objet La base.
Le contenu est basé aux transparents du 7 ème édition de «Software Engineering» de Ian Sommerville«Software Engineering» de Ian Sommerville B.Shishedjiev.
5ième Classe (Mercredi, 19 octobre) Prog CSI2572.
C++ L’HERITAGE Fayçal BRAÏKI DUT INFORMATIQUE.
PHP objet Jérôme CUTRONA 10:13:27 Programmation Web
Sélection de colonnes (la projection)
2 Processus de conception de BD
Chapitre 2 Rappels objet et Présentation des diagrammes UML
Chapitre 2 Rappels objet et Présentation des diagrammes UML
Nouvelles Technologies Internet & Mobile
Introduction à la Programmation Orientée Objet
1 CONCEPTS. 2 Moteur Volant Siege Plaque d’immatriculation Compteur kilométrique Faire la vidange Faire le plein Démarrer Se garer Roues Lampe Clavier.
Modélisation des Actions Mécaniques Première sti2d
Modélisation avec UML 2.0 Partie II Diagramme de classes.
Transcription de la présentation:

Principes de la technologie orientée objets

Objectifs A la fin de ce cours, vous serez capables de : Décrire l'abstraction Décrire les concepts orientés objets : héritage, encapsulation, polymorphisme Identifier des objets et classes simples

Vue d'ensemble OO est un paradigme différent pour la programmation et la conception de logiciels. OO est basé sur la modélisation des objets du monde réel. OO crée des programmes réutilisables et adaptables. Les objets sont autonomes et incluent des informations et des comportements.

Qu'est-ce qu'un objet ? Définition philosophique : entité identifiable Dans la terminologie de la technologie objets : abstraction d'un objet du monde réel Dans la terminologie commerciale : entité appropriée à un domaine commercial Dans la terminologie logicielle : structure de données et fonctions y afférentes

Les objets effectuent des opérations Un objet existe afin de fournir un comportement (fonction) au système. Chaque comportement est appelé une opération. Objet : mon stylo bleu Opération : écrire Objet : guichet automatique de la banque Acme Opération : retrait

Les objets se souviennent des valeurs Les objets ont conscience de leur état actuel. Chaque connaissance est appelée un attribut. ENCRE Objet : mon stylo bleu Attribut : quantité d'encre Objet : guichet automatique de la banque Acme Attribut : disponibilité d'argent liquide

Les objets constituent une abstraction Lors de la modélisation d'un objet, vous ne devez modéliser que les opérations et les attributs qui revêtent une importance pour le problème. Opération réelle que vous ne souhaiterez peut-être pas modéliser : Pointer avec Attributs réels que vous ne souhaiterez peut-être pas modéliser : Longueur Fabricant Âge

Encapsulation L'encapsulation cache le fonctionnement et la connaissance des objets derrière une interface : les opérations de l'objet. Le guichet automatique de la banque Acme est un objet qui fournit de l'argent liquide à ses utilisateurs : Le guichet automatique ATM encapsule cela pour ses utilisateurs. Le vol constitue un contournement de l'encapsulation. Il est impossible de passer outre l'encapsulation dans la programmation orientée objet.

Exercice pratique : localisation des opérations et des attributs

Une banque peut être un objet. Hiérarchies d'objets Les objets peuvent être constitués d'autres objets. Les objets peuvent faire partie d'autres objets. Cette relation entre les objets est connue sous le noms d'agrégation. Une banque peut posséder un guichet automatique, qui peut être un objet. Une banque peut être un objet. Un guichet automatique peut être pourvu d'un clavier, d'un lecteur de cartes et d'un tiroir-caisse ; autant d'éléments qui peuvent être des objets.

Qu'est-ce qu'une classe ? Une classe est un modèle pour objets. Une définition de classe spécifie les opérations et les attributs relatifs à toutes les instances de cette classe. Lorsque vous créez l'objet "mon stylo bleu", vous ne devez pas en spécifier les opérations, ni les attributs. Il vous suffit d'indiquer la classe à laquelle il appartient.

Pourquoi les classes sont-elles nécessaires ? Une classe définit un type d'objet. Une classe définit le comportement et la structure d'un groupe d'objets : Vous pouvez gérer la complexité en utilisant des classes. Le monde se compose d'une multitude d'objets. Aussi, les gens classent-ils les objets en types. Si vous comprenez le type, vous pouvez l'appliquer à de nombreux objets.

Comment identifier une classe ? Identifiez la structure et le comportement communs d'un groupe d'objets. Identifiez un seul concept cohérent. Ces deux objets appartiennent à la classe "stylo". Mon stylo bleu ops : écrire, remplir attribs : quantité d'encre, couleur de l'encre Ton stylo bleu ops : écrire, remplir attribs : quantité d'encre

Comparaison Classes / Objets Les classes sont des définitions statiques permettant de comprendre tous les objets qui en font partie. Les objets sont des entités dynamiques qui existent dans le monde réel et la simulation que nous en effectuons. Attention ! Les personnes opérant dans le domaine de la technologie OO utilisent presque toujours indifféremment les termes "classes" et "objets" ; le contexte s'avère nécessaire pour faire la distinction entre les deux concepts.

Héritage Il peut y avoir une communauté de conception entre différentes classes. Définissez les propriétés communes dans une superclasse. Les sous-classes utilisent la technologie d'héritage pour inclure ces propriétés. Compte Compte d'épargne Compte chèques

La relation "est un type de" Un objet de sous-classe "est un type d'" objet de superclasse. Une sous-classe doit présenter tous les comportements de la superclasse. Compte Stylo Compte d'épargne Crayon

Embarquement de passagers Polymorphisme La notion de "polymorphisme" signifie qu'une même opération peut exister dans plusieurs classes. Toutes les opérations ont la même signification, mais chacune exécute l'opération à sa manière. Embarquement de passagers

Résumé Voici les principaux enseignements de cette leçon : Un objet est une abstraction d'un objet du monde réel. Une classe est un modèle ou une "batterie d'ustensiles" pour objets. Les classes forment des arborescences d'héritage ; les opérations définies dans une classe sont transmises à toutes les sous-classes. Le polymorphisme dispense le programme appelant de connaître la classe de l'objet de réception.