# data[].attributes.headline
Evolución de los lenguajes de programación

# data[].attributes.subject
Evolución de los lenguajes de programación

# data[].attributes.body
Con las primeras computadoras surgió el primer lenguaje de programación que fue precisamente el lenguaje de máquina, el cual es considerado el lenguaje de primera generación. Las instrucciones en lenguaje de máquina dependían de las características de cada equipo, por lo que dada la dificultad de desarrollar programas en unos y ceros, los investigadores de la época desarrollaron el lenguaje ensamblador, cuyo conjunto de instrucciones consta  de palabras nemotécnicas que corresponden a las operaciones básicas que una computadora puede ejecutar.
Posteriormente, en la década de los 50´s aparecieron los primeros lenguajes de alto nivel, cuyas instrucciones son más parecidas al idioma inglés y, por lo tanto, más fácil de utilizar para los programadores, además de que son independientes de la arquitectura de las computadoras. Algunos ejemplos son: FORTRAN y COBOL (que son los primeros lenguajes que aparecieron y en sus inicios se utilizaron para aplicaciones científicas), C, Pascal, Ada, Lisp y Prolog (utilizados principalmente en inteligencia artificial), Java, C++, C#, entre otros.
(...) junto con ellos se desarrollaron programas traductores, que de acuerdo con la forma en que trabajan se dividen en dos tipos: compiladores e intérpretes.

Compiladores. Traducen todo el programa escrito en un lenguaje de alto nivel, llamado programa o código fuente, generando un nuevo programa objeto que está escrito en lenguaje de máquina y a partir de éste se genera un programa ejecutable, el cual puede ejecutarse cada vez que se desee sin tener que compilar el programa fuente nuevamente. Además, como parte del proceso de traducción el compilador detecta los errores que hay en el código fuente, informándole al programador para que los corrija, pues un programa sólo se compila si no tiene errores. Intérprete. Revisa cada línea de código individualmente, la analiza y enseguida la ejecuta, sin revisar todo el código y sin generar un programa objeto, así que cada vez que se quiere ejecutar el programa se vuelve a traducir el programa fuente línea por línea
Referencias:
UNADM, (2022). Fundamentos de programación. Unidad 1. Preparando el camino hacia la programación, Ciencias Exactas Ingeniería y Tecnología

https://campus.unadmexico.mx/contenidos/DCEIT/Compartidas/FPR/U1/descargables/FPR_U1_Contenido.pdf

# data[].attributes.body
Es una secuencia de instrucciones precisas, para realizar una tarea en específico. Una función está definida por los siguientes elementos:
• Cabecera de la función. Está integrada por un tipo de dato, un nombre de la función y una la lista de parámetros.
• Código de programación. Es único para cada función. Se incluye el valor devuelto por la función. Los aspectos más importantes en el diseño de una función son:
• Tipo de resultado. Se refiere al tipo de dato que devuelve la función.
• Lista de parámetros.
• Cuerpo de una función. Se encierra entre llaves {}.
• Paso de parámetros.
• Declaración de variables de forma local. Dentro de una función pueden declararse variables de distintos tipos, pero estas perduran únicamente dentro la función.
• Valor devuelto por la función.

REFERENCIAS

UNADM, (2022). Fundamentos de programación. Unidad 1. Preparando el camino hacia la programación, Ciencias Exactas Ingeniería y Tecnología

https://campus.unadmexico.mx/contenidos/DCEIT/Compartidas/FPR/U1/descargables/FPR_U1_Contenido.pdf

disenowebakus.net, (2021). Estructura general básica de un Programa en Lenguaje C. Profesor Hugo Delgado

Imagen tomada de internet el día 24/07/2022, de la página:

https://disenowebakus.net/estructura-programa.php

# data[].attributes.body
La Importancia de contar con una metodología radica en la necesidad de sistematizar las acciones a realizar para la resolución del problema propuesto considerando todos los requerimientos, datos y objetivo del programa, es decir, todos los elementos necesarios para desarrollar un programa que dé solución a un requerimiento específico, con ello se reduce la probabilidad de error al momento de ejecutar un programa, y los costos que implica realizar correcciones. 1.2.1. Fases de la metodología de programación Independientemente del paradigma que se elija y del lenguaje que se utilice para programar, existe un conjunto de fases que deben seguirse para realizar un programa de computadora que constituyen una metodología (Levine, 2001):

