Programación avanzada con Python para el desarrollo de software

ÁREA: LENGUAJES DE PROGRAMACIÓN

PRESENTACIÓN

Python es un lenguaje de programación ampliamente utilizado en aplicaciones web, el desarrollo de software, la ciencia de datos y el aprendizaje automático (Machine Learning). Es eficiente, fácil de aprender y puede ejecutarse en una variedad de plataformas. Una gran ventaja es que Python es de acceso libre y gratuito, además de que se integra bien con todo tipo de sistemas, lo que acelera el desarrollo de aplicaciones. Asimismo, Python se puede integrar con otros lenguajes de programación populares como Java y C++. La comunidad activa de Python está compuesta por millones de desarrolladores colaboradores de todo el mundo. Esto hace posible la obtención de soporte rápido si se tiene algún problema.

OBJETIVO

El participante aplicará Python en el diseño y la implementación de sistemas, tomando las consideraciones de esta para la operación, desarrollo web, puesta a punto, repositorios e infraestructura básica en el desarrollo de software.

BENEFICIOS

Adquirir conocimientos y desarrollar habilidades para escribir código eficiente, escalable y mantenible, utilizando herramientas y tecnologías esenciales en el desarrollo de software. Asimismo, colaborar en equipos de desarrollo y gestionar proyectos desde la planeación hasta la implementación en un entorno profesional.

DIRIGIDO A:

Este curso está dirigido a las personas interesadas en el lenguaje de programación Python para el desarrollo de productos, servicios o automatizaciones, de manera local o en la nube. Se requiere haber acreditado o demostrar conocimientos equivalentes al curso Lenguaje de programación PYTHON.

CONTENIDO

1. REPASO DE PYTHON
1.1 Variables
1.2 Tipos de datos
1.3 Operadores aritméticos
1.4 Cadenas de caracteres
1.5 Listas, tuplas y diccionarios
1.6 Entrada y salida de datos
1.7 Funciones, librerías y principios de abstracción
1.7.1 Funciones
 
1.7.1.1 Definición de funciones
1.7.1.2 Llamado de funciones
1.7.1.3 Funciones recursivas
1.7.1.4 Funciones de la librería estándar de Python
1.7.2 Módulos, paquetes y programas
 
1.7.2.1 Creación de módulos
1.7.2.2 Importación de módulos
1.7.2.3 Namespaces
1.8 Programación orientada a objetos
1.8.1 Clases, propiedades y métodos
1.8.2 Objetos, herencia, herencia múltiple y polimorfismo
1.8.3 Acceso a los metódos y propiedades de un objeto
2. PROGRAMACIÓN FUNCIONAL
2.1 Principios de la programación funcional
2.2 Modularidad
2.3 Debuggeo
3. DISEÑO DE SISTEMAS Y PATRONES DE DISEÑO
3.1 Tipos de patrones de diseño
3.2 Usos de los patrones de diseño
3.3 Arquitectura de un sistema
4. HERRAMIENTAS Y TOOLING DE COMMAND LINE USANDO PYTHON
4.1 Introducción a la interfaz de línea de comandos
4.2 Administradores de paquetes
5. DESARROLLO WEB, BACKEND USANDO FLASK
5.1 Las API
5.2 Métodos HTTPS y Status Codes
5.3 Introducción a Flask
5.4 Páginas web con plantillas HTML
6. INTRODUCCIÓN AL TESTING
6.1 Pytest
6.2 Mejores prácticas para pruebas
7. PUESTA A PUNTO, REPOSITORIOS, CI-CD E INFRAESTRUCTURA BÁSICA
7.1 Github y Gitflow
7.2 Contenedores y máquinas virtuales
7.3 Docker
7.4 Sistemas de CI-CD
7.5 Travis
7.6 Elementos de un sistema en producción
7.7 infraestructura de las aplicaciones web
7.8 AWS

DURACIÓN

30 hrs.

MODALIDAD

A distancia

FORMA DE TRABAJO

    - El curso y la interacción grupal se llevarán a cabo mediante sesiones síncronas a través de una herramienta de videoconferencia, en el horario y el periodo programados.
    - Las temáticas serán expuestas a través de presentaciones y diversos medios.
    - Se dispondrá de materiales y actividades diseñadas especialmente para el curso.
    - Las sesiones no serán grabadas, por lo que el usuario que no participe en alguna es responsable de ponerse al corriente a través de los contenidos dispuestos para tal fin.

EVALUACIÓN

    - La calificación mínima aprobatoria es de 8.0.
    - Se requiere el 80% de asistencia.
    - Los elementos de evaluación serán indicados por el instructor.

RECURSOS INFORMÁTICOS NECESARIOS

    - Cuenta de correo electrónico.
    - Conexión a Internet.

HARDWARE:

    - Procesador Intel Core I3 o superior.
    - Memoria RAM de 4GB como mínimo recomendable.
    - Disco duro con espacio libre de 20 Gb.
    - Pantalla con una resolución de 1024x768 o superior.
    - Micrófono.
    - Cámara.
    - Bocinas o diadema.

SOFTWARE:

    - Microsoft Windows 8 o superior.
    - Pip 19.3.1.
    - Python 3.7 (32 bits).
    - PyCharm Community Edition 2019.1.4.
    - Pandas 1.0.3.
    - Numpy 1.15.2.
    - Un navegador (Chrome, Microsoft Edge, Mozilla Firefox, etcétera). Es recomendable utilizar las versiones más actuales.
    - Adobe Acrobat Reader u otro software libre para abrir los archivos PDF.
    - Aplicación Zoom, la cual se puede descargar de: https://zoom.us/support/download

Octubre 2023

101618/E