Curso online gratuitoFlutter e Dart: Do Iniciante ao Avançado com Projetos Práticos (Android e iOS)
Duração do curso online: 13 horas e 15 minutos
Novo
Curso gratuito de Flutter e Dart com projetos práticos para Android e iOS. Aprenda do básico ao avançado e crie apps completos.
Neste curso gratuito, aprenda sobre
Introdução ao Flutter e preparação do ambiente
Projeto inicial: App Eu Sou Rico (fundamentos de UI e assets)
Layout e componentes básicos: App MyCard
Interatividade e estado: App Dadoos + fundamentos de Dart
Pacotes, áudio e refatoração: App Marimba
Listas, lógica e POO: App QuizApp
App IMC Calc: temas, componentes, navegação e fechamento do projeto
Descrição do curso
Aprenda a criar aplicativos modernos para Android e iOS com Flutter e Dart, começando do zero e evoluindo até técnicas mais avançadas com foco em prática. Este curso online gratuito foi pensado para quem quer entender como o Flutter funciona na vida real, desde a estrutura de um app até a construção de interfaces responsivas e bem organizadas.
Ao longo do aprendizado, você desenvolve projetos completos e progressivos, reforçando conceitos essenciais como widgets, layouts, gerenciamento de estado, organização de recursos, uso de pacotes, navegação entre telas e criação de componentes reutilizáveis. Também aprofunda a base da linguagem Dart, trabalhando lógica, tipos, funções, listas, mapas e programação orientada a objetos para escrever código mais limpo e escalável.
Com uma abordagem prática e aplicada, você ganha confiança para configurar o ambiente, acelerar o fluxo de desenvolvimento e transformar ideias em aplicativos funcionais. Ao final, você terá uma base sólida para continuar evoluindo no ecossistema Flutter e criar seus próprios projetos multiplataforma com produtividade.
Conteúdo do curso
Aula em vídeo: #01 - O que é Flutter? - Curso de Flutter e Dart07m
Exercício: Qual é a principal proposta do Flutter para desenvolvimento de apps em múltiplas plataformas?
Aula em vídeo: #02 - Por que usar Flutter? - Curso de Flutter e Dart12m
Aula em vídeo: #03 - A anatomia de um aplicativo Flutter - Curso de Flutter e Dart06m
Exercício: Em Flutter, qual widget é usado como base para fornecer a estrutura de uma tela, permitindo adicionar elementos como AppBar e body?
Aula em vídeo: #04 - Como aproveitar ao máximo o curso - Curso de Flutter e Dart08m
Aula em vídeo: #05 - Pré-requisitos para desenvolver em Flutter - Curso de Flutter e Dart06m
Exercício: Para desenvolver e testar um aplicativo Flutter no iOS em um dispositivo real, qual é o principal requisito citado?
Aula em vídeo: Instalar e configurar o Flutter no Android Studio - Windows (Unable to locate adb - RESOLVIDO)12m
Aula em vídeo: #06 - (Opcional) - Utilizando o SCRCPY no desenvolvimento em Flutter - Curso de Flutter e Dart07m
Exercício: Qual é o principal benefício do uso do scrcpy durante o desenvolvimento de apps Flutter/Dart?
Aula em vídeo: #07 - App Eu Sou Rico - Criando um projeto em Flutter do zero - Curso de Flutter e Dart15m
Aula em vídeo: #08 - App Eu Sou Rico - Estruturando (Scaffolding) um aplicativo Flutter - Curso de Flutter e Dart22m
Exercício: No Flutter, qual widget é usado como estrutura principal para adicionar AppBar, body e outras funcionalidades como FloatingActionButton em uma tela?
Aula em vídeo: #09 - App Eu Sou Rico - Trabalhando com assets e com o arquivo pubspec - Curso de Flutter e Dart09m
Aula em vídeo: #10 - App Eu Sou Rico - Adicionar ícones nos aplicativos iOS e Android - Curso de Flutter e Dart10m
Exercício: Ao personalizar o ícone de um app Flutter para Android e iOS, qual é o procedimento correto para gerar e aplicar os ícones em ambos os sistemas?
Aula em vídeo: #11 - App Eu Sou Rico - DESAFIO 01 (Eu Sou Programador) - Curso de Flutter e Dart04m
Aula em vídeo: #12 - App MyCard - Criando um cartão de visita pessoal em Flutter - Curso de Flutter e Dart07m
Exercício: Ao clonar e abrir um projeto Flutter no Android Studio, qual ação resolve os erros iniciais antes de continuar o desenvolvimento?
Aula em vídeo: #13 - App MyCard - Entendendo o Hot Reload e o Hot Restart do Flutter - Curso de Flutter e Dart10m
Aula em vídeo: #14 - App MyCard - Como usar o widget Container - Curso de Flutter e Dart12m
Exercício: No Flutter, qual é o comportamento padrão de um Container quando ele NÃO possui a propriedade child?
Aula em vídeo: #15 - App MyCard - Como usar os widgets Column e Row no layout de apps - Curso de Flutter e Dart16m
Aula em vídeo: #16 - App MyCard - Entendendo as propriedades dos widgets (CircleAvatar) - Curso de Flutter e Dart09m
Exercício: Para exibir uma imagem local dentro do widget CircleAvatar, qual é o procedimento correto no Flutter?
Aula em vídeo: #17 - App MyCard - Incorporando fontes personalizadas no app Flutter - Curso de Flutter e Dart10m
Aula em vídeo: #18 - App MyCard - Adicionando ícones do Material Design com o widget Icon - Curso de Flutter e Dart11m
Exercício: Qual é uma vantagem dos ícones (Icons) em Flutter quando comparados a imagens comuns?
Aula em vídeo: #19 - App MyCard - Como usar os widgets Card e ListTile do Flutter - Curso de Flutter e Dart11m
Aula em vídeo: #20 - App MyCard - DESAFIO 02 - Parte 1 (Calculadora) - Curso de Flutter e Dart03m
Exercício: Qual é a principal utilidade dos comentários do tipo TODO no desenvolvimento de um app em Flutter/Dart?
Aula em vídeo: #21 - App Dadoos - Criando um app de jogar dados usando o widget Stateful - Curso de Flutter e Dart05m
Aula em vídeo: #22 - App Dadoos - Usando o widget Expanded para criar layouts flexíveis - Curso de Flutter e Dart12m
Exercício: Ao exibir duas imagens lado a lado em um Row e ocorrer overflow, qual abordagem permite que as imagens se ajustem ao espaço disponível de forma responsiva?
Aula em vídeo: #23 - App Dadoos - Como usar as Intention Actions do Flutter - Curso de Flutter e Dart08m
Aula em vídeo: #24 - App Dadoos - Adicionando detecção de gestos em botões (TextButton) - Curso de Flutter e Dart12m
Exercício: Ao adicionar detecção de toque em uma imagem no Flutter, qual propriedade do TextButton deve receber um VoidCallback para executar uma ação ao pressionar?
Aula em vídeo: #25 - App Dadoos - [Dart] Funções - Parte 1 - Curso de Flutter e Dart06m
Aula em vídeo: #26 - App Dadoos - Alterando os dados de maneira reativa - Curso de Flutter e Dart04m
Exercício: Ao trocar o número do dado usando uma variável no Flutter, por que a imagem pode não atualizar na tela ao alterar o valor da variável?
Aula em vídeo: #27 - App Dadoos - [Dart] Variáveis - Curso de Flutter e Dart08m
Aula em vídeo: #28 - App Dadoos - [Dart] Tipos de dados - Curso de Flutter e Dart11m
Exercício: Em Dart, qual prática aumenta a segurança do código ao trabalhar com variáveis?
Aula em vídeo: #29 - App Dadoos - Widgets Stateful versus Stateless - Qual é a diferença? - Curso de Flutter e Dart13m
Aula em vídeo: #30 - App Dadoos - Randomizando os dados com a biblioteca math do Dart - Curso de Flutter e Dart07m
Exercício: Em Dart, ao usar Random().nextInt(6) para simular um dado, qual ajuste gera valores de 1 a 6 (em vez de 0 a 5)?
Aula em vídeo: #31 - App Dadoos - Solução do desafio da aula 30 - Curso de Flutter e Dart03m
Aula em vídeo: #32 - App Dadoos - Solução do desafio da aula 31 - Curso de Flutter e Dart02m
Exercício: Ao clicar em qualquer um dos dados, qual abordagem garante que os dois valores sejam atualizados e a tela redesenhada?
Aula em vídeo: #33 - App Dadoos - Solução do desafio da aula 32 - Curso de Flutter e Dart03m
Aula em vídeo: #34 - App Dadoos - DESAFIO 02 - Parte 2 (Calculadora) - Curso de Flutter e Dart02m
Exercício: Para dar funcionalidade inicial à calculadora, qual recurso do Flutter deve ser usado para atualizar o visor quando uma tecla é pressionada?
Aula em vídeo: #35 - MEGA DESAFIO 1 - App Vidente Virtual - Curso de Flutter e Dart02m
Aula em vídeo: #36 - App Marimba - Um aplicativo de instrumento musical - Curso de Flutter e Dart04m
Exercício: Para adicionar arquivos (imagens, sons, textos etc.) a um projeto Flutter e conseguir acessá-los no app, qual é o procedimento correto?
Aula em vídeo: #37 - App Marimba - Como usar os pacotes do Flutter? (Flutter Packages) - Curso de Flutter e Dart10m
Aula em vídeo: #38 - App Marimba - Reproduzindo sons em diferentes dispositivos - Curso de Flutter e Dart10m
Exercício: Ao usar o pacote audioplayers para tocar arquivos locais no Flutter, qual abordagem é recomendada para reproduzir áudios da pasta assets?
Aula em vídeo: #38.1 - Atualização do módulo VI (Importante) - Curso de Flutter e Dart01m
Aula em vídeo: #39 - App Marimba - Reproduzindo múltiplos sons utilizando botões - Curso de Flutter e Dart09m
Exercício: Qual é a melhor forma de evitar repetição de código ao fazer 7 botões tocarem sons diferentes no Flutter?
Aula em vídeo: #40 - App Marimba - [Dart] Funções - Parte 2 - Curso de Flutter e Dart07m
Aula em vídeo: #41 - App Marimba - Atualizando a interface do nosso App - Curso de Flutter e Dart06m
Exercício: Em Flutter, qual ajuste faz com que os botões dentro de uma Column ocupem toda a largura disponível da tela?
Aula em vídeo: #42 - App Marimba - [Dart] Funções - Parte 3 - Curso de Flutter e Dart05m
Aula em vídeo: #43 - App Marimba - [Dart] Funções - DESAFIO - Curso de Flutter e Dart04m
Exercício: Em Dart, qual assinatura usa parâmetros nomeados para a função que soma dois inteiros (n1 e n2), permitindo chamá-la informando os nomes dos parâmetros?
Aula em vídeo: #44 - App Marimba - Refatorando o nosso App - Curso de Flutter e Dart04m
Aula em vídeo: #45 - App Marimba - [Dart] Função de seta - Arrow function - Curso de Flutter e Dart04m
Exercício: Em Dart, quando é apropriado usar a Arrow Syntax (=>) em uma função?
Aula em vídeo: #45.1 - Como usar a versão atualizada do plugin audioplayers - Curso de Flutter e Dart07m
Aula em vídeo: #46 - App QuizApp - Um aplicativo de perguntas e respostas - Curso de Flutter e Dart04m
Exercício: Qual é a principal funcionalidade do aplicativo Quick Step desenvolvido no módulo?
Aula em vídeo: #47 - App QuizApp - Desenvolvendo um marcador de pontos - Curso de Flutter e Dart14m
Aula em vídeo: #48 - App QuizApp - [Dart] Listas/Lists - Curso de Flutter e Dart10m
Exercício: Em Dart, considerando uma lista de strings, qual comando retorna o índice de um item (por exemplo, leite) dentro da lista?
Aula em vídeo: #49 - App QuizApp - Exibindo as questões - Curso de Flutter e Dart16m
Aula em vídeo: #50 - App QuizApp - Verificando a resposta do usuário - Curso de Flutter e Dart08m
Exercício: Em Dart, qual abordagem foi usada para verificar se o usuário acertou a questão exibida, mantendo os índices alinhados com a lista de perguntas?
Aula em vídeo: #51 - App QuizApp - [Dart] Estruturas condicionais (IF/ELSE) - Curso de Flutter e Dart15m
Aula em vídeo: #52 - App QuizApp - Criando uma classe de Perguntas - Curso de Flutter e Dart16m
Exercício: Qual é a principal vantagem de criar uma classe que une pergunta e resposta em um único objeto no Dart?
Aula em vídeo: #53 - App QuizApp - [Dart] Classes e Objetos - Curso de Flutter e Dart16m
Aula em vídeo: #54 - App QuizApp - Abstração - Curso de Flutter e Dart17m
Exercício: Qual é o principal objetivo da abstração na programação orientada a objetos ao modularizar um app em Dart/Flutter?
Aula em vídeo: #55 - App QuizApp - Encapsulamento - Curso de Flutter e Dart20m
Aula em vídeo: #56 - App QuizApp - Herança - Curso de Flutter e Dart12m
Exercício: Em Dart, qual palavra-chave é usada para criar uma classe que herda propriedades e métodos de outra classe?
Aula em vídeo: #57 - App QuizApp - Polimorfismo - Curso de Flutter e Dart12m
Aula em vídeo: #58 - App QuizApp - Adicionando o marcador de pontos novamente - Curso de Flutter e Dart09m
Exercício: Ao transformar a verificação de verdadeiro/falso em uma função no Flutter/Dart, qual é o benefício principal dessa refatoração?
Aula em vídeo: #59 - App QuizApp - Caixas de Alerta - DESAFIO - Curso de Flutter e Dart04m
Aula em vídeo: #60 - App QuizApp - [Dart] Construtores de classe - Curso de Flutter e Dart16m
Exercício: Em Dart, qual é a forma mais adequada de evitar confusão entre o parâmetro do construtor e a propriedade da classe quando ambos têm o mesmo nome (ex.: peso)?
Aula em vídeo: #61 - App QuizApp - DESAFIO 02 - Parte 3/Final (Calculadora) - Curso de Flutter e Dart03m
Aula em vídeo: #62 - MEGA DESAFIO 2 - App Harry Potter Houses - Curso de Flutter e Dart02m
Exercício: Em um app Flutter de perguntas e respostas (estilo seleção de casa), qual estrutura é mais adequada para modelar uma pergunta com suas alternativas e navegar para a próxima?
Aula em vídeo: #63 - App IMCCalc - Um aplicativo para calcular o IMC - Curso de Flutter e Dart02m
Aula em vídeo: #64 - App IMCCalc - Como usar os temas do Flutter - Curso de Flutter e Dart21m
Exercício: Qual é a forma correta de aplicar um tema global no Flutter para manter cores e estilos consistentes em todas as telas do app?
Aula em vídeo: #65 - App IMCCalc - Como refatorar os widgets do Flutter - Curso de Flutter e Dart15m
Aula em vídeo: #66 - App IMCCalc - [Dart] Final versus Const - Curso de Flutter e Dart14m
Exercício: No Dart, qual é a principal diferença entre const e final ao declarar valores imutáveis?
Aula em vídeo: #67 - App IMCCalc - Criando widgets personalizados do Flutter - Curso de Flutter e Dart14m
Aula em vídeo: #68 - App IMCCalc - Utilizando o widget GestureDetector - Curso de Flutter e Dart10m
Exercício: Ao tornar um Card personalizado clicável sem alterar seu estilo no Flutter, qual widget é o mais indicado para detectar um toque simples?
Aula em vídeo: #69 - App IMCCalc - [Dart] Enums - Curso de Flutter e Dart10m
Aula em vídeo: #70 - App IMCCalc - [Dart] Operador ternário - Curso de Flutter e Dart10m
Exercício: No Dart, qual é a estrutura correta do operador ternário para definir um valor com base em uma condição?
Aula em vídeo: #71 - App IMCCalc - [Dart] Funções como objetos de primeira classe - Curso de Flutter e Dart11m
Aula em vídeo: #72 - App IMCCalc - Utilizando o widget Slider do Flutter - Curso de Flutter e Dart17m
Exercício: Ao usar um Slider para atualizar e exibir a altura selecionada na tela, o que é necessário fazer para que o valor e o botão do Slider sejam atualizados visualmente durante o arrasto?
Aula em vídeo: #73 - App IMCCalc - Composição vs. Herança - Construindo widgets do zero - Curso de Flutter e Dart18m
Aula em vídeo: #74 - App IMCCalc - Usando rotas e navegação para mudar de tela - Curso de Flutter e Dart15m
Exercício: Em Flutter, qual combinação de métodos do Navigator representa corretamente o comportamento de pilha (stack) ao navegar entre telas?
Aula em vídeo: #75 - App IMCCalc - [Dart] Mapas - Curso de Flutter e Dart06m
Aula em vídeo: #76 - App IMCCalc - Construindo a tela de resultados - Curso de Flutter e Dart14m
Exercício: Ao extrair um botão reutilizável no Flutter (como um botão inferior), quais propriedades são essenciais para permitir reutilização em telas diferentes?
Aula em vídeo: #77 - App IMCCalc - Adicionando funcionalidades ao App - Curso de Flutter e Dart11m