SlideShare una empresa de Scribd logo
1 de 18
Descargar para leer sin conexión
Paradigmas de Programación
¿Qué es un paradigma de Programación?
● Debe ser concebido como un conjunto de métodos, reglas y generalizaciones
utilizadas conjuntamente por aquellos entrenados para realizar el trabajo
científico de investigación
● Los paradigmas de programación nos indican las diversas formas que, a lo
largo de la evolución de los lenguajes, han sido aceptadas como estilos para
programar y para resolver los problemas por medio de una computadora.[1]
Clasificación
Existen muchas
clasificaciones. Una muy
conocida es la siguiente.
[2]
1 Programación Imperativa
● Describe la programación como una secuencia instrucciones o comandos
que cambian el estado de un programa.
● Es descrito el cómo debe realizarse un cálculo y no el porqué.
● Las variables son celdas de memoria que contienen datos (o referencias),
pueden ser modificadas, y representan el estado del programa.
● La sentencia principal es la asignación.
1.1 Programación Estructurada
● La programación se divide en bloques (procedimientos y funciones) que
pueden o no comunicarse entre sí.
● Además la programación se controla con secuencia, selección e iteración.
● Permite reutilizar código programado y otorga una mejor compresión de la
programación.
1.2 Programación Orientada a Objetos
● Está basado en la idea de encapsular estado y operaciones en objetos. En
general, la programación se resuelve comunicando dichos objetos a través de
mensajes (programación orientada a mensajes).
● Se puede incluir -aunque no formalmente- dentro de este paradigma, el
paradigma basado en objetos, que además posee herencia y subtipos entre
objetos.
2 Programación Declarativa
● No se basa en el cómo se hace algo (cómo se logra un objetivo paso a paso),
sino que describe (declara) cómo es algo. En otras palabras, se enfoca en
describir las propiedades de la solución buscada, dejando indeterminado el
algoritmo (conjunto de instrucciones) usado para encontrar esa solución.
● La solución es hallada mediante mecanismos internos de inferencia de
información a partir de la descripción del problema en sí [3].
2.1 Programación Funcional
● Este paradigma concibe a la computación como la evaluación de funciones
matemáticas y evita declarar y cambiar datos. En otras palabras, hace
hincapié en la aplicación de las funciones y composición entre ellas
● Permite resolver ciertos problemas de forma elegante y los lenguajes
puramente funcionales evitan los efectos secundarios comunes en otro tipo
de programaciones.
● El proceso de depuración resulta sencillo.
● Mayor facilidad para la ejecución concurrente.
… Funcional
● Hasta hace poco, la mayor parte del uso que se le daba a los lenguajes
basados en el paradigma funcional era a nivel académico.
● Hoy en día Whatsapp, Facebook utilizan Erlang para algunos proyectos donde
es fundamental la concurrencia.[4]
● Scheme fue usado por Apple para desarrollo de aplicaciones en las
Macintosh.
● Redes sociales como Linkedin han movido el core de su aplicación a
lenguajes funcionales como Scala.[5]
2.2 Programación Lógica
● Se basa en la definición de reglas lógicas para luego, a través de un motor de
inferencias lógicas, responder preguntas planteadas al sistema y así resolver
los problemas.
● Dentro de las aplicaciones en las que puede utilizarse el paradigma lógico
esta:
○ Sistemas expertos.
○ Demostración automática de teoremas.
○ Reconocimiento de lenguaje natural.
3 Otros paradigmas
Otros paradigmas y
subparadigmas son:
paradigma orientado al
sujeto, paradigma
reflectante, programación
basada en reglas,
paradigma basado en
restricciones, programación
basada en prototipos,
paradigma orientado a
aspectos, etc.
Multiparadigma
Es posible que para la resolución de problemas sean necesarios el empleo de
varios paradigmas a la vez. Inclusive, muchos lenguajes modernos avanzan hacia
un modelo multiparadigma, donde se puede tener en una sola herramienta la
posibilidad de emplearse en múltiples situaciones. De esta manera se establece
una lealtad por parte de los programadores hacia un lenguaje específico.
Ejemplos
Para determinar un algoritmo para obtener el
Máximo Común Divisor
Fortran 777: Imperativo, procedural, no estructurado
Pascal: Imperativo, procedural, estructurado
Funcionales
Lógico
Bibliografía
[1]http://www.iqcelaya.itc.mx/~vicente/Programacion/Paradigmas.pdf
[2]http://labsys.frc.utn.edu.ar/ppr-2009/Unidad%20I%20-%20POO%20Avanzada/Apunte/Uni
dad%20I%20-%20POO%20Avanzada.pdf
[3]http://www.genbetadev.com/paradigmas-de-programacion/diferencias-entre-paradigmas
-de-programacion
[4]https://www.fastcompany.com/3026758/inside-erlang-the-rare-programming-language-b
ehind-whatsapps-success
[5]https://engineering.linkedin.com/play/play-framework-democratizing-functional-program
ming-modern-web-programmers

