Diferencia entre revisiones de «Programación»

De MateWiki
Saltar a: navegación, buscar
(Entornos de programación)
Línea 8: Línea 8:
  
 
Los programas, además de con personas, interactúan con otros programas. Por ejemplo, un navegador web se comunica con un servidor web, que es un programa que se ejecuta en otro ordenador.
 
Los programas, además de con personas, interactúan con otros programas. Por ejemplo, un navegador web se comunica con un servidor web, que es un programa que se ejecuta en otro ordenador.
 +
 +
Escribir un programa consiste en escribir una lista de instrucciones que el ordenador ejecutará, una tras otra.
  
 
== Cómo se escribe un programa ==
 
== Cómo se escribe un programa ==
Línea 33: Línea 35:
 
Un '''intérprete''' es un programa que lee el código fuente escrito en un lenguaje de alto nivel, y lo ejecuta línea a línea, directamente. Es decir, no genera ningún programa nuevo escrito en lenguaje máquina. Por este motivo, es necesario usar el intérprete cada vez que queramos ejecutar el programa de alto nivel. A pesar de esta desventaja respecto a los compiladores, es más fácil depurar y revisar la ejecución de un programa con un intérprete que con un compilador.
 
Un '''intérprete''' es un programa que lee el código fuente escrito en un lenguaje de alto nivel, y lo ejecuta línea a línea, directamente. Es decir, no genera ningún programa nuevo escrito en lenguaje máquina. Por este motivo, es necesario usar el intérprete cada vez que queramos ejecutar el programa de alto nivel. A pesar de esta desventaja respecto a los compiladores, es más fácil depurar y revisar la ejecución de un programa con un intérprete que con un compilador.
  
 +
== Estructura de un programa ==
 +
 +
Aunque existen muchas metodologías de programación, la mayoría de programas los podemos dividir en tres partes:
 +
 +
* Entrada de datos
 +
* Algoritmo
 +
* Salida de datos
 +
 +
Si intentamos estructurar nuestros programas de esta manera, será más sencillo escribirlos.
  
 
[[Categoría:Informática]]
 
[[Categoría:Informática]]

Revisión del 22:19 11 may 2013

La Programación se refiere a la actividad de escribir programas que son ejecutados por ordenadores. El programa se escribe en un lenguaje de programación, que el ordenador interpreta o compila. Para escribir un programa, además de conocer el lenguaje de programación, es necesario diseñar, pensar y planificar bien el problema que se va a resolver. Los programas se conocen también por el nombre software. Ambos términos son sinónimos.

1 Qué es un programa

El ordenador no es capaz de funcionar sin programas. Un ordenador típico está formado por componentes electrónicos, organizados en una cierta arquitectura. Por ejemplo, los ordenadores más habituales hoy en día tienen un procesador (CPU), una memoria RAM (que es volátil, se pierde al apagar el ordenador), una unidad de almacenamiento permanente (normalmente, un disco duro) y otros dispositivos. El procesador y la memoria se comunican para intercambiarse valores y resultados de operaciones. Las operaciones ocurren en el procesador, y sus resultados se guardan en la memoria.

Este proceso de comunicaciòn entre el procesador y la memoria (y muchos otros que ocurren en el ordenador) los realiza un programa que se denomina sistema operativo. Por ejemplo, Windows es un sistema operativo. Es decir, siempre que usamos un ordenador estamos haciéndolo a través de un programa. El ordenador por sí solo, sin software, no puede hacer nada.

Existen otros tipos de programas que usamos de manera más consciente. Por ejemplo, procesadores de textos, navegadores web, programas de mensajería, correo electrónico.

Los programas, además de con personas, interactúan con otros programas. Por ejemplo, un navegador web se comunica con un servidor web, que es un programa que se ejecuta en otro ordenador.

Escribir un programa consiste en escribir una lista de instrucciones que el ordenador ejecutará, una tras otra.

2 Cómo se escribe un programa

Los programas se escriben en un lenguaje de programación. Existe una infinidad de lenguajes de programación. Algunos lenguajes son de propósito general, y otros son más adecuados para tareas especializadas (desarrollo de aplicaciones en la web, en el escritorio, en un móvil, cálculo científico).

El ordenador es capaz de entender un lenguaje denominado lenguaje máquina o lenguaje ensamblador. En los primeros tiempos de la Informática, los programadores escribían código directamente en este lenguaje máquina. Este tipo de lenguajes eran muy complejos de usar por parte de los programadores, pero muy sencillo de ejecutar por parte del ordenador. Por este motivo, los programas escritos en lenguaje máquina se suelen ejecutar con rapidez y sin requerir muchos recursos.

Conforme la tecnología de los ordenadores fue avanzando, también cambiaron los lenguajes de programación. Se crearon lenguajes de alto nivel. Un lenguaje de alto nivel es más fácil de entender por parte de los programadores, pero requiere ser traducido a lenguaje máquina para poder ser ejecutado por el ordenador. Por este motivo, los programas escritos en lenguajes de alto nivel suelen ser más lentos que los programas escritos en lenguajes de alto nivel. Aunque el tiempo de desarrollo requerido para escribir programas en lenguajes de alto nivel es mucho menor. La siguiente tabla muestra un resumen de ventajas e inconvenientes de los lenguajes de alto y bajo nivel:

Lenguajes de alto nivel Lenguajes de bajo nivel
Ventajas Fáciles de entender y usar por los programadores. Tiempo de desarrollo corto. Fáciles de ejecutar por el ordenador. Tiempo de ejecución rápido.
Inconvenientes Requieren traducción a un lenguaje de bajo nivel. Tiempo de ejecución lento. Difíciles de entender por los programadores. Provoca problemas de mantenimiento de software. Tiempo de desarrollo largo.

En la práctica se suelen emplear mucho más los lenguajes de alto nivel. Pero esto requiere usar un programa que haga de traductor a lenguaje máquina. Existen dos clases de estos programas traductores:

  • Compiladores
  • Intérpretes

Un compilador es un programa que toma el código fuente escrito en un lenguaje de alto nivel, y lo transforma en un archivo escrito en lenguaje de bajo nivel, que es ejecutable directamente por el sistema operativo. Una vez generado el programa por parte del compilador, ya no se necesita usar el compilador cada vez que se quiera ejecutar el programa, se puede ejecutar directamente. Ésta es la principal ventaja de los compiladores.

Un intérprete es un programa que lee el código fuente escrito en un lenguaje de alto nivel, y lo ejecuta línea a línea, directamente. Es decir, no genera ningún programa nuevo escrito en lenguaje máquina. Por este motivo, es necesario usar el intérprete cada vez que queramos ejecutar el programa de alto nivel. A pesar de esta desventaja respecto a los compiladores, es más fácil depurar y revisar la ejecución de un programa con un intérprete que con un compilador.

3 Estructura de un programa

Aunque existen muchas metodologías de programación, la mayoría de programas los podemos dividir en tres partes:

  • Entrada de datos
  • Algoritmo
  • Salida de datos

Si intentamos estructurar nuestros programas de esta manera, será más sencillo escribirlos.