Contextualização
A propulsão digital está mudando a maneira como as empresas operam e se comunicam. Com isso, uma ampla gama de tarefas rotineiras tem sido automatizada, aumentando a eficiência das operações, reduzindo erros e claro, economizando tempo. Nesse mundo digital, Python tem se mostrado uma ferramenta poderosa e flexível para automação. Portanto, fornecerá a você, estudantes, skills que são bastante demandados no mercado de trabalho.
No contexto organizacional, uma série de tarefas podem ser automatizadas, incluindo geração de relatórios automatizados, envio de e-mails personalizados, automação de tarefas no sistema operacional, manipulação de arquivos e pastas, integração com APIs e serviços da web e manipulação de dados. Devido à sua sintaxe clear e simples, bem como a um extenso ecossistema de bibliotecas, Python é comumente a primeira escolha quando se trata de automação.
Introdução Teórica
Python é uma linguagem de alto nível, de propósito geral que é fácil de aprender e usar graças à sua sintaxe limpa e clara. Além disso, é open-source e tem uma comunidade ativa que contribui para sua vasta seleção de bibliotecas e frameworks. Python é usado em várias aplicações, incluindo desenvolvimento web, ciência de dados, aprendizado de máquina, computação científica, processamento de texto e imagens, automação e scripting.
Quando falamos de automação com Python, estamos nos referindo ao uso da linguagem para criar scripts e aplicações que realizam tarefas que seriam tediosas e demoradas se realizadas manualmente. Essas tarefas podem abranger desde manipulação de arquivos e agendas, extração e análise de dados de páginas da web a até automação de ações e respostas em serviços web.
A integração com outros sistemas e serviços é uma parte fundamental da automação. Algumas ferramentas e serviços oferecem APIs (Interfaces de Programação de Aplicações) que permitem que os scripts Python interajam com eles diretamente. Aprender como se comunicar efetivamente com estas APIs é uma skill fundamental para trabalhar com automação.
Materiais Extras
Para se aprofundar nesse tema, recomendo a leitura do livro "Automate the Boring Stuff with Python" de Al Sweigart. Além disso, o curso online gratuito "Automating Real-World Tasks with Python" oferecido pela Universidade de Michigan no Coursera é uma ótima maneira de aprender através da prática. Estes materiais ajudarão a expandir seus conhecimentos além do que será coberto neste projeto e lhe proporcionarão uma boa base para se tornar um especialista em automação com Python.
Atividade Prática
Desenvolvimento do Assistente de Tarefas Automatizadas
Objetivo do Projeto
O objetivo deste projeto é desenvolver um Assistente de Tarefas Automatizadas em Python que irá interagir com diferentes APIs e serviços da web para realizar uma série de tarefas. Este projeto permitirá aos alunos aprofundar e aplicar seus conhecimentos sobre a linguagem Python, automatização e integração de serviços, ao mesmo tempo que melhora habilidades socioemocionais como trabalho em equipe e gestão de tempo.
O projeto será realizado por grupos de 3 a 5 alunos, com um tempo total de execução aproximado de 5 a 10 horas por aluno e um prazo de entrega de um mês.
Materiais Necessários
Os únicos materiais necessários para este projeto são um computador e uma conexão com a Internet. Recomenda-se que os alunos usem um ambiente virtual Python para isolar as dependências do projeto. Eles podem usar qualquer editor de texto ou IDE de sua escolha.
Descrição Detalhada do Projeto
Cada grupo será responsável por desenvolver um Assistente de Tarefas Automatizadas que pode realizar as seguintes tarefas via interação com diferentes APIs e serviços:
- Buscar a previsão do tempo para uma determinada cidade.
- Rastrear um pacote com código de rastreio.
- Criar um evento no Google Calendar.
- Pesquisar e exibir as últimas notícias sobre um determinado tema.
Passo a passo detalhado para a realização da atividade
- Divisão das tarefas entre os membros do grupo.
- Pesquisa e aprendizado sobre as APIs/ serviços web relevantes para cada tarefa.
- Definir um plano de implementação para cada tarefa.
- Codificar o módulo específico para cada tarefa em Python, assegurando correta integração com as APIs e serviços web relevantes.
- Testar individualmente cada módulo.
- Integrar todos os módulos em um script principal - o Assistente de Tarefas Automatizadas.
- Realizar testes completos das funcionalidades do assistente.
- Resolução de bugs e otimização do script.
Entrega do Projeto
O produto final do projeto será um script Python que combina todos os módulos. Ele deve ser um Assistente de Tarefas Automatizadas funcional que realiza as tarefas especificadas quando solicitadas pelo usuário.
Além disso, cada grupo deve enviar um relatório detalhado contendo os seguintes elementos:
- Introdução: Alunos devem contextualizar o tema, sua relevância e aplicação no mundo real bem como o objetivo do projeto.
- Desenvolvimento: Alunos devem explicitar a teoria por trás do(s) tema(s) central(is) do projeto, explicar em detalhes cada atividade realizada, indicar a metodologia utilizada e, por fim, apresentar e discutir os resultados obtidos.
- Conclusão: Alunos devem concluir o trabalho retomando seus pontos principais, explicitando os aprendizados obtidos e as conclusões retiradas sobre o projeto.
- Bibliografia: Alunos devem indicar as fontes em que se basearam para trabalhar no projeto como livros, páginas da web, vídeos, etc.
Este relatório deve complementar o trabalho prático realizado, fornecendo um registro escrito claro do objetivo do projeto, a metodologia utilizada, o progresso e os resultados alcançados. Ele fornece uma visão adicional sobre a compreensão e o aprendizado do grupo em relação ao conteúdo do projeto, bem como sua capacidade de trabalhar de forma colaborativa e eficaz.