Crea una cuenta o inicia sesión

¡Continúa aprendiendo sin ningún costo! Únete y comienza a potenciar tu carrera

¿Cuáles son los principales paradigmas de programación?

5/21
Recursos

Aportes 26

Preguntas 2

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad? Crea una cuenta o inicia sesión.

Woh, no sabía cómo funcionaba Haskell jaja, algo curioso y MindBlow es que CSS es un lenguaje declarativo también porque se enfoca en el resultado, de hecho CSS es un lenguaje de query’s porque usas selectores.
.
Y si hablamos de query’s y lenguajes declarativos, también está SQL, ya que se enfoca en qué es lo que quieres obtener, no en cómo lo vas a obtener 😄

Grande Dross dando las mejores explicaciones de programacion 😎👍

un buen ejemplo de Programación Declarativa e Imperativa :


Solo una pequeña aclaración, el programa debe tener primero la salida (printf…) y luego la acumulación (total++), (respetando las instrucciones del ciclo for) para tener una salida de 0 - 9, de lo contrario tendremos salida de 1 - 10😢.

¿Cuáles son los principales paradigmas de programación?

Existen mas de 100 paradigmas distintos

Principales paradigmas

  • Imperativo
    • Por procedimientos
    • Orientado a objetos
  • Declarativo
    • Funcional
    • Lógico
    • Matemático
    • Reactivo
  • Dirigido por eventos

Programación imperativa

  • Ordenes directas de qué hacer
  • Enfocado al “Cómo”
  • Instrucciones paso a paso
  • Fortran, Java, C, Python, Ruby, PHP, etc.
    Ejemplos
