Introducción a la Programación y Conceptos Fundamentales
En el proceso de resolución de problemas técnicos, el ser humano ha creado una herramienta increíble: el ordenador. Una persona detecta un problema, lo analiza y, si es posible, obtiene un algoritmo que le permite solucionarlo. El ordenador es una herramienta capaz de llevar adelante esa tarea, siguiendo algoritmos.
Definiciones Clave en Programación
- Programas: Son una secuencia de instrucciones entendibles por los ordenadores que permiten la realización de las acciones o tareas para las que han sido creadas.
- Lenguaje de Programación: Para escribir un programa, se utilizan distintos lenguajes. Un lenguaje de programación es un conjunto de símbolos y palabras (instrucciones y sentencias) que el usuario tiene a su disposición para elaborar un programa.
- Algoritmo: Es una sucesión de pasos que se deben realizar para la resolución de un problema.
- Compilador: Traduce el archivo fuente a código máquina y reporta los posibles errores de sintaxis.
- Ejecución: Una vez compilado un programa, podemos ejecutarlo, lo que implica iniciar la carga del programa para que se empiecen a realizar las acciones programadas.
- Código Fuente: Son las instrucciones que el programador indica que deben ser ejecutadas a fin de realizar las acciones para las que el programa ha sido diseñado.
- Código Objeto: Es el archivo traducido al lenguaje máquina (Lenguaje de máquina o código binario).
Tipos de Lenguajes de Programación
Existen diferentes tipos de lenguajes de programación, clasificados según su nivel de abstracción respecto al hardware:
Lenguaje de Máquina
Es el lenguaje de programación que entiende directamente el ordenador. Este lenguaje utiliza el alfabeto binario, es decir, secuencias de 0 y 1.
Lenguajes de Bajo Nivel
Son mucho más fáciles de utilizar que un lenguaje de máquina, pero dependen en gran medida de la arquitectura específica del ordenador. El Lenguaje Ensamblador fue el primer lenguaje de programación que trató de sustituir el lenguaje máquina por uno mucho más parecido al de los seres humanos.
Lenguajes de Alto Nivel
Estos lenguajes están diseñados para que las instrucciones escritas sean lo más parecidas al lenguaje humano, normalmente en inglés, lo cual reduce significativamente el tiempo necesario para aprender a programar y desarrollar aplicaciones.
Estructura de un Programa Informático
Los programas están constituidos por un conjunto de sentencias que se procesan en una determinada secuencia y conforman órdenes capaces de manipular una serie de datos con el fin de obtener un resultado específico. Las órdenes o instrucciones pueden dividirse en tres grandes secciones, que corresponden a las partes fundamentales de la codificación del programa:
Entrada de Datos
Aquí se engloban todas aquellas instrucciones que recogen datos de un dispositivo de entrada, los cuales se almacenan en la memoria central para su proceso posterior.Proceso o Algoritmo
En esta parte del programa se escriben las instrucciones encargadas de procesar los datos recogidos en la sección anterior, conforme al propósito del programa. Los resultados obtenidos se almacenan nuevamente en la memoria principal.Salida de Datos o Resultados
Este bloque está formado por las instrucciones que toman los resultados obtenidos del proceso anterior y los envían a los dispositivos de salida para su visualización o almacenamiento.Fases del Proceso de Programación
El desarrollo de un programa requiere seguir rigurosamente los siguientes pasos:
- Definición y comprensión del problema.
- Diseño del algoritmo.
- Codificación del programa (obtención del código fuente).
- Compilación (obtención del código objeto).
- Depuración de errores y verificación del programa.
- Explotación (documentación y mantenimiento).
Procedimientos de Depuración
La depuración del programa es la quinta fase del proceso de programación y resulta fundamental a la hora de disminuir costes de implantación, mejorar el rendimiento y garantizar el correcto funcionamiento del software. Los procedimientos de depuración incluyen:
Detección de Errores de Compilación
Se buscan errores existentes en la sintaxis del programa y se corrigen para que el código pueda ser traducido y ejecutado.
Detección de Errores de Funcionamiento (Lógicos)
Aunque el programa no tenga errores de sintaxis, puede no estar realizando la tarea que el programador desea. Se verifica la lógica interna.
Optimización del Programa
Aunque el programa funcione correctamente, siempre se debe buscar una manera más óptima y eficiente de realizar las tareas, mejorando el rendimiento y el uso de recursos.
Algoritmos y Diagramas de Flujo
Un algoritmo es una sucesión de pasos que se deben realizar para la resolución de un problema. El concepto no es exclusivo de la informática, sino que se trata de un método sistemático para la resolución de problemas en general.
Los algoritmos más utilizados en la programación son los Diagramas de Flujo. Estos utilizan símbolos estandarizados que permiten reflejar cada uno de los pasos (generales o específicos) que se deben seguir para el diseño lógico de un programa.
