Ajouter un commentaire, une note, faire une correction, référencer un lien, ...

Modéliser en Objet

Historique Modéliser en Objet :

  • 1980 : Le 1er compilateur C++ (C++ normalisé par l'ANSI).
  • 1976 : Smalltalk implémente les concepts fondateurs de l'approche objet (encapsulation, agrégation, héritage / classes, associations entre classes, hiérarchies de classes, messages entre objets)
  • 1967 : Simula 1er langage avec le concept de type abstrait ((à l'aide de classes)
  • Autres langages orientés objets académiques : Eiffel, Objective C, Loops...

Objet / Notions fondamentales :

  • Un objet est une entité aux frontières précises qui possède une identité (un nom).
  • Un ensemble d'attributs caractérise l'état de l'objet.
  • Un ensemble d'opérations (méthodes) en définissent le comportement.
  • Un objet est une instance de classe (une occurrence d'un type abstrait).
  • Une classe est un type de données abstrait, caractérisé par des propriétés (attributs et méthodes) communes à des objets et permettant de créer des objets possédant ces propriétés.

Concepts importants de l'approche objet

  • Encapsulation
    • Consiste à masquer les détails d'implémentation d'un objet, en définissant une interface.
    • L'interface est la vue externe d'un objet, elle définit les services accessibles (offerts) aux utilisateurs de l'objet.
    • L'encapsulation facilite l'évolution d'une application car elle stabilise l'utilisation des objets : on peut modifier l'implémentation des attributs d'un objet sans modifier son interface.
    • L'encapsulation garantit l'intégrité des données, car elle permet d'interdire l'accès direct aux attributs des objets (utilisation d'accesseurs).
  • Héritage (et polymorphisme)
    • L'héritage est un mécanisme de transmission des propriétés d'une classe (ses attributs et méthodes) vers une sous-classe.
    • Une classe peut être spécialisée en d'autres classes, afin d'y ajouter des caractéristiques spécifiques ou d'en adapter certaines.
    • Plusieurs classes peuvent être généralisées en une classe qui les factorise, afin de regrouper les caractéristiques communes d'un ensemble de classes.
    • La spécialisation et la généralisation permettent de construire des hiérarchies de classes. L'héritage peut être simple ou multiple.
    • L'héritage évite la duplication et encourage la réutilisation.
    • Le polymorphisme représente la faculté d'une méthode à pouvoir s'appliquer à des objets de classes différentes.
    • Le polymorphisme augmente la généricité du code.
  • Agrégation
  • Il s'agit d'une relation entre deux classes, spécifiant que les objets d'une classe sont des composants de l'autre classe.
  • Une relation d'agrégation permet donc de définir des objets composés d'autres objets.
  • L'agrégation permet d'assembler des objets de base, afin de construire des objets plus complexes.

Source : UML en français





Version imprimable...
Envoyer à un ami...

Modéliser en Objet



Sites de référence


Hiérarchie

Architecture / Analyse
Modéliser en Objet
UML
RUP
Design Patterns
Architecture N-Tiers
Client Tier
tous les sujets...
Choisir les meilleures vitamines...



Films Disney

Vidéos sur les OGM

Villes de France sur GoogleMap

Index des sujetsArchitecture / Analyse

Java - XML - Web


Informatique


Voir Aussi



Google