int total = 0;
for(int i = 0; i < 0; i++){
    total++;
    printf("%i\", total)
}

Resultado

> 1 
> 2 
> 3 
> 4 
> 5
> 6  
> 7  
> 8  
> 9  

Programación declarativa

  • Se enfoca en el resultado
  • Reduce o elimina efectos colaterales
  • Prolog, LISP, Haskell, SQL, Elixir, XPath, Regex, etc.
    Ejemplos
-- Haskell
sum[1..10]

Resultado

> 55
1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 + 9...  

Biblioteca de la historia de los lenguajes

Hola que tal comparto este enlace Historia de Lenguajes

Es interesante la cantidad de lenguajes que existen.

🤔 Tenemos paradigmas de programación: Imperativo, declarativo y dirigido por eventos.

Programación dirigida por eventos
mientras en la programación secuencial (o estructurada) es el programador el que define cuál va a ser el flujo del programa, en la programación dirigida por eventos será el propio usuario —o lo que sea que esté accionando el programa— el que dirija el flujo del programa. Fuente: Programación dirigida por eventos

¿Qué son los paradigmas de programación?
Paradigma imperativo
Los programas consisten en una sucesión de instrucciones o conjunto de sentencias, como si el programador diera órdenes concretas. El desarrollador describe en el código paso por paso todo lo que hará su programa.

Algunos lenguajes: Pascal, COBOL, FORTRAN, C, C++, etc.

Otros enfoques subordinados al paradigma de programación imperativa son:

Programación estructurada: La programación estructurada es un tipo de programación imperativa donde el flujo de control se define mediante bucles anidados, condicionales y subrutinas, en lugar de a través de GOTO.
_Programación procedimental: _Este paradigma de programación consiste en basarse en un número muy bajo de expresiones repetidas, englobarlas todas en un procedimiento o función y llamarlo cada vez que tenga que ejecutarse.
_Programación modular: _consiste en dividir un programa en módulos o subprogramas con el fin de hacerlo más manejable y legible. Se trata de una evolución de la programación estructurada para resolver problemas de programación más complejos.
Paradigma declarativo
Este paradigma no necesita definir algoritmos puesto que describe el problema en lugar de encontrar una solución al mismo. Este paradigma utiliza el principio del razonamiento lógico para responder a las preguntas o cuestiones consultadas.

Este paradigma a su vez se divide en dos:

Programación Lógica: Prolog
Programación funcional: Lisp, Scala, Java, Kotlin
Programación orientada a objetos
En este modelo de paradigma se construyen modelos de objetos que representan elementos (objetos) del problema a resolver, que tienen características y funciones. Permite separar los diferentes componentes de un programa, simplificando así su creación, depuración y posteriores mejoras. La programación orientada a objetos disminuye los errores y promociona la reutilización del código. Es una manera especial de programar, que se acerca de alguna manera a cómo expresaríamos las cosas en la vida real.

Podemos definir un objeto como una estructura abstracta que, de manera más fiable, describe un posible objeto del mundo real y su relación con el resto del mundo que lo rodea a través de interfaces. Ejemplos de lenguajes de programación orientados a objetos serían Java, Python o C#.

La programación orientada a objetos se sirve de diferentes conceptos como:

Abstracción de datos
Encapsulación
Eventos
Modularidad
Herencia
Polimorfismo
Programación reactiva
Este paradigma se basa en escuchar lo que emite un evento o cambios en el flujo de datos, en donde los objetos reaccionan a los valores que reciben de dicho cambio. Las librerías más conocidas son Project Reactor, y RxJava. React/Angular usan RxJs para hacer uso de la programación reactiva.

PRINCIPALES PARADIGMAS DE PROGRAMACIÓN

imperativo:
por procedimientos: se enfoca en el como
orientado directamente en el “que hacer”
instruye del paso a paso.
orientado a objetos
Lenguajes: Fortran, Java, C, Python, Ruby, PHP, etc. orientado a objetos

declarativo: funcional, lógico, matemático, relativo
enfocado en el resultados
reduce o elimina efectos colaterales
lenguajes: Prolog, LISP, Haskell, SQL, Elixir, Xpath, Regex

Principales paradigmas:
Imperativo: .-Procedimientos .- Orientado a objetos
Órdenes directas de qué hacer, enfocado al cómo, instrucciones paso a paso. EJ: Fortrean, Python, Java.

Declarativo: .-Funcional .-Logico .- Matematico .-Reactivo
Se enfoca en resultados, reduce o elimina efectos colaterales, EJ: PROLOG,LISP HASKELL

Esta clase explica muchas cosas. 😮

No tenía clara la diferencia entre Imperativo y Declarativo.

La programación imperativa (del latín imperare = ordenar) es el paradigma de programación más antiguo. De acuerdo con este paradigma, un programa consiste en una secuencia claramente definida de instrucciones para un ordenador.

El código fuente de los lenguajes imperativos encadena instrucciones una detrás de otra que determinan lo que debe hacer el ordenador en cada momento para alcanzar un resultado deseado. Los valores utilizados en las variables se modifican durante la ejecución del programa. Para gestionar las instrucciones, se integran estructuras de control como bucles o estructuras anidadas en el código.

Los lenguajes de programación imperativa más conocidos son:

Fortran
Java
Pascal
ALGOL
C
C#
C++
Ensambladores
BASIC
COBOL
Python
Ruby
Los distintos lenguajes de programación imperativa pueden clasificarse a su vez en tres estilos distintos de programación subordinados: el estructurado, el procedimental y el modular.

El estilo estructurado de programación amplía el principio imperativo central con las estructuras concretas de control: secuencias, selección e iteración. Esto se hace para mitigar o evitar por completo las instrucciones de salto que añaden una complejidad innecesaria al código imperativo.

El enfoque procedimental divide las tareas de las que se debe ocupar un programa en tareas parciales más pequeñas que se describen en el código por separado. De esta forma, se crean principios básicos de programación que también se pueden reutilizar en otros programas.

Un paso más allá, en el modelo de programación modular, cada uno de los componentes de programa se diseñan, desarrollan y prueban con total independencia los unos de los otros. No es hasta el final del proceso cuando los módulos se combinan para conformar el software real.

Un paradigma es una forma de resolver algo, yo lo resumiría más aún así 😃

Este video muestra los paradigmas más importantes y usados en el mercado

Con esto quedo muy bien explicado lo de paradigmas

El ejemplo esta mal, es un ciclo for que se repite 10 veces, se incrementa y luego imprime el valor de la variable [total] que la primera vez ya es valdría 1, y la salida comienza desde 0, jeje ya lo se no es importante 😉

Bajo este enfoque se tienen cuatro paradigmas los cuales son:
paradigma por procedimientos o paradigma imperativo.
paradigma declarativo.
paradigma funcional.
paradigma orientado a objetos.

La verdad es que es un tema muy interesante. Habiendo tanteado con algunos lenguajes de programación siempre surge la pregunta de por qué se han pensado de una manera y no de otra. En este curso está la respuesta. Esto lleva a un programador un paso más allá y plantearse, antes de comenzar a trabajar, que lenguaje utilizará y por qué.

La arquitectura basada en eventos, hace uso del paradigma Reactivo, por lo tanto, bien la podemos categorizar como de tipo declarativa. Más no, como un paradigma más de la programación.

La programación imperativa es el paradigma más popular y utilizado en todo el 🌎.

Principales paradigmas

  • Hoy en día existen más de 100 paradigmas
  • Principales: Imperativo, declarativo y dirigido por eventos
  • Dichos paradigmas pueden tener otros paradigmas derivados de los mismos

.

Imperativo

  • Órdenes directas de qué hacer
  • Enfocado al cómo
  • Instrucciones paso a paso
  • Java, C, Python, Ruby, etc.

.

Declarativo

  • Se enfoca en el resultado
  • Reduce o elimina efectos colaterales
  • LISP, Haskell, SQL, Elixir, etc.

Solo he utilizado paradigmas imperativos, es la primera vez que veo el paradigma declarativo