martes, 23 de noviembre de 2010

Paradigmas de Programacion.

Materia: Lenguajes de Programacion.
Que significa paradigma?


Paradigma es un modelo o patrón en cualquier disciplina científica u otro contexto epistemológico. El concepto fue originalmente específico de la gramática; en 1900 el diccionario Merriam-Webster definía su uso solamente en tal contexto, o en retórica para referirse a una parábola o a una fábula. En lingüística, Ferdinand de Saussure ha usado paradigma para referirse a una clase de elementos con similitudes.

Introduccion.

Un paradigma de programación es una propuesta tecnológica que es adoptada por una comunidad de programadores cuyo nucleo central es incuestionable en cuanto a que unívocamente trata de resolver uno o varios problemas claramente delimitados. La resolución de estos problemas debe suponer consecuentemente un avance significativo en almenos un parámetro que afecte a la ingeniería de software. Tiene una estrecha relación con la formalización de determinados lenguajes en su momento de definición. Un paradigma de programación está delimitado en el tiempo en cuanto a aceptación y uso ya que nuevos paradigmas aportan nuevas o mejores soluciones que la sustituyen parcial o totalmente.

A paradigma de programación es un estilo fundamental de programación de la computadora. (Compare con una metodología, que es un estilo de solucionar específico tecnología de dotación lógica problemas).
Ejemplo:

Probablemente el paradigma de programación que actualmente es el más usado a todos los niveles es la orientación a objeto. El núcleo central de este paradigma es la unión de datos y procesamiento en una entidad llamada "objeto", relacionable a su vez con otras entidades "objeto".

Tradicionalmente datos y procesamiento se han separado en áreas diferente del diseño y la implementación de software. Esto provocó que grandes desarrollos tuvieran problemas de fiabilidad, mantenimiento, adaptación a los cambios y escalabilidad. Con la orientación a objetos y características como el encapsulado, polimorfismo o la herencia se permitió un avance significativo en el desarrollo de software a cualquier escala de producción.

La orientación a objeto parece estar ligado en sus origenes con lenguajes como Lisp y Simula aunque el que acuño el título de programación orientada a objetos fué Smaltalk.

Tipos de paradigmas de programación más comunes

• Imperativo o por procedimientos: es considerado el más común y está representado, por ejemplo, por C o BASIC.

• Funcional: está representado por Scheme o Haskell. Este es un caso del paradigma declarativo.

• Lógico: está representado por Prolog. Este es otro caso del paradigma declarativo.

• Declarativo: por ejemplo la programación funcional, la programación lógica, o la combinación lógico-funcional.

• Orientado a objetos: está representado por Smalltalk, un lenguaje completamente orientado a objetos.

Si bien puede seleccionarse la forma pura de estos paradigmas al momento de programar, en la práctica es habitual que se mezclen, dando lugar a la programación multiparadigma.

Actualmente el paradigma de programación más usado es el de la programación orientada a objetos.

Breve Explicacion:

Un lenguaje de programación puede apoyar paradigmas múltiples. Por ejemplo programas escritos adentro C++ o PASCAL del objeto puede estar puramente procesal, o puramente orientado al objeto, o contenga los elementos de ambos paradigmas. Los diseñadores y los programadores del software deciden cómo utilizar esos elementos del paradigma.

En programación orientada al objeto, los programadores pueden pensar en un programa como colección de objetos que obran recíprocamente, mientras que adentro programación funcional un programa se puede pensar en como secuencia de las evaluaciones apátridas de la función. Cuando computadoras o sistemas de programación con muchos procesadores, programación proceso-orientada permite que los programadores piensen de usos como sistemas de procesos concurrentes que actúan sobre compartido lógicamente estructuras de datos.

Apenas como diversos grupos adentro tecnología de dotación lógica abogado diferente metodologías, diferente lenguajes de programación abogado diferente paradigmas de programación. Algunas idiomas se diseñan para apoyar un paradigma particular (Palique apoya la programación orientada al objeto, Haskell apoya la programación funcional), mientras que otros lenguajes de programación apoyan paradigmas múltiples (por ejemplo PASCAL del objeto, C++, C#, Básico visual, Lisp común, Esquema, Python, Rubí y Onza).

Muchos paradigmas de programación están como bien conocidos para qué técnicas ellos prohibido en cuanto a lo que él permite. Por ejemplo, la programación funcional pura rechaza el uso de efectos secundarios; programación estructurada rechaza el uso del goto declaración. En parte por esta razón, los nuevos paradigmas son mirados a menudo como doctrinaire o excesivamente rígido por ésos acostumbrados a estilos anteriores.[citación necesitada] Evitar ciertas técnicas puede hacerlo más fácil probar teoremas sobre un programa corrección-o entender simplemente su comportamiento.

Ejemplos

• Programación de Annotative (como adentro Lengua de la llamarada)

• programación Aspecto-orientada (como adentro AspectJ)

• Programación Atribuir-Orientada (como adentro Java 5 anotaciones, preprocesado por la clase de XDoclet; Cualidades de C#)

• Programación Autómata-Basada

• Programación Bayesian

• programación Clase-basada, comparado a programación Prototipo-basada (dentro del contexto de la programación orientada al objeto)

• programación Componente-orientada (como adentro OLE)

• Programación de Concatenative

• Programación de constreñimiento, comparado a programación de la lógica

• programación Contexto-orientada (como adentro ContextJ/contextos/ContextL)

• Programación orientada de la cibernética

• Programación del flujo de datos (como adentro hojas de balance)

• Programación declarativa

• Programación conducida acontecimiento

• programación Fluir-basada

• programación del Función-nivel

• Programación funcional

• programación Meta-dirigida como adentro Snobol, algo similar a Programación de la lógica

• Programación imprescindible, comparado a programación declarativa

• Programación intencional

• Programación que sabe leer y escribir

• Programación de la lógica (como adentro Prólogo) y Programación de la lógica de Abductive

• Mensaje que pasa la programación, comparado a la programación imprescindible

• Programación no determinista

• Programación orientada al objeto (como adentro Palique)

• Programación de la tubería (como en Línea de comando del UNIX)

• programación Política-basada

• Programación procesal, comparado a programación funcional

• programación Proceso-orientada un modelo de la programación paralela.

• Programación reactiva

• Programación recurrente, comparado a programación iterativa

• Programación reflexiva

• Programación escalar, comparado a Programación del arsenal

• Programación estructurada, comparado a programación no estructurada

• programación Tema-orientada

• Programación del árbol

• programación del Valor-nivel, comparado a programación del función-nivel

• Metaprogramming

Bibliografias:

http://es.wikipedia.org/wiki/Paradigma_de_programaci%C3%B3n

http://www.worldlingo.com/ma/enwiki/es/Programming_paradigm

1 comentario: