Skip to main content

Instalación y primeros pasos

Objetivos

  • Instalar Python

  • Familiarizarse con el entorno de desarrollo

  • Aprender las primeras órdenes y estructuras

Reflexión inicial

Antes de nada, debes mirar bien esta imagen:

http://conectablog.blogspot.com/2010/08/humor-usuarios-e-informaticos.html

Si no quieres que tus alumnos tengan esa imagen de ti ni tú de ellos, es necesario que siempre les hables en un idioma que, no sólo entiendan sino que puedan contrastar, les pueda interesar... El riesgo de caer en dos mundos paralelos es alto cuando estamos hablando de algo tan especializado o donde se pueden perder fácilmente.

En este curso, las cuestiones especializadas las explico con lenguaje más elevado pero siempre las "traduzco" a algo más comprensible. Algo que recomiendo encarecidamente a quien lo vaya a hacer en un aula. 

Cuestiones Didácticas

Para enseñar un lenguaje de programación se recomienda seguir una metodología donde, poco a poco, se vayan introduciendo problemas que no se puedan resolver con el conocimiento actual. Una vez que el alumno es consciente de que le falta algo, se le explica la nueva estructura sin hacer referencia a ningún problema en concreto para que sea él quien investigue cómo aplicarla a su caso particular. Con eso conseguimos los siguientes objetivos:

  • El alumno ve que hay algo que le falta y está mucho más atento a lo que se le presenta.
  • Le queda mucho más clara la razón de ser de esa estructura nueva y es capaz de asociarla a una funcionalidad concreta.
  • Va familiarizándose con los algoritmos y, antes de presentarla, ya ha pensado qué paso del algoritmo debe realizar.
  • Le queda mucho más clara la razón de ser de esa estructura nueva y es capaz de asociarla a una funcionalidad concreta.

    Por otra parte, es recomendable que los alumnos manejen unos pocos programas a los que se les vayan añadiendo funciones y no realizar muchos distintos. Con esto conseguimos que los alumnos:

  • No tengan que buscar un archivo en medio de una carpeta llena de ellos para ver cómo solucionaron un determinado problema, repasar una estructura determinada o encontrar una orden en concreto.
  • Repasen con la vista las estructuras del programa cada vez que lo abran para añadirle elementos, eso es importante como repaso.
  • Repasen con la vista las estructuras del programa cada vez que lo abran para añadirle elementos, eso es importante como repaso.

    Es necesario saber leer un programa. Es decir, poder llevar en papel el control de las variables y de la salida por pantalla. Es muy útil a la hora de buscar errores o elegir el valor de ciertas variables. Para trabajar este aspecto podemos realizarlo de dos maneras:

  • Cuando tengan algún problema porque lo mostrado en pantalla no es lo que habían pensado, decirles que “ejecuten” ellos el programa para ver dónde se han equivocado.
  • Plantear directamente un programa para ejecutar
  • Plantear directamente un programa para ejecutar

    Como es natural, el mandarles esta tarea debe ir acompañado de la explicación de los objetivos buscados con esta actividad:

  • Mejorar la comprensión de las estructuras del lenguaje.
  • Reducir el tiempo de detección de fallos.
  • Reducir el tiempo de detección de fallos.

    A lo largo de este curso se va a seguir esta metodología. Es tuya la decisión de usarla en un futuro.

    Algoritmos

    ¿Qué es un algoritmo?

    Esta pregunta en una clase genera varios problemas, los alumnos no suelen saber qué significa.

    Modo avanzado: Un algoritmo es el conjunto de pasos necesarios que, realizados en el orden marcado por el mismo, nos conducirán a la solución del problema.

    Modo terrestre: Un algoritmo es una especie de “receta” que nos dice qué debemos hacer y cuándo para realizar algo. Por ejemplo: El algoritmo de freír un huevo sería: “poner aceite en una sartén, calentar el aceite hasta que hierva, cascar el huevo con cuidado, abrir la cáscara encima de la sartén a una altura adecuada, esperar que se fría y sacarlo con una rasera”. 

    Programar no es sino hacer algoritmos que, posteriormente, se traducen a lenguaje de programación. Es tan importante conocer las órdenes como saber dónde ubicarlas, y quien decide esto último es el algoritmo. 

    Si se ve la configuración del curso, hay una cantidad de programas que van ilustrando temas del lenguaje y todos tienen la misma configuración:

    • Descripción del problema
    • Materia nueva
    • Algoritmo
    • Solución
    • Explicación
    • Comentarios

    Te recomiendo encarecidamente que, una vez leída la descripción y la materia nueva, te esfuerces en obtener el algoritmo y que, una vez obtenido, pases a trabajar con el ordenador y le busques solución; sólo una vez resuelto, o intentado, puedes mirarla. Sin el paso del algoritmo, nadie puede programar y te puedes hacer una idea de la importancia de controlar esto si te digo que hay cursos enteros que sólo se dedican a los algoritmos (puedes buscarlo en internet y verás la oferta que hay). Con ese conocimiento, el traducirlo a uno u otro lenguaje es algo inmediato. 

    El trabajo del alumno en este curso no se puede controlar de la misma forma que en una clase presencial, es necesario que te tomes tu tiempo para trabajar cada programa. No tiene sentido copiar los programas inmediatamente y ver que funcionan, han sido probados y, aunque pudiera haber alguna mejora, lo hacen.

    Al igual que yo lo tuve que hacer en su día, ahora es tu momento de pensar y diseñar algoritmos. No hay otra forma de aprender: El conocimiento y la destreza no admiten atajos al pensamiento y a la práctica.   

    Instalación

    Instalación: Es necesario descargarse el programa de la página web:

    www.python.org/downloads

    Como se puede ver, hay varias versiones con la misma fecha de actualización. Elegid la 3.5.

    Una vez descargado ya tenemos todo disponible para desarrollar.

    Presentamos los componentes:

    El primero es el que usaremos en este curso



    IDLE es el editor de Python por defecto. Podríamos utilizar muchos otros pero es simple y no hay que instalar nada más. Perfecto para comenzar.

    Python 3.5 es el intérprete… ¡Un segundo! ¿Intérprete? Sí, es el programa que ejecutará las órdenes que le escribamos. Esto tiene sus ventajas e inconvenientes, como veremos a continuación.

    El tercero se refiere a manuales. Es importante leerlos si quieres profundizar más de lo que lo hace este curso. Como es comprensible, en 20 horas se puede dar únicamente una visión del lenguaje y resolver unos cuantos ejercicios simples. Controlar este lenguaje supone años de programación continuada.

    El cuarto se refiere a documentos de módulos. En este curso no veremos lo que son por falta de tiempo pero son necesarios porque amplían las posibilidades del lenguaje. Todo lo que son operaciones matemáticas complejas, conexión a internet... vienen por esta vía.

    Explicación avanzada:

    Existen dos tipos de lenguajes: Los que se interpretan y los que se compilan. Sus diferencias se ven en esta tabla:

    |Característica|Interpretados|Compilados| |--|--|--| |Resultado|Programa tipo "texto"|Archivo ejecutable, .exe ...| |Privacidad del código|Escasa|Elevada| |Multiplataforma|Sí|No. Sólo funcionará en la plataforma donde se haya compilado| |Velocidad de ejecución|Baja |Alta|



    Python es un lenguaje interpretado con un motor muy potente que hace que su velocidad de ejecución sea muy alta y hay varios proyectos para hacer tanto archivos .exe como aplicaciones para Android .apk, el primero funciona bastante bien, el segundo está empezando. 

    Salimos de la explicación avanzada: Los alumnos rara vez conocen estos problemas y, por tanto, no prestan atención a esto. Convendría dejarles unas pocas ideas claras. Éstas serían:

    • Para ejecutar el programa en cualquier ordenador tienen que instalarle Python antes. La ventaja que tienen es que, si lo instalan en un Mac, un móvil, una tablet... también pueden ejecutarlo allí. Es decir, sus programas funcionarán en cualquier sistema.

    • No obstante, este lenguaje puede, usando ciertas herramientas, producir aplicaciones para móvil o PC. Lo que sucede es que no es inmediato.

    Presentación del sistema de desarrollo

    Presentación del sistema de desarrollo:

    Basta con entrar en IDLE, del que hemos hablado antes:

    Ésta es la pantalla del intérprete, donde se ejecutarán los programas que hagamos. El salto a las pantallas a las que todos estamos acostumbrados con botones... queda fuera del alcance de este curso, no por dificultad sino por tiempo.

    Al ir a File -> New File se abre el editor de texto, que tiene esta pinta:

    La ventaja que tiene es que, a partir de esta pantalla, podemos probar nuestro programa fácilmente con Run Module y, al tener un contador de filas, nos dirá dónde hemos cometido los errores, si los hay.