Más contenido relacionado

La actualidad más candente

Paradigmas de programacion
Paradigmas de programacionParadigmas de programacion
Paradigmas de programacionWil Mer
 
3 paradigmas
3 paradigmas3 paradigmas
3 paradigmasalithu1
 
Paradigmas programacion
Paradigmas programacionParadigmas programacion
Paradigmas programacionLuis Peralta
 
Paradigmas de programacion
Paradigmas de programacionParadigmas de programacion
Paradigmas de programacionyamy matin
 
Programacion Orientada Objetos
Programacion Orientada ObjetosProgramacion Orientada Objetos
Programacion Orientada Objetosliliandrade
 
Paradigma de Programación Orientado a Objetos
Paradigma de Programación Orientado a ObjetosParadigma de Programación Orientado a Objetos
Paradigma de Programación Orientado a ObjetosAlberto Blumberg
 
PARADIGMA FUNCIONAL
PARADIGMA FUNCIONALPARADIGMA FUNCIONAL
PARADIGMA FUNCIONALFredy Olaya
 
Paradigmas de programacion
Paradigmas de programacion Paradigmas de programacion
Paradigmas de programacion Anel Sosa
 
Programación modular. Esteban Alzate Duque
Programación modular. Esteban Alzate DuqueProgramación modular. Esteban Alzate Duque
Programación modular. Esteban Alzate DuqueEsteban Duque
 
Programación estructurada, modular y orientada a objeto
Programación estructurada, modular y orientada a objetoProgramación estructurada, modular y orientada a objeto
Programación estructurada, modular y orientada a objetoGermán Robles Tandazo
 
Introducción a los paradigmas de programación
Introducción a los paradigmas de programaciónIntroducción a los paradigmas de programación
Introducción a los paradigmas de programaciónJose Sanchez
 
Programación Orientada a Objetos vs Programación Estructurada
Programación Orientada a Objetos vs Programación EstructuradaProgramación Orientada a Objetos vs Programación Estructurada
Programación Orientada a Objetos vs Programación EstructuradaMichael de la Cruz
 
Paradigmas de Programación
Paradigmas de ProgramaciónParadigmas de Programación
Paradigmas de ProgramaciónJose Sanchez
 
Paradigma de poo
Paradigma de pooParadigma de poo
Paradigma de poopixeleante
 
Programacion estructurada vs. programación a objetos
Programacion estructurada vs. programación a objetosProgramacion estructurada vs. programación a objetos
Programacion estructurada vs. programación a objetoslidia gonzalez
 
PARADIGMA IMPERATIVO
PARADIGMA IMPERATIVOPARADIGMA IMPERATIVO
PARADIGMA IMPERATIVOFredy Olaya
 
Programación estructurada
Programación estructuradaProgramación estructurada
Programación estructuradavnslgars
 
Tabla comparativa de paradigma de programacion estruturada y pradigma de prog...
Tabla comparativa de paradigma de programacion estruturada y pradigma de prog...Tabla comparativa de paradigma de programacion estruturada y pradigma de prog...
Tabla comparativa de paradigma de programacion estruturada y pradigma de prog...jose francisco arenas jimenez
 

La actualidad más candente (20)

Paradigmas de programación
Paradigmas de programaciónParadigmas de programación
Paradigmas de programación
 
Paradigmas de programacion
Paradigmas de programacionParadigmas de programacion
Paradigmas de programacion
 
3 paradigmas
3 paradigmas3 paradigmas
3 paradigmas
 
Paradigmas programacion
Paradigmas programacionParadigmas programacion
Paradigmas programacion
 
Paradigmas de programacion
Paradigmas de programacionParadigmas de programacion
Paradigmas de programacion
 
Programacion Orientada Objetos
Programacion Orientada ObjetosProgramacion Orientada Objetos
Programacion Orientada Objetos
 
Programacion estructurada
Programacion estructuradaProgramacion estructurada
Programacion estructurada
 
Paradigma de Programación Orientado a Objetos
Paradigma de Programación Orientado a ObjetosParadigma de Programación Orientado a Objetos
Paradigma de Programación Orientado a Objetos
 
PARADIGMA FUNCIONAL
PARADIGMA FUNCIONALPARADIGMA FUNCIONAL
PARADIGMA FUNCIONAL
 
