Modalidad: A Distancia
150
6 ECTS
Modalidad Abierta
Si eres desarrollador/a o deseas orientar tu carrera profesional en esa dirección, es fundamental tener conocimientos de Python. Es el lenguaje de programación que ha ganado mayor popularidad en los últimos tiempos, gracias a su simplicidad, flexibilidad, amplia variedad de bibliotecas disponibles y aplicaciones. Grandes empresas como Google y YouTube utilizan Python como sus principales lenguajes de programación, lo que indica claramente la importancia de dominarlo.
El programa de formación de SEAS está especialmente diseñado para que te conviertas en un experto en Python:
Comprenderás su estructura para crear programas simples.
Emplearás técnicas, estructuras y ciclos para tomar decisiones y controlar los flujos de ejecución.
Aprenderás a desglosar problemas en partes más pequeñas para resolverlos de manera más efectiva.
Analizarás y desarrollarás módulos y paquetes para organizar el código de forma eficiente.
Entenderás cómo leer y escribir datos en archivos.
Conocerás la funcionalidad de los principales módulos de Python para crear y representar funciones.
Adquirirás habilidades para gestionar las estructuras de datos adecuadas.
Aunque el curso tiene una duración de solo 150 horas, está tan bien planificado, actualizado y guiado que al finalizarlo, tendrás la capacidad de desarrollar videojuegos, producciones audiovisuales en 3D, aplicaciones web y de escritorio. También podrás especializarte en Big Data, Business Intelligence y probar diferentes softwares.
Al completar el curso, recibirás un certificado universitario de 6 créditos europeos ECTS otorgado por la Universidad de San Jorge. Además, tendrás la oportunidad de realizar prácticas en empresas y formar parte de manera permanente de una bolsa de trabajo administrada por SEAS.
PRIMEROS CONCEPTOS
Primeros conceptos. Hitos principales en la informática. Programación. Características del lenguaje Python. Realización de programas en lenguajes imperativos. Programas fuente y objeto. Bytecode. Vocabulario y representación. Declaración de constantes. Operación de asignación. Composición secuencial de instrucciones. La salida estándar en Python. Comentarios. Palabras reservadas en Python. Modos de trabajo en Python.
TIPOS DE DATOS
Clasificación de los tipos de datos. Tipos inmutables. Tipos de datos mutables. Asignación externa.
ESTRUCTURAS DE CONTROL
Sentencias condicionales. Composición iterativa. Otras composiciones iterativas. La visibilidad de las variables y las estructuras de control. Aplicación de las estructuras de control a los tipos de datos compuestos. Programa ejemplo. Cuestiones. Algoritmo de fuerza bruta. Escritura de scripts.
PROCEDIMIENTOS, FUNCIONES Y DISEÑO DESCENDENTE
Escritura de procedimientos. Llamadas a procedimiento. Clases de parámetros. Búsqueda secuencial. Funciones. Ámbito de los objetos informáticos. Ventajas de la localidad. Generación de números aleatorios. Anidamiento de ámbitos. Efectos colaterales. Recursividad. Captura y tratamiento de excepciones. Lanzamiento de una excepción. Diseño descendente.
MÓDULOS Y PAQUETES
Los módulos en Python. Conceptos elementales. Ámbito de los módulos. Importaciones. Realización de un módulo para generar números aleatorios. Pautas para la agrupación modular. La librería estándar de Python. Paquetes (packages).
LIBRERÍAS DE USO COMÚN EN PYTHON
Configuración para la importación de módulos. NUMPY. Matplotlib. Pandas.
FICHEROS
El sistema de directorios. Creación de un fichero de texto usando PyCharm. Escritura y lectura de datos en ficheros de texto. Uso de pandas en ficheros de texto. Ficheros CSV. Ficheros zip. Formato binario.
PROGRAMACIÓN ORIENTADA A OBJETOS
Introducción a la programación orientada a objetos. Características de la programación orientada a objetos. La poo en python. Clases y objetos en python. Métodos. Inicialización de objetos. Otros métodos de clase. Ámbito de nombres, de clases y de objetos. Clases y métodos no públicos. Métodos y atributos estáticos.
HERENCIA
Conceptos básicos. Notación UML. Redefinición de métodos. La herencia y la creación. Llamadas atrás. Sobrecarga de métodos. Polimorfismo. Ejemplo. Clases y características diferidas. Métodos vacíos. Herencia múltiple. Ejercicio. Serialización y persistencia.