Explorando Plataformas para a Criação de Aplicativos Web

  • Saber mais sobre aplicativos web e como eles diferem de aplicativos comuns
  • Saber mais sobre as diferentes opções para programação e construção de aplicativos web
  • Instalar o software necessário para criar um aplicativo Web

Estas são as atividades para esta lição:

APLICATIVOS WEB

Para seu projeto Technovation, você tem a opção de criar um aplicativo ou um aplicativo web

Para as participantes que já participaram do Technovation antes e estão procurando um novo desafio, ou para novas participantes que têm experiência anterior com programação, considere a possibilidade de criar um aplicativo web para o seu projeto Technovation.

Muitas participantes optarão por criar um aplicativo com uma de nossas plataformas sugeridas de construção de aplicativos, o App Inventor ou o Thunkable. Se você é nova na programação ou sabe que deseja usar o App Inventor ou o Thunkable para programar o app, pode pular esta lição! 

Criar um aplicativo web envolve programação baseado em texto e é mais avançado do que programação baseada em blocos com App Inventor ou Thunkable. 

Vamos começar com uma revisão da diferença entre aplicativos, aplicativos web e aplicativos web progressivos. 

Aplicativo comum

  • um programa que é executado nativamente no telefone
  • baixado e instalado no dispositivo 
  • pode acessar os recursos do telefone, como GPS e câmera
  • específico da plataforma (iOS ou Android) 
  • programado com linguagens específicas do sistema operacional

Aplicativo Web

  • se parece muito com um aplicativo comum
  • é executado em um navegador da Internet
  • não nativo de um dispositivo específico (iOS ou Android) 
  • geralmente é programado com HTML, CSS, Javascript e Python
  • não pode ser executado quando estiver off-line

Aplicativo Web Progressivo

  • Tipo especial de aplicativo web que é um híbrido entre um aplicativo e um aplicativo web
  • é executado em um navegador
  • também pode ser instalado no dispositivo móvel como um aplicativo
  • pode ser executado mesmo quando o usuário estiver off-line

Observe que um aplicativo web é diferente de um site. Um site é estático, programado com HTML e CSS. Os aplicativos web são dinâmicos e mudam com base na entrada do usuário e em outras interações externas. Para seu projeto Technovation, um site não é aceitável.

Exploraremos algumas opções para iniciantes para criar aplicativos web.

Uma grande diferença em relação às plataformas de criação de aplicativos que abordamos em aplicativos é que você criará um aplicativo web usando uma linguagem de programação baseada em texto em vez de uma linguagem baseada em blocos. 

Há duas linguagens principais que são usadas para criar aplicativos web.

JAVASCRIPT

logotipo javascript

Javascript ou JSé uma linguagem de script. Isso significa que o código é executado em tempo de execução, em vez de ser compilado, como em aplicativo. É como um ator que executa seu roteiro durante um show cada vez que o show é executado.

O Javascript é frequentemente combinado com HTML e CSS para criar sites. O HTML e o CSS são usados para criar sites estáticos, que podem apresentar informações, mas não mudam. O Javascript acrescenta interatividade e a capacidade do site mudar e se atualizar com base em fatores externos. E um site dinâmico e interativo é essencialmente um aplicativo web.

PYTHON

logotipo do python

Python é uma linguagem de programação de uso geral muito popular. Python é tanto uma linguagem de programação e uma linguagem de script, portanto, pode ser compilada para execução, mas também pode ser executada em tempo de execução.

Ela é vista como uma linguagem direta, versátil e acessível para novos programadores. Ela é usada em muitos aspectos diferentes do desenvolvimento de software. Uma área é o desenvolvimento Web. Outra é machine learning, ou em língua portuguesa, aprendizado de máquina. Portanto, Python é uma ótima opção para aprender e desenvolver aplicativos web com IA mais avançada.
 

Neste curso, vamos nos concentrar em criar aplicativos web com Python. Para criar facilmente um aplicativo web usando Python, usaremos uma estrutura chamada Streamlit. O Streamlit permite que você crie um aplicativo web poderoso e interativo com pouco código. Ele é especializado em aplicativos que envolvem dados e permite que você use facilmente as bibliotecas de machine learning do Python para incorporar IA em seus aplicativos. 

