Paradigmas - Repaso 2024

Redactado por

Christopher Mendoza

Paradigmas de la Programación

¿Que es un Paradigma?

Un paradigma es un conjunto de metodos para resolver algo.
Aquel que designa un esquema formal o modelo de tipo cientifico riguroso.

Los Lenguajes no estan ligados a los paradigmas, existen soluciones multiparadigmas.

Traductores:

Es el encargado de convertir lo que nosotros escribimos a un formato entendible por las maquinas.

  • Compilador: Toma todo el código escrito en un lenguaje de programación a un objeto para una arquitectura.
  • Intérprete: Línea por línea en tiempo real va siendo traducido y ejectuado.
  • Ensamblador: Convierte el código ensamblador a código maquina.

Tipos de Lenguajes:

  • Lenguaje Máquina (Binario): Directamente entendido por las máquinas, no requiere traducción. Es extremadamente complejo de escribir para los humanos debido a su formato binario puro.
  • Lenguaje de Bajo Nivel (Ensamblador): Cercano al lenguaje máquina, pero más legible para los humanos gracias a códigos nemotécnicos que representan instrucciones básicas del procesador. Es específico para cada tipo de arquitectura de procesador.
  • Lenguaje de Nivel Medio: Ofrece un equilibrio entre el acceso directo al hardware, característico de los lenguajes de bajo nivel, y la simplicidad de los lenguajes de alto nivel. Ejemplos comunes son C y C++, que permiten manejar el hardware de manera eficiente y facilitan la programación.
  • Lenguaje de Alto Nivel: Diseñado para ser fácil de escribir y leer por los humanos. Es independiente del hardware y requiere traducción (compilación o interpretación) para ejecutarse en una máquina.

Tipados:

  • Tipado Estático: Comprobación de tipos durante la compilación, tipos no cambian durante ejecución, siendo esta mas eficiente.
  • Tipado Dinámico: Comprobación durante la ejecución, el tipo puedo cambiar durante la ejecución, más propenso a errores.
  • Tipado Fuerte: Es necesario el casting obligatoriamente.
  • Tipado Débil: No es necesario el casting explicito.

Tipos de Paradigmas:

Imperativo:

Como resolver algo, explicitamente, dando una secuencia de comandos o instrucciones especificos. Java, Python, C++.

El imperativo se puede aplicar de diferentes formas:

Programación Estructurada:

El flujo se define a travez de bucles anidados, subrutinas y condicionales, no utilizamos goto

Programación Procedimental:

Pocas expresiones repetidas, las aglutina en funciones y las llama cuando necesita.

Programación modular:

Dividir el programa en modulos o subprogramas para que sea mas facil de manejarlo, estos son independientes uno de otros.

Programación OO:

Representa objetos de la vida real con instancias de clases que los describen.

Declarativo:

Es un enfoque de programación que describe qué se debe lograr y no cómo hacerlo. No existe orden de evaluación ni secuencia de asignación.

Paradigma Lógico:

Basado en Lógica formal, Base de Conocimientos de hechos y reglas. (Prolog)

Paradigma Funcional:

Basado en funciones matemáticas, ausencia de efectos secundarios. (Racket)

Ir Arriba↑