Visão Geral
Aprenda a desenvolver scripts Python que lidam com exceções, fazem interface com o sistema operacional, se comunicam com APIs RESTful e não RESTful.
As APIs (Application Programming Interfaces) tornaram-se cada vez mais importantes, pois fornecem aos desenvolvedores conectividade a tudo, desde ricos conjuntos de dados em uma variedade de formatos (como JSON) até expondo a configurabilidade de aplicativos de software e dispositivos de rede. As lições e os laboratórios concentram-se no uso do Python para interagir, projetar e criar APIs com o objetivo de criar scripts de soluções automatizadas para tarefas complexas. As aulas são principalmente demonstrações ao vivo e laboratórios práticos.
Objetivo
- Este Curso APIs and API Design with Python tem como premissa básica, levar os alunos além da impressão/ visão de desenvolvimento ('olá mundo' 'hello world' ).
- Os alunos vão aprender na pratica a trabalhar seu potencial para desenvolver scripts Python que lidam com exceções, fazem interface com o sistema operacional, se comunicam com APIs RESTful (e não RESTful), compreendem e escrevem scripts complexos com vários threads e aprendem a trabalhar com bibliotecas, como NAPALM, para automatizar L2 e Dispositivos de rede L3 em uma ampla variedade de fornecedores (Juniper, Cisco, Arista, para citar alguns).
- Outras habilidades que os alunos aprenderão incluem; analisando estruturas de dados (como XML, YAML e JSON), escrevendo e criando expressões regulares altamente eficientes, práticas recomendadas e revisão de código e interagindo com IMAP (email).
Objetivo de Aprendizado:
Após realizar este curso você será capaz de:
- Desenvolva scripts Python que se comuniquem com APIs RESTful (e não RESTful), bem como projete as próprias interfaces de API RESTful.
- Use o Python para abrir sessões SSH e passar comandos para servidores remotos, mover arquivos via SFTP, analisar e manipular estruturas de dados populares (JSON, XML, CSV e YAML), lidar com erros, interagir com o sistema operacional, criar expressões regulares altamente eficientes para técnicas de análise e melhores práticas.
Publico Alvo
Os administradores de sistema, engenheiros de rede e desenvolvedores acharão este curso atraente à medida que criam e interagem APIs que não apenas retornam conjuntos de dados altamente analisáveis, mas também acionam ações com script. Alguma experiência anterior com Python é ideal, embora a experiência de codificação em outra linguagem também seja suficiente para encontrar sucesso neste curso.
Pre-Requisitos
Para que o aluno obtenha o máximo de aproveitamento deste curso, será de suma portância que o aluno tenha um breve conhecimento em alguma linguagem de programação tais como:
- Princípios básicos em Python
- Princípios básicos em Java
- Princípios básicos em html
Informações Gerais
- Carga horaria, 40h
- Se noturno o
curso acontece de segunda a quinta das 19h às 23h, total de 10 noites.
- Se aos
sábados o curso acontece de 09h às 18h, total de 5 sábados.
- Se in-company
o curso acontece de acordo com as disponibilidades do cliente
Formato
de entrega:
- Presencial
em sala de aula na presença de um instrutor/consultor SAP ABAP SAP PI SAP PO, SAP CPI
Expert em Kafka, expert em desenvolvimento de API´s Integração,
- ON-LINE ao
vivo em tempo real com a mesma qualidade do curso presencial, por se tratar de
um curso 100% acompanhado de um instrutor/consultor SAP ABAP SAP PI SAP PO, SAP CPI Expert em Kafka, expert em desenvolvimento de API´s Integração,
Instrutores:
- Ambos os
instrutores são profissionais extremamente capacitado, atuando no dia-dia como
consultor SAP especialista em process integration, tais como SAP PI, SAP PO, SAP CPI, Kafka, Mulesoft, além de toda vasta
experiência ambos são docente em sala de aula.
Materiais
Português/Inglês
Conteúdo Programatico
Python Review
- Lists
- Dictionaries
- Tuples
- Conditionals (if, elif, else)
- Loops (for and when)
- Functions
- Variable Scope - Review
- Converting boiler plate code to functional code
- Writing Functions (reusable code)
- Using pip
- Useful 3rd party modules
- Publishing a module
- Documenting modules
OS Interfacing
- Operating System interfacing with OS module
- OS module - listdir(), getcwd(), mkdir()
- Common sys Module Attributes & Methods
- Working With the os Module & Files/Directories
- Walking File Trees with os.walk()
- File, Path and Directory Examples
- Working with os.path
- os & os.path Module Examples
- Environmental Variables
- Running Shell Commands
- Compressing and archiving (gzip, tar, zip)
Web and RESTful APIs
- REST
- REST APIS and HTTP CRUD
- REST and OpenStack
- URI analysis and formation
- Wireshark capturing
- cURL
- Etcd keystore
- Creating a Python client to interact with API endpoints
- API dev keys
- SSH and Python
- Secure password retrieval
- Tokens and APIs
Python Protocol Clients
- Scripting the browser
- Scripting with HTTP
- Creating an HTTP Client & Server
- Python and SSH
- Building an SFTP Client & Server
- Python and SFTP limitations
- Paramiko for SSH
- Netmiko and Major Network Vendors (Cisco, Juniper, Arista)
JSON, YAML, XML, CSV and Excel
- JSON RFC 7159
- JSON Formatting
- YAML intro
- YAML lists
- YAML dictionaries
- YAML line spanning
- Reading YAML is easy
- XML
- CSV
- Import json
- Import yaml
- Decoding json and yaml to use
- Using python to decode data structures like YAML, XML, CSV, and JSON
- Reading from Excel
- Writing to Excel
Generating and Sending Emails
- Overview of email modules
- Creating simple emails
- Interfacing with your email account
Dates and Times
- Python and Cron
- Import time and time.time()
- Suspending with sleep()
- Dealing with time
- Time formatting
- Time tuples
- Creating Calendars
Python Regular Expression (Regex)
Metacharacter review
Re modules
- search() and match()
- findall()
- Compiling regex search patterns
- Creating highly efficient searches
- Sorting data sets
- Complex sorts
- sort() vs sorted()
- Sorting with functions
- Applying Regex to file searches
- Applying Regex to API results
Code Review
- Best practice
- Using pylint
- Conventions
- Underscore
- Double underscore
- Monkey Patching
Web API Design 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
SQLlite
- Overview
- Connecting to Python
- Read / Write operations
- Other useful instructions
- Connecting APIs and SQLite
- 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