Programación basada en prototipos

Programación basada en prototipos

Programación basada en prototipos

Programación basada en prototipos es un estilo de programación orientada a objetos en el cual, las "clases" no están presentes, y la re-utilización de procesos (conocida como herencia en lenguajes basados en clases) se obtiene a través de la clonación de objetos ya existentes, que sirven de prototipos, extendiendo sus funcionalidades. Este modelo es conocido como orientado a prototipos, o programación basada en instancias.

El original (y el más canónico) ejemplo de lenguaje prototipado es el lenguaje Self, desarrollado por David Ungar y Randall Smith. Sin embargo el paradigma sin clases está comenzando a popularizarse y ya ha sido implementado en lenguajes de programación como JavaScript, Cecil, NewtonScript, Ío, MOO, REBOL y varios otros.

Comparación con el modelo basado en clases

En lenguajes basados en clases los objetos pueden ser de dos tipos generales, las clases y las instancias. Las clases definen la disposición y la funcionalidad básicas de los objetos, y las instancias son objetos "utilizables" basados en los patrones de una clase particular. En este modelo, las clases actúan como colecciones de comportamiento (métodos) y estructuras que son iguales para todas las instancias, mientras que las instancias llevan los datos de los objetos. La distinción del papel se basa así sobre todo en una distinción entre la estructura y el comportamiento en un lado, y el estado en el otro.

Los entusiastas de la programación basada en prototipos a menudo argumentan que los lenguajes basados en clases animan un modelo del desarrollo que se centra primero en la taxonomía y las relaciones entre las clases. En cambio, la programación basada en prototipos intenta animar al programador que se centre en el comportamiento de un cierto sistema de ejemplos y después de clasificar estos objetos en objetos arquetipos que se utilizan más adelante en una manera similar a las clases. Como tal, muchos sistemas basados en prototipos animan la alteración de prototipos durante tiempo de ejecución, mientras que solamente muy pocos sistemas orientados a objeto, basados en clase (como el primer sistema orientados al objetos dinámicos, Smalltalk) permiten que las clases sean alteradas durante la ejecución de un programa.

Mientras que basan la amplia mayoría de sistemas basados en prototipos se hacen con lenguajes de programación interpretados y de tipos de datos dinámicos, es importante precisar que los sistemas de tipos de datos estáticos son técnicamente factibles. El lenguaje de programación de Omega que es basado en prototipos es un ejemplo de tal sistema, aunque según el Web site de Omega, Omega no es exclusivamente de tipos de datos estáticos, pero su "compilador puede elegir utilizar el tipo de dato estático donde es posible esto y puede mejorar la eficacia del programa.”

Enlaces externos

Implementaciones

Obtenido de "Programaci%C3%B3n basada en prototipos"

Wikimedia foundation. 2010.

Игры ⚽ Поможем сделать НИР

Mira otros diccionarios:

  • Programación orientada a objetos — La programación orientada a objetos o POO (OOP según sus siglas en inglés) es un paradigma de programación que usa objetos y sus interacciones, para diseñar aplicaciones y programas informáticos. Está basado en varias técnicas, incluyendo… …   Wikipedia Español

  • JavaScript — Información general Paradigma Multi paradigma, Programación funcional,[1] Programación basada en prototipos, imperativo, Interpretado (Scripting) …   Wikipedia Español

  • Herencia diferencial — La Herencia Diferencial es un modelo de herencia común utilizado por lenguajes de programación basada en prototipos como Io y NewtonScript. Funciona sobre el principio de que la mayoría de los objetos derivan de otros, objetos más generales, y… …   Wikipedia Español

  • Systems Development Life Cycle — En este artículo sobre informática se detectaron los siguientes problemas: Necesita ser wikificado conforme a las convenciones de estilo de Wikipedia. Carece de fuentes o referencias que aparezcan en una fuente acreditada. Podría ser demasiado… …   Wikipedia Español

  • CLIPS — Saltar a navegación, búsqueda CLIPS es una herramienta que provee un ambiente de desarrollo para la producción y ejecución de sistemas expertos. Fue creado a partir de 1984, en el Lyndon B. Johnson Space Center de la NASA. Los fondos cesaron a… …   Wikipedia Español

  • C++ — Desarrollador(es) Bjarne Stroustrup, Bell Labs Información general …   Wikipedia Español

  • Interfaz de Paso de Mensajes — Para MPI (Multidimensional Poverty Index), véase Índice de pobreza multidimensional. MPI ( Message Passing Interface , Interfaz de Paso de Mensajes) es un estándar que define la sintaxis y la semántica de las funciones contenidas en una… …   Wikipedia Español

  • Xerox Star — 8010. La estación de trabajo Xerox Star, conocida oficialmente como el 8010 Star Information System (Sistema de Información Star 8010) fue introducida por Xerox Corporation en 1981. Fue el primer sistema comercial en incorporar varias tecnologías …   Wikipedia Español

  • HBean — (HTML Bean) Desarrollador Ricard Forner http://sourceforge.net/projects/hbean/ Información general Diseñador Daniel del Rio …   Wikipedia Español

  • Intel 8086 y 8088 — Intel 8088 Microprocesador Microprocesador Intel 8088 Producción 1979   1982 Fabricante(s) …   Wikipedia Español

Compartir el artículo y extractos

Link directo
Do a right-click on the link above
and select “Copy Link”