TEMAS AVANZADOS DEL LENGUAJE PYTHON
Declaraciones de tipo en Python. Los parámetros args y kwargs. Map, Filter y Reduce. Decoradores en Python. Iteradores. Comprensiones en Python. Expresiones regulares.
ESTRUCTURAS DINÁMICAS DE DATOS
Las estructuras dinámicas de datos. La clase list de Python y las “listas enlazadas”. Listas doblemente enlazadas. Pilas y colas. Árboles binarios. Montículo (heap). Grafos. Gestión avanzada de contenedores en Python. Ejemplos con las librerías Collections, Queue y Heapq. Cierres con estructuras dinámicas de datos. Patrones de diseño útiles con las estructuras dinámicas de datos.
PRINCIPIOS BÁSICOS DE INTERNET Y LA WEB
Redes de ordenadores. Modelo de protocolos TCP/IP. Internet y la Web. Cliente-servidor en comunicaciones de red. Lenguajes de marcado mediante etiquetas. Archivos json. Navegador Web, servidor Web, página Web, aplicación Web. API Web (Servicio Web). Librería requests. API REST. Servicios Web. FullStack.
PROGRAMACIÓN DE GUI PARA APLICACIONES DE ESCRITORIO CON WXPYTHON
Introducción a la interfaz gráfica de usuario (GUI). Librerías para programación de GUI bajo Python. Instalación de wxPython. Aplicación básica con wxPython. Jerarquía básica de clases en wxPython. Controles (widgets). Programación de barras de menús. Diseño de una GUI para generación de etiquetas.
PROGRAMACIÓN DEL FRONTEND DE APLICACIONES WEB EN DASH
Dash. Conceptos básicos. Paneles Web realizados con Dash. Creación de un panel. Instalación de Dash y configuración del entorno de trabajo. Composición de una aplicación Dash basada en el paradigma Fullstack. Estructura de una aplicación Dash típica. Componentes de Dash. Creación de dos páginas enlazadas. Creación de componentes Dash.
BASES DE DATOS
Bases de datos. Arquitectura cliente-servidor en el contexto de bases de datos. Tipos de bases de datos. Bases de datos relacionales. El lenguaje SQL. La base de datos SQLite. PYODBC. MySQL. PostgreSQL. Bases de datos NoSQL. Seguridad. Apéndice I.
PROGRAMACIÓN DEL BACKEND DE APLICACIONES WEB EN FLASK
Introducción a Flask. Aplicaciones Web con Flask. Creación de una aplicación Web básica con Flask. Organización de una aplicación siguiendo el patrón modelo-vista-controlador. Conexión de Flask con bases de datos. Conexión de la base de datos SQLite con Dash. Desarrollo Fullstack. Programación Fullstack: desarrollo frontend en Dash, backend API REST en Flask con base de datos SQLite. El patrón modelo-vista-controlador en el desarrollo de aplicaciones Fullstack. Implementación de mecanismos de seguridad.