Paradigmas de programacion
Paradigmas de programacion Paradigmas de programacion
Paradigmas de programacion
 
Programación modular. Esteban Alzate Duque
Programación modular. Esteban Alzate DuqueProgramación modular. Esteban Alzate Duque
Programación modular. Esteban Alzate Duque
 
Programación estructurada, modular y orientada a objeto
Programación estructurada, modular y orientada a objetoProgramación estructurada, modular y orientada a objeto
Programación estructurada, modular y orientada a objeto
 
Introducción a los paradigmas de programación
Introducción a los paradigmas de programaciónIntroducción a los paradigmas de programación
Introducción a los paradigmas de programación
 
Programación Orientada a Objetos vs Programación Estructurada
Programación Orientada a Objetos vs Programación EstructuradaProgramación Orientada a Objetos vs Programación Estructurada
Programación Orientada a Objetos vs Programación Estructurada
 
Paradigmas de Programación
Paradigmas de ProgramaciónParadigmas de Programación
Paradigmas de Programación
 
Paradigma de poo
Paradigma de pooParadigma de poo
Paradigma de poo
 
Programacion estructurada vs. programación a objetos
Programacion estructurada vs. programación a objetosProgramacion estructurada vs. programación a objetos
Programacion estructurada vs. programación a objetos
 
PARADIGMA IMPERATIVO
PARADIGMA IMPERATIVOPARADIGMA IMPERATIVO
PARADIGMA IMPERATIVO
 
Programación estructurada
Programación estructuradaProgramación estructurada
Programación estructurada
 
Tabla comparativa de paradigma de programacion estruturada y pradigma de prog...
Tabla comparativa de paradigma de programacion estruturada y pradigma de prog...Tabla comparativa de paradigma de programacion estruturada y pradigma de prog...
Tabla comparativa de paradigma de programacion estruturada y pradigma de prog...
 

Similar a Paradigmas de Programación: Imperativa, Funcional, Lógica y Más

Similar a Paradigmas de Programación: Imperativa, Funcional, Lógica y Más (20)

Unidad 1 clase 5 - fp
Unidad 1   clase 5 - fpUnidad 1   clase 5 - fp
Unidad 1 clase 5 - fp
 
01. Fundamentos.pdf
01. Fundamentos.pdf01. Fundamentos.pdf
01. Fundamentos.pdf
 
Fundamentos de programacion
Fundamentos de programacionFundamentos de programacion
Fundamentos de programacion
 
Paradigmasdeprogramacion
ParadigmasdeprogramacionParadigmasdeprogramacion
Paradigmasdeprogramacion
 
Técnicas de programación
Técnicas de programaciónTécnicas de programación
Técnicas de programación
 
Lenguajes de programación
Lenguajes de programaciónLenguajes de programación
Lenguajes de programación
 
Pseudocódigo
PseudocódigoPseudocódigo
Pseudocódigo
 
PARADIGMA DE PROGRAMACION
PARADIGMA DE PROGRAMACIONPARADIGMA DE PROGRAMACION
PARADIGMA DE PROGRAMACION
 
UNIDAD 2_Tema 1.pdf
UNIDAD 2_Tema 1.pdfUNIDAD 2_Tema 1.pdf
UNIDAD 2_Tema 1.pdf
 
LENGUAJES DE PROGRAMACION
LENGUAJES DE PROGRAMACIONLENGUAJES DE PROGRAMACION
LENGUAJES DE PROGRAMACION
 
Paradigma orientado a objetos,
Paradigma orientado a objetos,Paradigma orientado a objetos,
Paradigma orientado a objetos,
 
Paradigmas de programaciónes
Paradigmas de programaciónesParadigmas de programaciónes
Paradigmas de programaciónes
 
Programacion Funcional
Programacion FuncionalProgramacion Funcional
Programacion Funcional
 
lenguaje y herramientas
lenguaje y herramientaslenguaje y herramientas
lenguaje y herramientas
 
Programacion
ProgramacionProgramacion
Programacion
 
Introduccion a los lenguajes de programacion
Introduccion a los lenguajes de programacionIntroduccion a los lenguajes de programacion
Introduccion a los lenguajes de programacion
 
Presentación2
Presentación2Presentación2
Presentación2
 
Modulo 1 algoritmo
Modulo 1 algoritmoModulo 1 algoritmo
Modulo 1 algoritmo
 
Modulo 1 algoritmo
Modulo 1 algoritmoModulo 1 algoritmo
Modulo 1 algoritmo
 
Lenguajes1
Lenguajes1Lenguajes1
Lenguajes1
 

Paradigmas de Programación: Imperativa, Funcional, Lógica y Más