Aqui estão alguns dos principais recursos.

  • Boa opção para pessoas que têm muita experiência em programação baseado em blocos e estão procurando um novo desafio
  • Bom para pessoas que já fizeram alguma coisa com programação de texto
  • Linguagem muito versátil e amplamente utilizada
  • Será necessário instalar um software em seu computador
      • Python e bibliotecas associadas
      • Um editor de código
  • O Streamlit tem a opção de ser executado no navegador, usando o Github
      • Não abordaremos essa opção neste currículo
  • Você pode usar a IA com ele
      • Linguagem mais popular para criar e usar modelos de machine learning (aprendizado de máquina)
      • Usaremos o Jupyter Notebooks neste currículo para a criação de modelos

PARA COMEÇAR

Para programar aplicativos web para seu projeto Technovation, você precisará:

  • um computador ou notebook
  • Acesso à Internet

Você deve estar familiarizada com o uso da janela Terminal em um Mac ou Linux e com o Terminal ou prompt de comando no Windows. Se você não tiver experiência, ou mesmo se não souber o que é a janela Terminal, assista a estes vídeos para iniciantes antes de prosseguir com a atividade.

Assista ao vídeo apropriado para seu sistema operacional.

Usando o terminal

3 Vídeos

Abordaremos duas opções para o desenvolvimento do aplicativos web. Você pode codificar em seu computador ou laptop, ou pode codificar tudo na nuvem. Você pode escolher qualquer uma das opções, mas é recomendável escolher uma delas e mantê-la durante todo o seu projeto Technovation. Saber como usar os comandos de terminal acima é útil em qualquer uma das opções.

Aqui estão alguns prós e contras de cada um.

EM SEU COMPUTADOR

PRÓS:

  • Os arquivos são salvos em seu computador
  • Aprenda a usar o Visual Studio Code, um IDE muito popular
  • Você aprenderá muito sobre como usar a janela do terminal, instalar pacotes, etc
  • Controle total e escolha do software usado
  • Pode codificar sem precisar sempre de acesso à Internet

CONS:

  • Não é fácil compartilhar arquivos e códigos com a sua equipe
  • Pode ser muito frustrante instalar pacotes e pode levar muito tempo para configurá-los
  • Possibilidade de perda de arquivos em caso de falha do computador

NA NUVEM

PRÓS:

  • Os arquivos são armazenados na nuvem
  • Não há necessidade de instalar nada em seu computador
  • Link automático para o Github para fins de portfólio
  • Fácil de compartilhar e codificar em equipe

CONS:

  • Não terá a experiência de usar o software localmente
  • Dependência de conexão com a Internet

Escolha a Atividade A ou a Atividade B, com base no fato de você querer codificar localmente em seu computador ou codificar na nuvem.

ATIVIDADE A: COMECE A USAR PYTHON EM SEU COMPUTADOR

Tempo estimado: 45 minutos

INSTALAR O SOFTWARE E PROGRAMAR O APLICATIVO INICIAL

OBSERVAÇÃO: seguindo as instruções abaixo, você poderá ter alguns problemas, portanto, seja paciente e esteja preparada para solucionar problemas durante o processo!

  1. Etapa 1: Instale Python. Aqui está um bom conjunto de instruções para Windows, Mac ou Linux.
  2. Etapa 2: Instale um editor de código e o Streamlit. Este vídeo mostra como instalar o Visual Studio Code e, em seguida, instalar o Streamlit para executá-lo a partir do editor de código.
  3. Etapa 3: Execute um aplicativo web Streamlit muito simples no ambiente de programação VS Code seguindo este vídeo.
  4. Para comemorar, tire uma captura de tela do seu primeiro aplicativo web e envie-a com uma nota para seu/sua mentor(a)!

ATIVIDADE B: INTRODUÇÃO AO PYTHON NA NUVEM

Tempo estimado: 45 minutos

CRIAR CONTAS E CODIFICAR UM APLICATIVO

Siga o vídeo para se registrar no Streamlit.io e no Github. Em seguida, conecte as duas contas e crie um aplicativo Streamlit muito simples.
Exibir vídeo

REVISÃO DOS PRINCIPAIS TERMOS

  • Aplicativo web - aplicativo que se parece com um aplicativo, mas é executado em um navegador da Internet e é programado usando HTML, CSS e Javascript ou Python

REFLEXÃO

Parabéns por ter experimentado alguns textos baseados em programação! Aqui estão algumas perguntas para reflexão que você deve considerar com sua equipe e com seu/sua mentor(a).

Reflexão de rochas na água
Vocês encontraram algum desafio ao instalar e/ou trabalhar com uma linguagem baseada em texto?
Como vocês superaram os desafios?

RECURSOS ADICIONAIS

Você precisará consultar a documentação e o suporte para obter ajuda para trabalhar com Python e Streamlit. Abaixo estão alguns bons lugares para começar.