Código: 73118 | Asignatura: Programación avanzada en Python | ||||
Créditos: 3 | Tipo: Obligatoria | Curso: 1 | Periodo: 1º S | ||
Departamento: Automática y Computación | |||||
Profesorado: | |||||
BUSTINCE SOLA, NICANOR HUMBERTO (Resp) [Tutorías ] | LOPEZ MOLINA, CARLOS [Tutorías ] |
Lenguaje Python: Objetivos y características. Comparación con otros lenguajes.
Implementación de programas estructurados en Python: Gestión de variables. Estructuras alternativas e iterativas. Funciones y procedimientos en Python.
Gestión de información en Python: Uso de tipos complejos predefinidos. Declaración y estructuración de clases. Lectura, modificación y creación de ficheros.
Programación orientada a objetos. Lectura y escritura de ficheros. Gestión automática de información geográfica.
Las competencias que los estudiantes desarrollarán en esta asignatura son:
CG2. Tener la autonomía suficiente para organizar y planificar un proyecto profesional, de investigación o de desarrollo tecnológico en el ámbito de los SIG y la teledetección.
CB6. Poseer y comprender conocimientos que aporten una base u oportunidad de ser originales en el desarrollo y/o aplicación de ideas, a menudo en un contexto de investigación.
CB7. Que los estudiantes sepan aplicar los conocimientos adquiridos y su capacidad de resolución de problemas en entornos nuevos o poco conocidos dentro de contextos más amplios (o multidisciplinares) relacionados con su área de estudio;
Las competencias que los estudiantes desarrollarán en esta asignatura son:
CE4. Diseñar, programar y utilizar de forma eficiente los algoritmos, tipos y estructuras de datos más adecuados a la resolución de problemas de análisis espacial.
Al terminar con éxito esta asignatura, los estudiantes serán capaces de:
RA1. Explicar conceptos avanzados de programación orientada a objetos, incluyendo tipos complejos y jerarquías de clases.
RA2. Desarrollar aplicaciones y scripts en lenguaje Python.
RA3. Diseñar e implementar un sistema básico de gestión de información estructurada a través de ficheros y objetos representables.
Metodología - Actividad
|
Horas Presenciales
|
Horas no presenciales
|
A-1 Clases expositivas/participativas
|
14
|
|
A-2 Prácticas
|
14
|
|
A-3 Actividades de aprendizaje cooperativo |
|
5
|
A-4 Realización de proyectos individuales o en grupo |
|
12 |
A-5 Estudio y trabajo autónomo del estudiante |
|
25
|
A-6 Tutorías |
|
3
|
A-7 Pruebas de evaluación |
2
|
|
|
||
|
|
|
Total
|
30
|
45
|
Sistema de evaluación | Resultados de Aprendizaje | Peso (%) |
E-1 Pruebas de duración corta | RA1 | 10 |
E-2 Pruebas de respuesta larga | RA2, RA3 | 50 |
E-3 Presentaciones orales | RA1 | 20 |
E-4 Trabajos e informes | RA2,RA3 | 20 |
Tema 1.- Entorno de programación Python
Fundamentos de lenguaje compilado e interpretado;
Instalación y Configuración de una máquina interprete de Python;
Características del entorno de programación Python.
Tema 2.- Programas básicos en Python
Ejecución de código en Python;
Gestión de variables en Python;
Estructuras alternativas en Python;
Estructuras iterativas en Python.
Tema 3.- Descomposición de programas en Python
Principios de divide y vencerás;
Programación de funciones en Python;
Gestión de memoria en funciones de Python.
Tema 4. Tipos de datos definidos
Tipos avanzados de datos;
Estructuración de información;
Declaración de variables estructuradas;
Programación orientada a objetos;
Definición de clases;
Nociones básicas de diseño de clases.
Tema 5.- Encapsulación y distribución de código
Concepto de módulo;
Creación de módulos;
Creación de documentación;
Distribución y preparación de código.
Acceda a la bibliografía que el profesorado de la asignatura ha solicitado a la Biblioteca.
Bibliografía Básica:
Recurso On-line; The Python Language Reference (Official) https://docs.python.org/3.5/reference/;
J. Cannon, Python Programming for Beginners: An Introduction to the Python Computer Language and Computer Programming; CreateSpace Independent Publishing Platform (2014);
G. Witt, Writing Effective Business Rules; Morgan Kaufmann (2012).
Bibliografía Complementaria:
A. Sweigart, Automate the Boring Stuff with Python: Practical Programming for Total Beginners; No Starch Press (2015);
Recurso On-line; Curso Python (Codecadamy) http://www.codecademy.com/?locale_code=es;
R. Backhouse, Algorithmic Problem Solving; Wiley (2011).