Presentación y licencias

Presentación

Me llamo Bartolomé Sintes Marco. Soy profesor de Informática en el Instituto de Educación Secundaria Abastos de Valencia (España).

Durante el curso 2016/17 voy a dedicar parte del segundo y tercer trimestre del curso (unas 30 horas de clase) a enseñar rudimentos de programación con el lenguaje de programación Python a alumnos del módulo Lenguaje de Marcas y Sistemas de Gestión de la Información de 1º curso del ciclo formativo de grado superior Administración de Sistemas Informáticos en Red.

Este curso está orientado a alumnos sin conocimientos previos de programación. He separado las lecciones, en las que se explican los conceptos básicos de programación y cómo se aplican en Python, de los ejercicios correspondientes. La mayoría de ejercicios propuestos son clásicos y aparecen en cualquier curso de programación.

Los ordenadores que están utilizando los alumnos tienen instalado Windows 7, por lo que he utilizado la versión para Windows de Python.

Este curso está preparado para la versión 3.6 de Python. Este curso se podría seguir utilizando versiones anteriores de Python 3, pero se recomienda utilizar Python 3.6. No se recomienda utilizar Python 2, ya que los cambios en el lenguaje hacen que muchas explicaciones no sean válidas y las soluciones de los ejercicios no funcionen.

Licencias

Este curso se distribuye bajo la licencia Creative Commons Reconocimiento-CompartirIgual 4.0 Internacional (CC BY-SA 4.0). Esta licencia está disponible en Internet en versión resumida (en español) y en versión completa (en inglés).

Los programas incluidos en este curso se distribuyen bajo la licencia GNU Affero General Public License 3 o posterior.

¿Qué es Python?

Nota: Esta descripción de Python es una traducción libre de los primeros párrafos del tutorial de Python 3.

Python es un lenguaje de programación potente y fácil de aprender. Posee eficientes estructuras de datos de alto nivel y un enfoque sencillo pero efectivo de la programación orientada a objetos. La sintaxis elegante, los tipos de datos dinámicos y el hecho de ser un lenguaje interpretado hacen de Python un lenguaje ideal para la creación de scripts y el desarrollo rápido de aplicaciones en todo tipo de áreas y plataformas.

El intérprete de Python y la biblioteca estándar están disponibles en forma de código fuente o código ejecutable para los principales sistemas operativos en el sitio web oficial de Python, https://www.python.org/, y puede distribuirse libremente. Ese sitio web también contiene información sobre muchos módulos, programas y herramientas para Python, así como documentación adicional.

El intérprete de Python puede ampliarse fácilmente con nuevas funciones y tipos de datos implementados en C o C++ (u otros lenguajes accesibles desde C). Python es también adecuado como lenguage de extensión de aplicaciones.

Comentarios sobre el formato utilizado en este curso

Las páginas de este curso son accesibles desde la página principal de los apuntes.

Aclaraciones

Estos apuntes está dirigidos a alumnos del ciclo formativo Administración de Sistemas Informáticos en Red, es decir, alumnos que seguramente no van a trabajar de programadores, pero que en sus funciones como Administradores de Sistemas necesitarán automatizar tareas y por tanto recurrir a herramientas y conceptos de programación. Sin embargo, el currículo actual del ciclo formativo no incluye ningún módulo dedicado expresamente a la programación, aunque varios módulos sí incluyen contenidos relacionados con la programación. Estos apuntes pretenden cubrir esa laguna, introduciendo los conceptos que luego se aplicarán en los módulos de Bases de datos, Administración de Sistemas Operativos o Aplicaciones web. Creo que es más adecuado empezar con las ideas generales y luego particularizarlas a varios dominios, que tratar las particularidades y esperar que los alumnos construyan con las piezas sueltas las ideas generales.

En suma, estos apuntes no pretenden ser un curso de Python, sino de programación en general. Por eso no se insiste en las particularidades de Python, sino en los aspectos comunes a muchos lenguajes de programación o de script que los alumnos encontrarán en el futuro (especialmente PHP, que es el lenguaje que les enseño en segundo curso). Los entusiastas de Python echarán de menos esos aspectos fundamentales que hacen que Python destaque frente a otros lenguajes, pero espero que entiendan mis motivos.

En cualquier caso, estos apuntes no son una obra terminada y sé que me faltan años de trabajo para pretender haber alcanzado mi objetivo. Como tantas veces se ha dicho, I charge you to like as much of this play as please you.