Paradigmas de programación que deberías tomar en cuenta a la hora de desarrollar.

A la hora de resolver problemas es importante elegir el “paradigma” de programación correcto.
Pero ¿qué es un paradigma de programación?

Entiendase por ello en la forma en como el programador “ve” y piensa sobre la ejecución del programa.

No sería lo mismo entonces pensar en una ejecución secuencial a una ejecución de un algoritmo escrito en POO.

¿Qué paradigmas existen?

Bueno antes que nada un poco de historia, remontémonos a los tiempos de la Old school, las polillas en los enormes computadores y antes de que Bill Gates fuera rico.

En esos tiempos existía (y existe aún) la Programación Imperativa, “Assembly” y “El lenguaje binario” eran las únicas formas de programar…

Mucho después empezaron a surgir los HLL (lenguajes de alto nivel) estructuras de control de flujo, variables, bifurcación y todo el resto que ya conocemos; fue entonces que la programación imperativa fue poco a poco evolucionando y de ahí derivó en la programación estructurada, procedural y Orientado a Objetos.

Por lo tanto tenemos:

Programación Imperativa.

Describe la programación en términos de estado del programa y un conjunto de instrucciones que cambian de estado por lo tanto este conjunto le indica a la computadora como realizar una tarea.

Este paradigma podemos subdividirlo en los siguientes:

  1. Programación procedural
  2. Programación estructurada
  3. Programación Orientada a objetos

     

Programación declarativa.

Se declaran un conjunto de condiciones, proposiciones, afirmaciones que describen el problema y detallan su solución.

En la programación declarativa podemos incluír:

  1. Programación funcional
  2. Programación Lógica.

 

Por último y sin dejarlo atrás, se cuenta con la Programación Concurrente, pero este paradigma lo dejamos para otra ocasión.

¿Y tú, en qué paradigma te gusta programar más?

Referencias:

http://es.wikipedia.org/wiki/Paradigma_de_programación

esutoraiki says:

Hola Amir. Interesante artículo pero me parece que te falto por mencionar la POA (Programación Orientada a Aspectos)