Entrar

Projeto: Criando um Blog Interativo com Python

Programação em Python

Original Teachy

Python para Web: Roteamento, Templates e Formulários

Introdução a Python para Web: Roteamento, Templates e Formulários

Python no Mundo Web - Um Panorama

Python é uma linguagem de programação de alto nível, interpretada, com semântica dinâmica e multiparadigma que valoriza o código limpo e a fácil leitura. No cenário web, ela torna-se ainda mais proeminente devido à sua extensibilidade e grande variedade de frameworks de apoio. Para nos aventurar no desenvolvimento web com Python, existem alguns pilares que devem ser compreendidos: o roteamento, a criação de templates e o trabalho com formulários.

O roteamento em Python é uma das características mais essenciais para o desenvolvimento de qualquer aplicativo web. Ele determina como um aplicativo responde a um pedido do cliente para um endereço de URL específico. A compreensão de como os mapeamentos de URL são utilizados para criar rotas em um aplicativo web é fundamental para qualquer desenvolvedor.

Os templates, por sua vez, simplificam a reutilização do código de layout e garantem que tenhamos um design consistente em todo o site. Eles leem o código HTML e incorporam o conteúdo dinâmico, permitindo a construção dinâmica de páginas HTML.

Já os formulários estão em praticamente todos os sites e aplicações web. Eles são uma maneira importante de obter informações da interação do usuário, seja para um cadastro, feedback ou busca. Aprender a trabalhar com eles significa garantir que você possa interagir de forma efetiva com seus usuários.

A Relevância Desta Habilidade no Mundo Real

Na indústria de desenvolvimento web de hoje, o conhecimento de Python, juntamente com a capacidade de trabalhar com roteamento, templates e formulários, é uma habilidade muito procurada. Observamos cada vez mais que aplicações web complexas estão sendo desenvolvidas usando Python, graças à sua simplicidade e eficiência.

Seja no desenvolvimento de um sistema interno de uma empresa, um site de e-commerce, um blog ou até mesmo uma rede social, essas habilidades são essenciais. Python e seu vasto ecossistema proporcionam os meios para que a criação de tudo isso seja possível e escalável.

Com este projeto, pretendemos não apenas introduzir estes conceitos, mas dar a você a chance de colocar a mão na massa, entender melhor cada aspecto e prepará-lo para enfrentar desafios reais no desenvolvimento web com Python.

Material Complementar

  1. [Flask Web Development with Python Tutorial] Um tutorial completo para começar a desenvolver aplicações web com o Flask, um dos frameworks de Python mais populares.
  2. [Django for Beginners] Para aqueles que têm interesse no Django, outro popular framework de Python, este é um excelente ponto de partida.
  3. [Python Web Applications: Deploy Your Script as a Flask App] Esse artigo não apenas guia você para transformar seu script Python em uma aplicação Flask, mas também cobre o deployment da aplicação.

Atividade Prática

Criando um Blog Interativo com Python

Objetivo do Projeto

Os alunos irão construir um blog interativo simples utilizando Python. Primeiramente, focaremos na estrutura do roteamento e na criação de templates dinâmicos para renderizar as visualizações do blog. Em seguida, adicionaremos uma funcionalidade de formulários onde os usuários podem deixar comentários nas postagens do blog.

Materiais Necessários

  1. Acesso a um ambiente de desenvolvimento Python
  2. Conexão com a Internet
  3. Conhecimento básico de Python, HTML e CSS

Descrição detalhada do Projeto

Nosso blog será uma aplicação web Flask, um microframework de Python extremamente eficiente quando o objetivo é construir uma aplicação simples e robusta. O blog contará com uma página inicial que exibe todas as postagens e uma página dedicada para cada postagem onde os usuários podem ler o conteúdo completa e, também, deixar os seus comentários.

