¿Qué son los paradigmas de programación?

Existen muchas formas de programar, de forma estructurada, funcional, reactiva o la más popular; la programación orientada a objetos, en este artículo veremos las diferencias entre ellas.

Diseño web
Lectura de 6 minutos
5 mar. 2020
¿Qué son los paradigmas de programación?

Ya te hemos hablado varias veces de lo que es la programación en nuestros cursos, artículos, videos y hasta infografías. Pero vamos a repasarlo una vez más. La programación en pocas palabras es darle datos e instrucciones a una computadora para que procese esos datos siguiendo las instrucciones que le dimos para que nos devuelva un resultado. ¿Y para qué? para resolver problemas de nuestra vida. Como hacer operaciones matemáticas, sacar estadísticas, automatizar un proceso, etc.

Pero esos problemas se pueden resolver de diferentes maneras, algunas más rápidas y eficientes y otras no tanto, pero ambas encontrarán la solución al problema.

Esas diferentes formas de resolver el problema son los paradigmas de programación y es de lo que hoy te voy a hablar.

¿Qué es un paradigma?

Un paradigma es equivalente a un mapa. Por ejemplo si quieres llegar de un punto "A" a un punto "B" tendrás múltiples caminos, algunos más lentos otros más rápidos pero al final todos te llevarán a tu destino. En el mundo de la programación los paradigmas son esos estilos documentados para programar, cada estilo es diferente, tienen sus ventajas y desventajas pero todos obtienen el mismo resultado.

Incluso existen lenguajes que ya adoptan un paradigma en específico, pero también otros que adoptan más de un paradigma como JavaScript, Python y Java (si Java 😄).

Paradigma Imperativa Vs Declarativa

Todos los paradigmas se diferencian en dos grupos

Imperativa

Es aquella que nos dice lo que vamos a hacer paso por paso, como si siguiéramos la receta para prepara nuestra comida favorita. Es decir tú en el código vas describiendo paso por paso todo lo que hará tu programa.

Declarativa

Es una programación en la que tú le dices al programa lo que tiene que hacer, no sabes como funciona por detrás pero el programa lo hace. Por ejemplo cuando haces la consulta de ventas en tu tienda del mes marzo en SQL, no sabes que hizo el programa para traerte esos datos pero los trajo, y es por que por debajo ya existen métodos y funciones que lo hacen.

Un ejemplo muy claro es Angular que usaba directivas para hacer múltiples cosas con tan solo escribir un atributo HTML.

Si te interesa saber más de Angular lo puedes aprender desde cero en 👉 https://ed.team/angular

Programación Estructurada

El paradigma con el que todos aprendimos a programar es el secuencial o estructurado, aquí las instrucciones van de arriba hacia abajo, no tenemos que abstraer cosas complejas, simplemente damos ordenes una tras otra.

¿Quieres aprende a programar en cualquier lenguaje? Tenemos un curso gratis de programación desde cero, tómalo en 👉 https://ed.team/cursos/programacion

Pero si te pones a pensar programar de arriba hacia abajo tiene muchos problemas. ¿Que pasa si hay un error en la línea 10456 que esta relacionada con la línea 956? Sería un caos resolverlo, por eso existen otros paradigmas que nos permiten mantener una programación más organizada.

Programación Orientada a Objetos

Video que es la programación Orientada a Objetos

Con la Programación Orientada a Objetos pasamos de tener un código de arriba hacia abajo en el que las funcionalidades están mezcladas y son difíciles de separar o escalar, a una programación en la que tenemos los elementos (Objetos) que tienen características y funciones.

Por ejemplo un usuario en una red social tiene características como nombre, apellido, edad. Y también funciones como comentar, iniciar sesión, comprar, etc.

Esta forma de programar hace más fácil manejar y mantener un sistema, si necesitáramos una nueva funcionalidad podríamos sin problemas agregar un nuevo objeto o añadir datos y funcionalidades a los objetos que ya existen.

🎓 Curso: Programación Orientada a Objetos

🎓 Curso: POO con JavaScript

Programación Funcional

Este tipo de programación también divide al sistema en varios pedazos, cada pedazo (función) hace una sola cosa como multiplicar un número, solicitar un dato, etc.

Por ejemplo si usuario inicia sesión en una web, habría una función que valide los datos, esta retornaría un valor y se la enviaría a otra función para saber que página mostrar, luego esta función enviara los datos a otra función para saber si el usuario tiene notificaciones, pero cada función hace una sola cosa.

Programación Reactiva

En la programación reactiva observamos cambios en un flujo de datos, por ejemplo un chat en vivo que recibe cientos de comentarios por segundo, o Google Maps enviándonos nuestra ubicación en tiempo real, etc.

Entonces lo que hace la programación reactiva es observar estos flujos datos y cuando estos cambian hacemos algo.

Con este ejemplo te quedará clarísimo. Cuando ves Netflix y la velocidad de tu internet disminuye, Netflix no para la transmisión, la continua pero con calidad de video inferior, eso es la programación reactiva.

🎓 Curso: Programación reactiva con RxJS

¿Quieres ir a la práctica y aprender estos paradigmas? Este es el curso que tienes que ver:

🎓 Curso: Paradigmas de programación

Espero que con este artículo haya aclarado tus dudas, si quieres saber aún más puedes ver el video 📺 Paradigmas de programación en nuestro canal de YouTube.

Nos vemos en otro artículo, bye 👋.

Avatar

Deivis Rivera

@deivisVer perfil

📢 Marketing en EDteam, 💻 Estudiante de Ingeniería de Sistemas, 🎮 amante de los videojuegos.

Comentarios de los usuarios

Avatar
Arturo Lopez

@arturolopez737

excelente explicación sobre los tipos de paradigmas de programación que existen

Avatar
jhonazsh .

@jhonazsh

Interesante aporte .... gracias!!

Avatar
HANDER GC

@handerdesign

thanks

Avatar
Federico .

@federicofee

excelente

Avatar
Dannery Bustamante

@dannerydalu

Un explicación muy detallada y al entendible para mí... Gracias 👏🏽👏🏽👏🏽

Ver más comentarios

Recuerda iniciar sesión para comentar este articulo

Cursos recomendados

Programación orientada a objetos

Programación orientada a objetos

Avatar

José Dimas Luján

5

4.6

Programación desde cero (gratis - edición 2020)

Programación desde cero (gratis - edición 2020)

Avatar

Alvaro Felipe

5

4.8

Paradigmas de programación

Paradigmas de programación

Avatar

Alexys Lozada

5

4.6