Git Product home page Git Product logo

python-web-api's Introduction

Python Web e Api

https://cursodepython.com.br

Python focado no desenvolvimento de backend para web e APIs usando os principais frameworks do mercado como Django, Flask e FastAPI, neste treinamento criaremos um mesmo projeto cobrindo as principais necessidades do mercado web e usando os 3 principais frameworks.


Conteudo:

Grade sujeita a pequenas alterações como inclusão de tópicos e mudançá de ordem.

Day 1 - Introdução a web e HTTP

Uma introdução para quem já tem noções de programação (ex: Já fez o treinamento Python BASE) e irá iniciar pela primeira no ambiente web, nesta parte falaremos sobre os conceitos primários da web como introdução aos principais protocolos e tecnologias e o funcionamento do modelo cliente-servidor.

  1. HTML e CSS
  2. Os principais componentes da arquitetura web client-server
  3. O protocolo HTTP
  4. Server Side Rendering
  5. URLs e formulários com HTML puro e CGI
  6. Processando requests com a lib WSGI embutida no Python
  7. Renderizando templates HTML com Jinja2
  8. O que é uma API e o que é REST?
  9. Criando um mini framework

Day 2 - Conhecendo os frameworks web

Criar web apps com Python puro é divertido mas para melhor produtividade e padronização é sempre bom usar um framework bem estabelecido no mercado de tecnologia, nesta parte vamos conhecer os 3 principais e fazer um pequeno aplicativo em cada um deles.

  1. Motivos para usar e diferentes tipos de frameworks
  2. Criando um aplicativo simples usando os 3 principais frameworks
    • a. Flask / FastAPI / Django
      • a. Roteamento de URLS e views
      • b. Processamento de requests
      • c. Sessions e Cookies
      • d. Templates HTML
      • e. Adicionando bancos de dados SQL
      • f. Plugins e ferramentas administrativas
      • g. API Rest com JSON
  3. Dicas para escolher o melhor framework para o seu projeto

Day 3 - Colocando a app para rodar (a.k.a deploy)

Nesta parte vamos colocar uma das aplicações que desenvolvemos em produção usando as principais stacks de tecnologia.

  1. Os protocolos web do Python - WSGI e ASGI 00 12 factors
  2. Os principais app servers para Python - gunicorn, uvicorn, uwsgi
  3. Configuração do proxy reverso - NGinx
  4. Serviços e configuração para Deploy em VM e VPS
  5. Containerizando uma aplicação Python
  6. Rodando a app no Kuberneters

Day 4 - Criando um projeto completo com o FastAPI

Entre os 3 frameworks principais do Python o que tem se mostrado mais eficiente em termos de escalabilidade e modernização é o FastAPI e como ele segue a mesma filosofia do Flask iremos utilizar ele para desenvolver o nosso projeto do treinamento.

  1. Diferenças entre Sync e Async
  2. Estruturando uma aplicação com FastAPI
  3. Python moderno e o sistema de anotação de tipos
  4. Banco de Dados e gestão de migrations
  5. Preparando o projeto para testes e configurando o CI
  6. O que é Injeção de Dependencias
  7. Entendendo o fluxo de uma aplicação FastAPI/Starlete
  8. Roteamento de URLS
  9. Processamento de requests
  10. Middlewares

Day 5 - Segurança e Autenticação

Nesta parte falaremos sobre login e dicas de segurança para a aplicação.

  1. Tipos de autenticação
  2. Criptografia de credenciais
  3. JWT e tokens
  4. SSO e Oauth
  5. Dicas de segurança no processando de requests
  6. Monitoramento

Day 6 - Site, Admin e templates

Vamos focar em um site tradicional com páginas html, templates e interface administrativa.

  1. Responses com renderização de templates
  2. Formulários HTML
  3. Servindo arquivos estáticos
  4. Streaming e Download
  5. Upload de arquivos
  6. Usando plugins para administração via web
  7. Usando plugins para administração via cli

Day 7 - REST API

Nesta parte vamos falar em detalhes sobre APIs e REST.

  1. URLs e modelagem RESTful
  2. Serializers
  3. OpenAPI spec
  4. Ferramentas para teste de API
  5. Implementando autenticação
  6. Performance de APIs

Day 8 - Outros protocolos e serviços

  1. Tasking System - Processamento em background
  2. Protocolo web sockets
  3. Serverless web applications

python-web-api's People

Contributors

rochacbruno avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.