Diagrama de temas

  • Programación en Python (2020)

     

     

    Profesores

    Michael González Harbour
    José Javier Gutiérrez García
    José Carlos Palencia Gutiérrez
    José Ignacio Espeso Martínez
    Adolfo Garandal Martín

    Departamento de Ingeniería Informática y Electrónica


     

     

     

     


    La asignatura trata de que alumnos sin experiencia previa en la programación de computadores sean capaces de diseñar y escribir aplicaciones sencillas en el lenguaje de programación Python. Para ello será importante ser capaz de diseñar algoritmos sencillos y usar estructuras de datos básicas. La asignatura se orienta hacia una visión orientada a objetos de las aplicaciones informáticas y el lenguaje Python. Este lenguaje es uno de los más más populares actualmente.


    Palabras Clave de la Asignatura

    Programación, Python, Lenguajes de programación, Programación orientada a objetos, Informática.

  • Programa


    Datos identificativos de la Asignatura

    • Asignatura: Programación

    • Código: G40 / G47

    • Departamento / Área: Departamento de Ingeniería Informática y Electrónica

    • Título: Grado en Física / Grado en Matemáticas

    • Centro: Facultad de Ciencias

    • Créditos ECTS: 6

    • Idioma de impartición: Español

    • Profesores: Michael Gonzáez Harbour / José Javier Gutiérrez García / José Carlos Palencia Gutiérrez / José Igancio Espeso Martínez / Adolfo Garandal Martín



    Programa de la asignatura

     

     

    1. Introducción a los lenguajes de programación

    Lenguajes de programación. Compiladores e intérpretes. El lenguaje Python. El ciclo de vida del software. Concepto de algoritmo. Encapsulamiento de datos y algoritmos. Estructura de un programa. Funciones. Estilo de codificación.


    2. Datos y expresiones

    Números. Operaciones y expresiones. Variables. Booleanos. Strings. Uso de funciones matemáticas. Variables y paso de parámetros. Listas y tuplas.


    3. Clases

    Concepto de clase y objeto. Definición de clases. Creación y uso de objetos. Atributos y métodos de instancia y de clase. Espacios de nombres. Módulos y paquetes.


    4. Estructuras algorítmicas

    Instrucción condicional. Instrucción condicional múltiple. Instrucciones de bucle. Recursión. Descripción de algoritmos mediante pseudocódigo.


    5. Estructuras de datos

    Tablas. Algoritmos de recorrido. Algoritmos de búsqueda. Conjuntos. Tablas multidimensionales. El paquete NumPy. Diccionarios. Tipos enumerados.


    6. Tratamiento de errores

    Excepciones. Tratamiento de excepciones. Patrones de tratamiento de excepciones. Lanzar Excepciones. Usar nuestras propias excepciones. Acciones de limpieza.

    7. Entrada/salida

    Escritura de texto con formato. Lectura de números con formato. Ficheros. Lectura de ficheros de texto. Escritura de ficheros de texto.

     

    8. Herencia y polimorfismo

    Jerarquía de clases. Herencia. Clases abstractas. Polimorfismo.

     

    Apéndice A: uso de un entorno integrado de desarrollo de programas

    Entorno de desarrollo de programas spyder. Gestión de proyectos. Analizar, cargar y ejecutar el programa. La depuración. Generación de documentos

     

    Apéndice B: Paquete fundamentos

    Lectura de datos desde una ventana. Escritura de resultados en una ventana. Mensaje de texto sencillo en una ventana. Menú que presenta botones en una ventana. Dibujo, para mostrar dibujos e imágenes en una ventana.