En el 2019 decidí comenzar una serie de artículos sencillos para mi blog (Desde las Horas Extras) sobre tipos y paradigmas de programación, la intención era crear máximo unos tres artículos, ya la naturaleza del blog es tratar temas relativos a la programación y al desarrollo de software en la empresa.
Sin darme cuenta el número de artículos y su complejidad creció, y parecía que los artículos planeados se quedaban cada vez más cortos, al final me ocupo prácticamente todo el año, donde no hubo espacio para otros temas.
Todo eso se convirtió en este documento , donde se intenta hacer un recorrido sobre las diferentes formas de clasificar lenguajes de programación
Se intentó que todos los temas tratados, tuvieran impacto real en el desarrollo de software y pudieran usarse tanto para una capacitación académica, como para instruir y apoyar a alguien que ya desarrolla software de forma profesional.
El conjunto de los lenguajes que se ha seleccionado para los ejemplos son variados, y solo corresponde a un gusto personal, son mis lenguajes favoritos, o por lo menos con los que más he tenido que trabajar profesionalmente.
Las clasificaciones de los lenguajes han sido las siguientes:
- Según el nivel.
- Según la generación.
- Lenguajes interpretados o compilados.
- Estáticos o dinámicos
- Según el “ Tipado ”.
- Según el Paradigma.
En los datos históricos se ha intentado ser lo más rigoroso posible, aunque a veces es difícil precisar en qué momento exacto se introdujo una características en un lenguaje, que lo hace ser más de un tipo que de otro.
Sin embargo en todo momento se intenta mostrar los (tipos de) lenguajes de programación, no como una verdad absoluta, si no como algo que ha fluido a lo largo del tiempo, adaptándose a las necesidades (empresariales) de cada momento.
Acerca de este documento
Este documento tiene licencia GPL ( GNU Lesser General Public License v3.0), en la práctica es un documento creado, sin ánimo de lucro, que puedes usar tanto académicamente, como profesionalmente, sin ninguna restricción más que las indicadas en la misma licencia (que básicamente es mencionar el copyright y conservar la licencia).
Todo el código fuente ha sido desarrollado para ejemplificar los temas aquí tratados, y tienen la misma licencia.
Las imágenes ilustrativas han sido en su mayoría encontradas en internet, en lugar libres de derechos, pero por si error se incluyó una imagen y consideras que se está haciendo un uso indebido de ella, por favor comunícalo, y procederemos a retirarla del documento.
Este documento está (junto el código fuente) en un repositorio de GitHub en:
Son bien recibidos las correcciones y nuevos ejemplos y temas, tanto en código, como en el mismo documento.
El documento es un compendio de los artículos publicados en el blog de autor, https://desdelashorasextras.blogspot.com/, sobre tipos y paradigmas en los diferentes lenguajes de programación.
Enlaces online de este documento
Documento en PDF
Enlaces en el Blog
- Enlace principal
- Paradigmas y tipos de lenguajes informáticos (1 de 3)
Paradigmas y tipos de lenguajes informáticos (2 de 3)
- Paradigmas y tipos de lenguajes informáticos (3 de 3). Programación Imperativa
- Paradigmas y tipos de lenguajes informáticos (3 de 3). Orientación a Objetos
- Paradigmas y tipos de lenguajes informáticos (3 de 3). Programación declarativa
- Paradigmas y tipos de lenguajes informáticos (3 de 3). Programación declarativa en lenguajes empresariales
Codigo fuente de ejemplo
- Código fuente de los ejemplos (y del documento)
- Northwind.sql
ParadigmasTiposLenguajes /Base de Datos/
En la carpeta Base de Datos encontrara el script para crear la base de datos Northwind, es una base de datos de Microsoft que se usa en algunos ejemplos de este documento, puede instalar una versión de SQL Server Express e implementarla allí
A continuación las carpetas donde se encuentra el código fuente ilustrativo de los capítulos:
- Capítulo VII. Combinaciones de lenguajes estáticos/dinámicos y débiles/fuertes
ParadigmasTiposLenguajes / Fuentes /Tipado/
- Capítulo IX. Paradigma Imperativo
ParadigmasTiposLenguajes / Fuentes /Imperativo/
- Capítulo X. Paradigma orientado a objetos
ParadigmasTiposLenguajes / Fuentes / POO
- Capítulo XI. Programación declarativa
ParadigmasTiposLenguajes / Fuentes /Declarativo/
- Capítulo XII. Programación declarativa en lenguajes empresariales
ParadigmasTiposLenguajes / Fuentes /Multiparadigma/
Contenido del documento
- Capítulo I. Paradigmas y tipos de lenguajes informáticos
- Capítulo II. Clasificación según el nivel
- Capítulo III. Clasificación según la generación
- Capítulo IV. Lenguajes interpretados o compilados
- Capítulo V. Lenguajes estáticos y dinámicos
- Capítulo VI. Clasificado según el “Tipado”
- Capítulo VII. Combinaciones de lenguajes estáticos/dinámicos y débiles/fuertes
- Capítulo VIII. Clasificación según el paradigma
- Capítulo IX. Paradigma Imperativo
- Capítulo X. Paradigma orientado a objetos
- Capítulo XI. Programacióndeclarativa
- Capítulo XII. Programacióndeclarativa en lenguajes empresariales
- Anexo I: Mapa
- Anexo I: Codigo fuente de ejemplo
- Anexo II: Enlaces online de este documento
Si te ha gustado la entrada, ¡Compártela! ;-)
Nota: Puedes encontrar todo el código fuente de este artículo en https://github.com/jbautistamartin/ParadigmasTiposLenguajes