Introducción a la programación en Python

clase 01a
Conceptos previos

Una computadora es un dispositivo capaz de almacenar y procesar información.

En las computadores digitales modernas:

  • toda la información se representa como datos numéricos (1, 0)
  • todo el procesamiento de la información se realiza como operaciones matemáticas y lógicas sobre los números que la representa

Los datos residen en la memoria de la computadora, o en unidades de almacenamiento (disco duro).

La unidad que realiza el procesamiento es el procesador central (CPU).

Para realizar un procesamiento de la información es necesario un programa: una secuencia de instrucciones precisas que le dice al procesador central qué operaciones hacer para obtener el procesamiento deseado.

Las instrucciones que se dan al procesador son de muy bajo nivel: leer y escribir datos en la memoria, y hacer operaciones simples binarias con los números.
Cada tipo de procesador tiene su propio conjunto de instrucciones (lenguaje de máquina).

Programar directamente las instrucciones al procesador es ineficiente:

  • es extremadamente engorroso
  • solo sirve para procesadores con ese lenguaje de máquina

Para programar se utiliza un lenguaje de programación:

  • se escribe la secuencia de instrucciones en un lenguaje de más alto nivel en un archivo de texto (código fuente)
  • el lenguaje traduce esas instrucciones a lenguaje de máquina para que ejecute el procesador (código objeto o código ejecutable)

Los lenguajes de programación son más estrictos que los lenguajes naturales, no tienen redundancia ni pueden tener ambigüedad.
La sintaxis de un lenguaje de programación es el conjunto de reglas que define qué combinaciones de símbolos del lenguaje conforman expresiones y sentencias correctamente formadas.

Según cómo se genera el código de máquina, hay dos grandes tipo de lenguaje de programación:

  • compilado: el lenguaje compila el código fuente (texto), creando un archivo ejecutable con el código de máquina
  • interpretado: el lenguaje interpreta el código directamente en el momento de ejecución, traduciéndolo a código de máquina

Python es un lenguaje interpretado.

ventajas

  • al no tener que compilar, es más ágil el ciclo de escribir escribir código, evaluar el resultado y volver a editar el código
  • un mismo programa (fuente) se puede ejecutar en cualquier sistema que tenga un intérprete de Python

desventajas

  • la velocidad de ejecución es menor que la de un programa compilado