Giter Club home page Giter Club 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

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  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.