Visão Geral
Curso API and API Design With Python. Aprenda a projetar, construir e interagir com APIs usando Python.
As interfaces de programação de aplicativos (APIs) tornaram-se cada vez mais importantes, pois fornecem aos desenvolvedores conectividade para tudo, desde conjuntos de dados ricos em uma variedade de formatos (como JSON) até a exposição da configurabilidade de aplicativos de software e dispositivos de rede. As aulas e laboratórios se concentram no uso do Python para interagir, projetar e construir APIs com o propósito de criar scripts de soluções automatizadas para tarefas complexas. A aula é uma combinação de demonstrações ao vivo e laboratórios práticos.
Objetivo
Após realizar este Curso API and API Design With Python você será capaz de:
- Scripts Python do lado do cliente para APIs RESTful (e não RESTful)
- Projete interfaces de API RESTful com Flask Web Framework
- Visão geral do Django
- Implante seus aplicativos web Python como contêineres Docker
- Abra sessões SSH e passe comandos para servidores remotos
- Mover arquivos via SFTP
- Analise e manipule estruturas de dados populares (JSON, CSV, Excel e YAML) como dataframes do pandas
- Técnicas de melhores práticas
Publico Alvo
- Administradores de sistema
- Engenheiros de rede
- Desenvolvedores de software
- Entusiastas de Python
Pre-Requisitos
- Familiaridade básica com qualquer linguagem de programação ou script
- A experiência de codificação em outro idioma serve como um pré-requisito adequado
Materiais
Inglês/Português/Lab Prático
Conteúdo Programatico
Python Review
- Version Control with Git
- Lists
- Dictionaries
- Conditionals (if, elif, else)
- Loops (for and when)
- Functions
- Classes and Methods
- Using pip
Working with Data - JSON, YAML, CSV and Excel
- JSON RFC 7159
- JSON Formatting
- YAML intro
- YAML Formatting
- Python Libraries for decoding JSON, YAML and CSV
- Reading and Writing to Excel
- Dataframes and pandas
SSH Communication and SFTP
- Python and SSH
- Building an SFTP Client & Server
- Python and SFTP limitations
- Paramiko for SSH
- Netmiko and Major Network Vendors (Cisco, Juniper, Arista)
Web and RESTful APIs
- Creating an HTTP Client & Server with Python
- Introduction to REST
- RESTful API on Etcd keystore (Kubernetes distributed DB)
- Creating a Python client to interact with API endpoints
- API dev keys
- Secure password retrieval
- Tokens and APIs
- OAuth v2.0
API Design Practices
- RESTful Architecture
- Stubbing code with Swagger
- Describing Resource functionality (GET, POST, PUT, DELETE, etc.)
- Collections, resources, and URLs
- Using nouns, not verbs
- Understanding HTTP status codes
- Returning data
Building APIs with Flask
- Flask Overview
- Decorators
- Building APIs with Python and Flask
- APIs returning Jinja2 templating
- Returning a ‘cookie’
- Building Sessions
- Redirecting from URIs
- Build an API to accept a file upload
- Overview of Django
Deploying APIs
- Docker containers
- Docker build
- Constructing Docker images
- Dockerfile
- Deploying a Flask App on Docker
- Automating build processes
Database Integration
- Overview
- Connecting to Python
- Read / Write operations
- Other useful instructions
- Connecting APIs and SQLite
- Python and PostgreSQL
- Python and MongoDB
- Reading and Writing to Databases with APIs
Processes and Threads
- Threading
- Context change
- Deadlock errors
- Thread starvation
- Racing conditions and racing specifics
- Working with Locks
TENHO INTERESSE