Formación : Python, avanzado

Python, avanzado




El lenguaje Python se ha convertido en la base tecnológica para el desarrollo de grandes proyectos de software. En este curso aprenderás las técnicas avanzadas del lenguaje Python y sus principales bibliotecas, para que puedas cumplir los requisitos de calidad de estos proyectos.


ABIERTA
IN-COMPANY
A MEDIDA

Formación en tus instalaciones, en nuestro centro o a distancia

Ref. PYA
  4d - 28h
Duración, formato, fechas y lugar: ¡Tú decides, nosotros nos encargamos de organizarlo!

Descargar en formato pdf

Compartir este curso por correo electrónico




El lenguaje Python se ha convertido en la base tecnológica para el desarrollo de grandes proyectos de software. En este curso aprenderás las técnicas avanzadas del lenguaje Python y sus principales bibliotecas, para que puedas cumplir los requisitos de calidad de estos proyectos.


Objetivos pedagógicos
Una vez finalizada la formación, el participante podrá:
Aplicación rigurosa de patrones de diseño reconocidos
Utilizar las técnicas avanzadas del lenguaje Python: gestor de contexto, metaclases, cierres, funciones avanzadas
Optimice el rendimiento de sus programas mediante la supervisión y el paralelismo
Empaquetado y despliegue de artefactos Python
Utilizar bibliotecas que contribuyan al éxito del lenguaje: computación científica, Inteligencia Artificial, XML, redes, etc.

Público afectado
Ingenieros y desarrolladores.

Requisitos previos
Buenos conocimientos de desarrollo en Python, o conocimientos equivalentes a los adquiridos en el curso PYT. Experiencia requerida.

Modalidades prácticas
Métodos pedagógicos
Aportación teórica ilustrada mediante ejemplos de código, luego consolidada mediante la realización de un miniproyecto (70% de trabajo práctico).

Programa de la formación

1
Recordatorios importantes sobre el lenguaje

  • Asignación por referencia y tipos de datos modificables y no modificables (mutables).
  • Pasar argumentos, valores por defecto y variables locales.
  • Variables de clase y de instancia.
  • Rebanadas y estructuras de datos avanzadas.
  • Introspección.
  • Elementos avanzados de las estructuras de control: la cláusula else en las sentencias for, while y try/except.
Trabajo práctico
Optimización: intersección de listas y cálculo de la complejidad del algoritmo.

2
Funciones avanzadas

  • Uso avanzado de decoradores (de generación a consumo, pipeline de consumo).
  • Decoradores y patrones de diseño.
  • Cierre.
Trabajo práctico
Encadenamiento de consumidores de datos. Suscripción a eventos mediante decoradores.

3
Programación avanzada orientada a objetos

  • Propiedades.
  • Iteradores.
  • El patrimonio múltiple y sus deficiencias.
  • Gestores de contexto.
  • Clases y métodos abstractos (ABC).
  • Metaclases.
Trabajo práctico
Implementa una metaclase para crear clases singleton.

4
Despliegue y calidad

  • Instalación de bibliotecas de terceros (pip, easy_install).
  • El índice de paquetes de Python (PyPI).
  • Empaquetando tus librerías (distutils, setuptools).
  • Despliegue de un entorno autónomo (virtualenv y buildout).
Trabajo práctico
Empaqueta una biblioteca y súbela a PypI.

5
Paralelismo: optimice el rendimiento de sus programas

  • Perfile sus programas con Timeit y cProfile.
  • Paralelización: evite el multithreading y apueste por el multiprocesamiento.
  • Cálculo distribuido con la biblioteca Celery.
Trabajo práctico
Distribución y consolidación (Map Reduce) de cálculos con Celery.

6
Bibliotecas que contribuyen al éxito de la lengua

  • Computación científica y estadística con Numpy, Scipy, Matplotlib y Pandas.
  • Inteligencia artificial y algoritmos de aprendizaje con Scikit-Learn.
  • Búsqueda de información en archivos XML con ElementTree.
  • Red: tcp relay con Twisted y supervisión SNMP con PySNMP.
Trabajo práctico
Extracción de información de archivos de registro XML, filtros y estadísticas de los datos recogidos y, a continuación, representación gráfica de las tendencias de la información.


Fechas y lugares
Selecciona tu ubicación u opta por la clase remota y luego elige tu fecha.
Clase a distancia