Píldora TAI CXXX; Evolución y Tipos de Lenguajes de Programación

🖥️ Lenguajes de Programación y Desarrollo de Software – Guía Completa y Actualizada

📌 Introducción

Los lenguajes de programación son el puente entre las ideas humanas y las máquinas. A lo largo de la historia, han evolucionado desde el lenguaje máquina puro hasta potentes lenguajes orientados a objetos y funcionales.
En esta guía visual conocerás sus generaciones, paradigmas, tipos, y las claves para entender su uso en el desarrollo de software moderno.


🏛️ Generaciones de Lenguajes de Programación

GeneraciónCaracterísticasEjemplos
(Lenguaje Máquina)Código binario puro, específico del hardwareFORTRAN
(Ensamblador)Mnemotécnicos y símbolos, traducción directa a binarioALGOL-60, COBOL, BASIC
(Lenguajes de Alto Nivel)Sintaxis cercana al humano, portabilidadC, Pascal, C++, Java
(Lenguajes Declarativos y Especializados)Orientados a resolver problemas concretosSQL, Prolog, MATLAB
(Basados en Conocimiento e IA)Lógica y razonamiento automáticoProlog, LISP, Python IA libs

🧭 Clasificación por Paradigmas

1️⃣ Imperativos / Por Procedimientos

  • Secuencia de instrucciones paso a paso.
  • Control total del flujo.
  • Ejemplos: C, Pascal, COBOL.

2️⃣ Declarativos

  • Indican qué se quiere, no cómo hacerlo.
  • Incluye programación lógica y funcional.
  • Ejemplos: SQL, Prolog, Haskell.

3️⃣ Orientados a Objetos (POO)

  • Basado en objetos que contienen datos y métodos.
  • Encapsulación, herencia y polimorfismo.
  • Ejemplos: Java, C++, Python, C#.

4️⃣ Programación Funcional

  • Basada en funciones matemáticas.
  • Evita estados y datos mutables.
  • Ejemplos: Lisp, Elixir, F#.

5️⃣ Dirigida por Eventos

  • El flujo depende de eventos externos.
  • Usada en interfaces gráficas y videojuegos.
  • Ejemplos: JavaScript, C#, Visual Basic .NET.

🧩 Tipos y Traducción de Lenguajes

TipoDescripciónEjemplos
CompiladoTraduce todo el código a lenguaje máquina antes de ejecutarlo.C, C++, Go
InterpretadoTraduce línea por línea en tiempo real.Python, JavaScript
MixtoCompilado a bytecode y luego interpretado/ejecutado.Java, C#

🛠️ Aspectos Clave en Desarrollo de Software

🔗 Acoplamiento

  • Bajo acoplamiento = mayor independencia entre módulos (más deseable).
  • Tipos: Normal, Datos, Control, Externo, Común, Contenido.

🧬 Cohesión

  • Alta cohesión = módulos que cumplen una única función de forma clara.
  • Tipos: Funcional, Secuencial, Comunicacional, Procedimental, Temporal, Lógica, Casual.

📊 Representación de Datos

  • Estructuras internas: Arrays, listas.
  • Estructuras externas: Archivos, BBDD.
  • Tipos básicos: Enteros, flotantes, caracteres, booleanos.
  • Tipificación:
    • Fuerte: Control estricto (Java, C#).
    • Débil: Conversión implícita (JavaScript, PHP).

🧪 Pruebas de Software

  • Caja Blanca: Analiza el código.
  • Caja Negra: Evalúa entradas/salidas.
  • Caja Gris: Mezcla de ambas.
  • Etapas: Unitarias → Integración → Aceptación (Alpha/Beta) → Validación.

📌 Características Deseables en un Lenguaje

  • Legible, flexible, portable, eficaz.
  • Seguridad y tipado fuerte.
  • Facilidad de mantenimiento.
  • Soporte multiplataforma.
  • Comunidad activa.

📍 Infografía Visual (Esquema)

Respuesta

  1. […] Píldora TAI CXXX; Evolución y Tipos de Lenguajes de Programación – Anacrolibrum […]

    Me gusta

Replica a Píldoras TAI de Anacrolibrum – Anacrolibrum Cancelar la respuesta