Cours d'Informatique sur la programmation orientée Objet.
[...] Introduction à la programmation Objet 1. Introduction : La programmation Objet fait appel à des langages orientés objet (comme le langage JAVA). Dans les langages de programmation classique de type procédurale, les relations définies sont linéaires, il y a des appels de fonctions, des déclenchements de procédure à distance. Le langage objet apporte une nouvelle vision de la programmation et ainsi permet de construire des objets informatiques qui coopèrent entre eux sur n'importe quelle plate forme. L'ensemble des programmes obtenus sont alors une série d'objets. [...]
[...] On peut ainsi protéger tous les attributs que l'on désire. Tous les attributs qui ne sont pas indiqués comme ‘private' sont considérés comme ‘public' et n'importe qui peut les modifier. Il est également possible de déclarer ‘private' des méthodes. Ce sont alors des méthodes internes à l'objet auquel on ne peut pas accéder n'importe comment. La technique de l'encapsulation requiert une responsabilité accrue de la part du concepteur du type de donnée car il doit fournir une bonne API à l'utilisateur du type de données qui, si un problème se présente lors de la conception de son programme, aurait de grandes difficultés à isoler d'où vient son problème Formalisme de type abstrait : Le formalisme de type abstrait permet d'avoir une vue assez complète des propriétés d'un objet de ses méthodes, de son fonctionnement. [...]
[...] Tout d'abord cette technique apporte une sécurité accrue puisque le concepteur du type sait que le type de données sera bien utilisé si les utilisateurs du type passent par l'API. Mais aussi la modularité puisque le code utilisateur restera indépendant de la structure du type de données. Ainsi une modification du type de données restera transparente pour les utilisateurs du type. Cette pratique est courante lorsque des librairies dll sont mises à jour. Les paramètres d'appel des fonctions restent les mêmes alors que le contenu de procédures peut avoir été complètement modifié. Ceci facilite ainsi la pratique des mises à jour. [...]
[...] A partir d'une classe, on peut créer plusieurs objets. Chaque objet créé est alors appelé instance de la classe. Si l'on compare la programmation objet avec la programmation classique, on peut établir le tableau de similitudes suivant : 3. L'encapsulation des données : L'encapsulation des données c'est la possibilité pour le concepteur d'un type d'obliger ces utilisateurs de types à passer par l'API. Aussi l'utilisation directe du type de données est interdite. Les langages objets protègent alors certaines données contre des modifications intempestives. [...]
[...] On crée alors les classes suivantes : Classe Forme : attributs : couleur méthodes : déplace(dx, dy) Changer_Couleur(c) : couleur = c Classe Carré est une Forme attributs : x1 y1 x2 y2 méthodes : déplace(dx, dy) : x1 = x1 + dx y1 = y1 + dy x2 = x2 + dx y2 = y2 + dy Classe Triangle est une Forme attributs : x1 y1 x2 y2 x3 y3 méthodes : déplace(dx, dy) : x1 = x1 + dx y1 = y1 + dy x2 = x2 + dx y2 = y2 + dy x3 = x3 + dx y3 = y3 + dy Classe Cercle est une Forme attributs : x y rayon méthodes : déplace(dx, dy) : x = x + dx y = y + dy Cette définition de classes dérivées permet d'éviter de placer l'attribut Couleur dans chaque classe. Ainsi un carré est une forme. Une forme a une couleur. Donc un carré a une couleur. La méthode Change_Couleur est censément la même pour chaque type de forme puisque la couleur de ces formes changent de la même manière. Par contre pour chaque type de forme, la méthode de déplacement est différente. Aussi on la définit pour chaque classe dérivée. [...]
Source aux normes APA
Pour votre bibliographieLecture en ligne
avec notre liseuse dédiée !Contenu vérifié
par notre comité de lecture