Programmation orientée prototype - Définition et Explications

Source: Wikipédia sous licence CC-BY-SA 3.0.
La liste des auteurs est disponible ici.
Langages à objets
C++ - C# - D
Delphi - Eiffel - Groovy
Java - Lisaac - Python - Ruby
Simula - Smalltalk
Visual Basic - WLangage
Langages impératifs
APL - ASP - Assembleur
BASIC (En programmation, BASIC est un acronyme pour Beginner's All-purpose Symbolic Instruction Code. qui...) - C (Le C++ est un langage de programmation permettant la programmation sous de multiples paradigmes...) - Cobol (COBOL est un langage de programmation de troisième génération créé en 1959...) - Natural (Natural est un langage de programmation semi-compilé, édité par la société...)
Forth - Fortran - Limbo
Logo - Pascal - Perl - PHP (PHP (sigle de PHP: Hypertext Preprocessor), est un langage de scripts libre principalement...)
Langages fonctionnels
Haskell - ML/OCaml
Lisp/Common Lisp (Lisp est la plus ancienne famille de langages impératifs et fonctionnels. Développé...)
Scheme - XSLT
Langages déclaratifs
Clips - Prolog (Prolog est l’un des principaux langages de programmation logique inventé à...)
Langages concurrents
Ada 95 - Erlang
Voir aussi
Conception - Codage (De façon générale un codage permet de passer d'une représentation des...)
Tests - Optimisations

La programmation orientée prototype (La programmation orientée prototype est une forme de programmation orientée objet sans classe,...) est une forme de programmation orientée objet (La programmation par objet (du terme anglo-saxon Object-Oriented Programming ou OOP), est un...) sans classe, basée sur la notion de prototype. Un prototype est un objet (De manière générale, le mot objet (du latin objectum, 1361) désigne une entité définie dans...) à partir duquel on crée de nouveaux objets par clonage (Le clonage désigne principalement deux processus. C'est d'une part la multiplication naturelle...). En programmation (La programmation dans le domaine informatique est l'ensemble des activités qui permettent...) orientée prototype, les membres d'un objet, attributs et méthodes, sont appelés slots ; il n'y a pas la distinction entre les slots de données (Dans les technologies de l'information (TI), une donnée est une description élémentaire, souvent...) et les slots de code qu'on a avec les classes. La grande différence avec la programmation objet à classes est qu'on peut remplacer le contenu des slots, en ajouter d'autres ou changer la hiérarchie d'héritage que cela soit prévu dans l'objet original ou pas.

Self fut le premier langage à prototypes. Il a été conçu dans les laboratoires de Sun (Sun Microsystems (NASDAQ : SUNW) est un constructeur d'ordinateurs et un éditeur de...) dans les années 1990.

Comparaison des modèles à classes et à prototypes

Objets à classes :

  • Une classe définie par son code source (Le code source (ou les sources voire le source) est un ensemble d'instructions écrites dans un...) n'est pas vivante ;
  • Elle représente une définition (Une définition est un discours qui dit ce qu'est une chose ou ce que signifie un nom. D'où la...) abstraite de l'objet ;
  • Tout (Le tout compris comme ensemble de ce qui existe est souvent interprété comme le monde ou...) objet est instance d'une classe ;
  • L'héritage se situe au niveau des classes.

Objets à prototypes :

  • Un prototype défini par son code source est vivant ;
  • Il est lui-même un objet au même titre que les autres ;
  • Il a donc une existence physique (La physique (du grec φυσις, la nature) est étymologiquement la...) en mémoire ;
  • Il peut être modifié, appelé ;
  • Il est obligatoirement nommé ;
  • Un prototype peut être vu comme un exemplaire modèle d'une famille d'objet ;
  • Un objet est un clone d'un prototype ou simplement un objet nommé ;
  • L'héritage se situe au niveau de l'objet.

Intérêt de la programmation orientée prototype

Un des intérêts majeurs des prototypes est l'héritage dynamique : tout objet peut changer de parent à l'exécution, n'importe quand.

On peut matérialiser les paradigmes objet à prototypes et objet à classes en constatant la différence d'utilisation de la mémoire (D'une manière générale, la mémoire est le stockage de l'information. C'est aussi le souvenir...).

Il existe à l'heure (L’heure est une unité de mesure du temps. Le mot désigne aussi la grandeur...) actuelle plusieurs langages à base d'objets à prototypes : Self, Lisaac, ou encore les langages implémentant la spécification Ecmascript (Javascript, ActionScript (ActionScript est le langage de programmation utilisé au sein d'applications clientes (Adobe...), JScript). Self, Javascript (JavaScript est un langage de programmation de scripts principalement utilisé dans les pages...) et ActionScript sont non typés et sont interprétés. Lisaac est typé et compilé.

Langages

  • ActionScript
  • Actor-Based Concurrent Language, ABCL: ABCL/1, ABCL/R, ABCL/R2, ABCL/c+
  • Agora (En Grèce antique, l'Agora désigne le lieu de rassemblement, le marché de la...)
  • Cecil
  • Cel
  • ColdC
  • JavaScript
  • Factor
  • Io
  • Lisaac
  • Logtalk
  • Lua
  • LPC
  • MOO
  • NewtonScript
  • Obliq
  • OpenLaszlo
  • Oris
  • REBOL
  • Self
  • Slate
  • Squeak quand on l'utilise pour manipuler les composants du framework (En programmation informatique, un framework est un kit de composants logiciels structurels, qui...) Morphic
  • TADS
Cet article vous a plu ? Partagez-le sur les réseaux sociaux avec vos amis !
Page générée en 0.061 seconde(s) - site hébergé chez Amen
Ce site fait l'objet d'une déclaration à la CNIL sous le numéro de dossier 1037632
Ce site est édité par Techno-Science.net - A propos - Informations légales
Partenaire: HD-Numérique