Planteamiento del problema
En el planteamiento del problema se deben considerar los insumos (datos de entrada) que se necesitan para resolver el problema; los pasos a seguir para su solución y el producto final (datos de salida).
Análisis del problema
Este paso debe conducir a una especificación completa del problema en donde se describa cuáles son los datos requeridos para resolverlo (datos de entrada) y cuál es el resultado deseado (salida).
Diseño del algoritmo
En esta fase se define ¿cómo el programa resuelve el problema? Para ello, se describe paso a paso la solución del mismo, lo cual se conoce como algoritmo.
Existen dos maneras de representar un algoritmo: una gráfica, conocida como diagramas de flujo; y otra, similar a un lenguaje humano, la cual se denomina pseudocódigo. Los diagramas de flujo son una representación totalmente gráfica de un algoritmo que utiliza símbolos para representar las instrucciones y flechas para unirlas e indicar el orden en el que deben ejecutarse llamadas líneas de flujo, lo anterior hace más fácil seguir la secuencia de la ejecución de las instrucciones.
El pseudocódigo es un lenguaje de especificación formal de algoritmos. La solución de un problema se representa de manera narrativa utilizando palabras claves, generalmente verbos, escritos en un lenguaje natural, que en nuestro caso será español.
Implementación (codificación)
El algoritmo no puede ser ejecutado por una computadora, por ello debe traducirse a un lenguaje de programación (como por ejemplo el lenguaje C) para obtener un programa fuente que se traduzca a lenguaje de máquina que pueda ser ejecutado por la computadora.
Validación y pruebas
Esta fase se lleva a cabo una vez que se ha codificado el algoritmo previamente diseñado con el fin de verificar que su ejecución sea correcta. Existen diferentes formas de probar que la solución es correcta, algunas de ellas son formales y otras informales: las primeras se utilizan para garantizar que el programa o algoritmo siempre calcule el resultado deseado para cualquier conjunto de datos de entrada; en cambio, en las segundas sólo se prueba que funciona correctamente para algunos datos de entrada, tratando de encontrar posibles errores, en este caso no se puede garantizar que el programa o algoritmo calcule la salida correcta para cualquier conjunto de datos. En cualquiera de los dos casos, si se encuentra alguna falla se debe corregir y volver a realizar pruebas.
Documentación
Cualquier proyecto de software por la complejidad que tiene requiere que tanto las ideas principales como el desarrollo de principio a fin sea documentado con el fin de que se pueda entender la lógica del programa y de ser necesario se pueda modificar o darle mantenimiento posteriormente, sin tantas complicaciones.
Mantenimiento
Esta fase tiene sentido una vez que fue terminada y liberada una primera versión del programa, misma que ya está siendo utilizada. En esta fase se actualiza y modifica dicho programa para corregir errores no detectados o para cambiar y/o agregar una nueva función.
La metodología de programación sirve para desarrollar software desde el inicio con su diseño hasta el final con su implementación, de ahí la importancia de entender las diferentes fases y las actividades involucradas en cada una de ellas, con el fin de dar una solución óptima al problema en cuestión.

REFERENCIAS
UNADM, (2022). Fundamentos de programación. Unidad 1. Preparando el camino hacia la programación, Ciencias Exactas Ingeniería y Tecnología

https://campus.unadmexico.mx/contenidos/DCEIT/Compartidas/FPR/U1/descargables/FPR_U1_Contenido.pdf

Universidad de Burgos Online, (2022). Metodología de la Programación - Grado en Ingeniería Informática

Video tomado de internet el día 24/07/2022, de la página:

https://youtu.be/P6sUcOzUhYY

# data[].attributes.attachment_link.title
Metodologia de la Programación - Grado en Ingeniería Informática

# data[].attributes.body
El lenguaje de programación sirve para escribir código orientado a resolver algún problema o necesidad. Cada lenguaje de programación se define a partir de un conjunto de símbolos básicos, llamado alfabeto; un conjunto de reglas, llamado sintaxis, que definen la forma de manipularlos o combinarlos para representar instrucciones; y las reglas que especifican los efectos de dichas instrucciones cuando son ejecutadas por la computadora, conocidas como semántica.

REFERENCIAS:
UNADM, (2022). Fundamentos de programación. Unidad 1. Preparando el camino hacia la programación, Ciencias Exactas Ingeniería y Tecnología

https://campus.unadmexico.mx/contenidos/DCEIT/Compartidas/FPR/U1/descargables/FPR_U1_Contenido.pdf

GCFAprendeLibre, Qué son los lenguajes de programación y para qué sirven | Computación y programación

Video tomado de internet el día 24/07/2022, de la página:

https://youtu.be/pWw4UtQhdek

# data[].attributes.attachment_link.title
Qué son los lenguajes de programación y para qué sirven | Computación y programación

# data[].attributes.body
Un paradigma “es un conjunto explícitamente determinado de conceptos y proposiciones usadas para dirigir investigación dentro de un campo determinado” (Cedano, Et al, 2014, p. 165).
Un lenguaje de programación siempre sigue un paradigma de programación, aunque también podemos encontrar lenguajes con la influencia de dos paradigmas, tal es el caso del lenguaje C, que surgió bajo el paradigma procedimental y se transformó al paradigma orientado a objetos, de tal manera que puede soportar ambos paradigmas

REFERENCIAS:
UNADM, (2022). Fundamentos de programación. Unidad 1. Preparando el camino hacia la programación, Ciencias Exactas Ingeniería y Tecnología

https://campus.unadmexico.mx/contenidos/DCEIT/Compartidas/FPR/U1/descargables/FPR_U1_Contenido.pdf
Platzi, (2022). Qué es la programación Orientada a Objetos: Curso de programación

Video tomado de internet el día 24/07/2022, de la página:

https://youtu.be/Mi_sRAfs7TE

# data[].attributes.attachment_link.title
Qué es la programación Orientada a Objetos: Curso de programación