Passo a Passo detalhado

  1. Configurar o ambiente de trabalho: certifique-se de ter o Python e Flask instalados em seu ambiente de desenvolvimento. Crie uma nova pasta para o projeto do blog.

  2. Organizar as pastas: Crie as pastas 'templates' e 'static'. A pasta 'templates' será usada para armazenar seus HTMLs, enquanto na 'static', ficarão seus CSS e JS.

  3. Configurar o Roteamento: Utilizando o Flask, crie o arquivo 'app.py'. Defina as rotas para as páginas do blog. Teremos no mínimo três: ('/') para a home, ('/postagens/int:postagem_id') para as postagens e ('/sobre') para uma página 'sobre o blog'. Leve em consideração que na rota das postagens, há uma variável para o id da postagem.

  4. Criação de Templates: Agora, vamos ao HTML. Na pasta 'templates', crie um arquivo 'base.html' que deve conter toda a estrutura base do HTML de seu blog (Navbar, Footer, etc). Crie também os HTML para cada página de seu blog. No HTML das postagens, reserve um espaço para inserir os comentários que eventualmente os usuários deixarem.

  5. Integração do Python com o HTML: Com a base do blog pronta, precisamos fazer o Python e o HTML 'se conversarem'.

    5.1. Na rota da Home, crie uma variável que será uma lista contendo todas as postagens do blog (no momento, pode-se usar postagens dummy).

    5.2. Ao renderizar a página (com o comando render_template('nome_do_html.html', variavel=variavel)), passe essa variável como parâmetro.

    5.3. No HTML, você deve percorrer essa lista e exibir os dados em sua página. Utilize a linguagem Jinja (nativa do Flask) para isso.

  6. Trabalhando com Formulários: Na página de cada postagem, deve existir um formulário para os usuários deixarem seus comentários. Trabalhe no HTML e CSS desse formulário (com o 'method' sendo POST) e no Python para receber as informações inputadas no mesmo.

  7. Enfim, garanta que tudo está funcionando como esperado. Teste as rotas, tente deixar um comentário e se certifique que seus dados dummy estão sendo exibidos corretamente na home.

Entregas do Projeto e Documento Escrito

Sua entrega final deverá ser:

  • Um repositório Github com todo o código do blog.

  • Um link para o seu blog hospedado em algum servidor gratuito (Heroku, pythonanywhere, etc.).

  • Um relatório documentando o seu trabalho. Este deve incluir:

    Introdução

    Contextualização do tema e por que ele é relevante no mundo atual. Deve conter o objetivo do projeto.

    Desenvolvimento

    Uma explicação detalhada da teoria por trás dos principais temas (roteamento, templates e formulários) e como esses elementos foram implementados em seu trabalho. Explicação das principais partes do código e os desafios enfrentados.

    Conclusões

    Descrição dos principais aprendizados, conclusões e realizações alcançadas durante a implementação do projeto.

    Bibliografia

    Cite todas as bibliografias usadas durante a implementação do projeto como livros, sites, vídeos, entre outros.

Finalize seu documento escrito de acordo com o projeto que você executou. Lembre-se, ele deve complementar seu código, explicando as etapas importantes que foram realizadas para alcançar o resultado final.

O relatório deve ser entregue em um arquivo PDF juntamente com links para o repositório Github e para a aplicação hospedada.

Comentários mais recentes
Nenhum comentário ainda. Seja o primeiro a comentar!
Iara Tip

DICA DA IARA

Precisa de materiais para apresentar o tema do projeto em sala?

Na plataforma da Teachy você encontra uma série de materiais prontos sobre esse tema! Jogos, slides, atividades, vídeos, planos de aula e muito mais...

Quem viu esse projeto também gostou de...

Community img

Faça parte de uma comunidade de professores direto no seu WhatsApp

Conecte-se com outros professores, receba e compartilhe materiais, dicas, treinamentos, e muito mais!

Teachy logo

Reinventamos a vida dos professores com inteligência artificial

Instagram LogoLinkedIn LogoTwitter LogoYoutube Logo
BR flagUS flagES flagIN flagID flagPH flagVN flagID flagID flag
FR flagMY flagur flagja flagko flagde flagbn flagID flagID flagID flag

2023 - Todos os direitos reservados

Termos de usoAviso de PrivacidadeAviso de Cookies