Search buenodc

Aulas

Disciplinas

Material de apoio, atividades e slides das disciplinas que leciono.

Em andamento

LGP1

Linguagem de Programação 1

20 páginas
  • Linguagem de Programação 1
  • Abrir o editor

    code --user-data-dir ~/.vscode-clean --extensions-dir ~/.vscode-clean/extensions ./dev/LGP1

  • Lista de Exercícios - Semana 1

    Lembrete: ← significa "recebe" (atribuição), diferente do = da matemática.

  • Algoritmos: lógica, fluxograma e pseudocódigo

    Antes de escrever qualquer programa, um programador precisa ter clareza sobre o que o programa deve fazer e em que ordem. Essa descrição de passos, independente de linguagem, é o q

  • Configurando o ambiente: VSCode + C/C++

    Para programar em C++ você precisa de duas coisas: um editor (onde você escreve o código) e um compilador (o programa que transforma seu código em algo que o computador executa). N

  • Lista de Exercícios - Semana 2

    1. No trecho abaixo, cout << a / b; mostra 3, e não 3.33.... Qual é a explicação?

  • Primeiros passos com Git e GitHub

    Conforme você programa, seu código muda o tempo todo. O Git é uma ferramenta que guarda o histórico desse código: cada vez que você salva um ponto do trabalho (um commit), fica reg

  • Estrutura de um Programa C++

    Na semana passada aprendemos a descrever algoritmos com fluxograma e pseudocódigo. Agora damos o passo seguinte: transformar esses algoritmos em um programa de verdade, escrito em

  • Lista de Exercícios - Semana 3

    1. O trecho abaixo mostra qual valor na tela?

  • Operadores e Estruturas de Decisão em C++

    Nas duas semanas passadas, você aprendeu a estrutura de um programa em C++ e como guardar valores em variáveis. Mas repare numa coisa: todo valor usado até agora era fixo, escrito

  • Lista de Exercícios - Semana 4

    1. No trecho abaixo, qual é o valor de pedagio se classe valer 1?

  • Switch e Laços de Repetição em C++

    Nas duas semanas passadas, você aprendeu a tomar decisões com o if, o else, decisões aninhadas, e a cadeia de else if. Mas repare numa coisa: até agora, todo programa que você escr

  • Lista de Exercícios - Semana 5

    1. Qual é a saída do trecho abaixo?

  • For, laços aninhados e revisão de repetição

    Você já conhece dois laços de repetição: o while, que testa a condição antes de cada repetição, e o do-while, que garante pelo menos uma execução. Mas repare numa situação bem comu

  • Lista de Exercícios - Semana 6

    1. Qual é o índice do último elemento de um array declarado como int valores[8];?

  • Arrays Unidimensionais

    Até agora, cada variável do seu programa guardava um único valor: uma idade, uma nota, um preço. Mas imagine um programa que precisa guardar as cinco notas de uma turma pequena, ca

  • Lista de Exercícios - Semana 7

    1. Qual é a saída do trecho abaixo?

  • Funções

    Imagine um programa que precisa calcular o preço com desconto de vários produtos, um de cada vez, sempre com a mesma fórmula. Sem uma forma de nomear esse cálculo, você acaba copia

  • Lista de Exercícios - Etapa 8

    1. Numa função com parâmetro por valor, o que acontece com o argumento original quando a função altera o valor do parâmetro dentro do corpo?

  • Funções: parâmetros e escopo

    Na etapa passada, você aprendeu a definir e chamar funções, com parâmetros e valores de retorno. Mas ficou uma pergunta em aberto: quando você passa um valor pra um parâmetro, o qu

PRW3

Programação para Web 3

19 páginas
  • Programação para Web 3

    Nesta aula, vamos entender o que acontece nos bastidores quando um navegador abre um site: o modelo cliente-servidor, o protocolo HTTP, a anatomia das URLs, os métodos, os códigos

  • Cadastro de Informações

    Até aqui, a aplicação sabe apenas ler: os dados chegam ao banco por migrações escritas pelo desenvolvedor, ou por comandos digitados direto no terminal do MySQL. Um sistema real pr

  • Atividade Cadastro de Informações (EstanteWeb)

    Disciplina: Programação para Web 3 Assunto: INSERT, formulários de cadastro e persistência de dados Professor: Prof. Me. Danilo Bueno Grupos: duplas Duração: 4 aulas de 50 minutos

  • Comunicação HTTP

    Nas últimas duas aulas você aprendeu que um servidor escuta requisições e que o Spring Boot organiza o código que responde a elas em controllers. Mas uma requisição carrega muito m

  • Atividade Comunicação HTTP (EstanteWeb)

    Disciplina: Programação para Web 3 Assunto: Métodos HTTP, parâmetros, cabeçalhos, status codes e formulários HTML Professor: Prof. Me. Danilo Bueno Grupos: duplas Duração: 4 aulas

  • Consulta de Dados

    Um banco de dados sem nenhum código que o consulte é só um arquivo caro guardando informação parada. Esta aula fecha essa lacuna: mostra como um método Java executa um SELECT, rece

  • Atividade Consulta de Dados (EstanteWeb)

    Disciplina: Programação para Web 3 Assunto: SELECT, ResultSet, JdbcTemplate, injeção de dependência e exibição em páginas Professor: Prof. Me. Danilo Bueno Grupos: duplas Duração:

  • Formulários e Fluxo de Navegação

    Preencher um formulário na Web quase nunca termina na própria página do formulário: um cadastro leva a uma tela de boas-vindas, uma compra leva a uma confirmação, uma mensagem de c

  • Atividade Formulários e Fluxo de Navegação (EstanteWeb)

    Disciplina: Programação para Web 3 Assunto: Formulários com FreeMarker, validação com retorno ao formulário e fluxo de navegação (redirect) Professor: Prof. Me. Danilo Bueno Grupos

  • Organização de Aplicações Web: MVC e Spring Boot

    Na aula passada vimos que um servidor recebe requisições HTTP e devolve respostas. Mas quem escreve o programa que fica do lado de lá? Como esse código decide o que responder para

  • Atividade MVC e Spring Boot (EstanteWeb)

    Disciplina: Programação para Web 3 Assunto: Organização de aplicações Web (MVC, Spring Boot, Controllers e rotas) Professor: Prof. Me. Danilo Bueno Grupos: duplas Duração: 4 aulas

  • Navegação entre Recursos

    Até aqui, a aplicação tem poucos endereços, e cada um deles devolve sempre a mesma coisa: a listagem inteira, o formulário em branco, a página de contato. Nada no endereço muda con

  • Atividade Navegação entre Recursos (EstanteWeb)

    Disciplina: Programação para Web 3 Assunto: URLs parametrizadas, Path Variables e páginas de detalhes Professor: Prof. Me. Danilo Bueno Grupos: duplas Duração: 4 aulas de 50 minuto

  • Persistência de Dados

    Toda aplicação construída até aqui perde os dados no instante em que o processo Java termina: uma lista em memória existe só enquanto o servidor está de pé. Sites reais não funcion

  • Atividade Persistência de Dados (EstanteWeb)

    Disciplina: Programação para Web 3 Assunto: Bancos de dados relacionais, MySQL e versionamento de esquema com Flyway Professor: Prof. Me. Danilo Bueno Grupos: duplas Duração: 4 aul

  • Atividade Templates com FreeMarker (EstanteWeb)

    Disciplina: Programação para Web 3 Assunto: Geração dinâmica de páginas, templates e FreeMarker Professor: Prof. Me. Danilo Bueno Grupos: duplas Duração: 4 aulas de 50 minutos (em

  • Geração Dinâmica de Páginas: Templates com FreeMarker

    Todo site que você acessa hoje, de uma rede social a um site de notícias, mostra páginas parecidas com conteúdos diferentes: o mesmo layout de perfil para cada usuário, a mesma est

  • Atividade Como a Web Funciona

    Disciplina: Programação para Web 3 Assunto: Como a Web funciona (cliente-servidor, HTTP, URL, status, DevTools) Professor: Prof. Me. Danilo Bueno Grupos: duplas Duração: 4 aulas de

  • Como a Web Funciona

    Toda vez que você digita um endereço no navegador, curte uma foto ou envia um formulário, uma conversa acontece nos bastidores entre duas partes: o seu navegador e um computador re

Arquivo

LSPW

Linguagem de Script para Web

12 páginas
  • Linguagem de Script para Web

    Revisão de Box Model e Flexbox, seguida de uma introdução à hospedagem com o Cloudflare.

  • Exercícios: Revisão de CSS (Box Model e Flexbox) + Hospedagem

    Antes de avançar para novos conteúdos, vamos revisar como margin, padding e border controlam o espaço ao redor e dentro de um elemento.

  • RWD - Layout Fluído

    Imagine que você está desenvolvendo a página de um site que precisa se adaptar a diferentes tamanhos de tela. Você foi encarregado de criar uma seção com um título e um parágrafo q

  • RWD - Mídias Fluídas e Consultas de Mídia

    Crie uma página chamada rwd-query-font.html com um título e um parágrafo de texto. No CSS, utilize as consultas de mídia (@media) para fazer as seguintes alterações: quando a largu

  • Exercícios: Git e GitHub

    Estes exercícios repetem o fluxo que fizemos juntos nas aulas anteriores. Se travar em algum comando, veja os slides da aula.

  • Git e GitHub

    Todo mundo que já escreveu um trabalho no computador conhece a pasta com trabalho.docx, trabalhov2.docx, trabalhofinal.docx e trabalhofinalAGORAVAI.docx. Funciona, mal e mal, enqua

  • Exercícios: Frameworks CSS (Bootstrap)

    Estes exercícios colocam em prática o que vimos nos slides sobre frameworks CSS, usando o Bootstrap como exemplo de framework component-based. Diferente dos exercícios anteriores,

  • Variáveis, Tipos e Condicionais em JS

    Todos os exercícios abaixo pedem os dados com prompt() e mostram o resultado com alert(). Lembre-se: prompt() sempre devolve uma string, então valores numéricos precisam ser conver

  • Exercícios: Arrays e Objetos em JS

    Objetivo: Criar uma lista de tarefas (to-do list) e manipulá-la.

  • TBL — Web Design Responsivo

    Nas últimas aulas vocês viram os três pilares do Web Design Responsivo: layouts fluídos, mídias fluídas e media queries. Agora é hora de colocar isso à prova, em equipe.

  • Atividade de Aplicação — Web Design Responsivo

    Cada rodada apresenta um problema real de responsividade. O grupo discute e decide uma única alternativa (A, B, C ou D). Quando o professor pedir, todos os grupos revelam a respost

  • Teste de Prontidão — Revisão Geral

    Este teste cobre tudo o que foi visto até agora: propriedades básicas de CSS, Box Model, Flexbox (propriedades do container), Hospedagem e o tripé do Web Design Responsivo.

PRW1

Programação Web 1

19 páginas
  • Programação Web 1

    [email protected] · website/docs · github

  • Introdução ao HTML

    HTML não é case-sensitive. No entanto, é uma prática recomendada escrever todas as tags em letras minúsculas para maior consistência e legibilidade.

  • HTML - Estrutura e imagens

    Assim como os engenheiros seguem restritas diretrizes de design, ou restaurantes têm regulamentos de saúde e segurança, assim também os desenvolvedores web têm um conjunto de regra

  • Listas e textos

    “A escolha do tipo de lista a ser usada — ou se deve ou não usar uma lista — depende do conteúdo e da opção semanticamente mais apropriada para exibir esse conteúdo.”

  • Hyperlinks e Tabelas

    Um conjunto estruturado de dados compostos de linhas e colunas

  • Formulários e metadados

    Não decida entre usar a validação do lado do cliente ou do servidor - você precisará de ambas.

  • Exercícios — FAQ DevShop

    Conteúdo do FAQ para que você não precise inventar Utilize o texto abaixo para criar a seção de perguntas e respostas da página.

  • Mais tags HTML

    Como planejar uma estrutura básica do site e escrever o HTML para representar essa estrutura.

  • Introdução ao CSS

    “Folha de estilo em cascata é um mecanismo simples para adicionar estilos (p.ex, fontes, cores, espaçamentos) aos documentos Web (W3C).”

  • Box Model e Background

    / propriedade abreviada (shorthand) / margin: 20px; / margem de 20px em todos os lados / margin: 10px 20px; / margem vertical de 10px e horizontal de 20px / margin: 10px 15px 20px

  • Exercícios Flexbox

    Você vai criar o seu documento HTML com as 9 imagens e atribuir um container para elas destacado abaixo.

  • Layout com Flexbox

    Bloco (gera quebra de linha)

  • Exercícios GRID

    Vamos criar um layout composto por um cabeçalho superior, um menu lateral, uma área de conteúdo principal e um rodapé. O objetivo é utilizar o CSS Grid para organizar essas peças e

  • Layout com Grid

    A partir deste momento, os filhos diretos deste container se tornam grid items e começam a se comportar de uma maneira nova e especial.

  • Atividade de revisão
  • RWD - LandingPage Responsiva

    IMPORTANTE: as equipes não podem ter o mesmo design.

  • Qualidade de Código

    Exemplos de erros que ele encontra:

  • Frameworks CSS

    “Um framework é um conjunto padronizado de conceitos, práticas e critérios para lidar com um tipo comum de problema, que pode ser usado como referência para nos ajudar a abordar e

  • Implantação

    O software no localhost é apenas código em desenvolvimento. A Implantação é o que transforma esse código em uma solução ativa.

PRW2

Programação Web 2

23 páginas
  • Programação Web 2

    Nesta aula, vamos aprender sobre pré-processadores CSS, que são ferramentas que permitem escrever CSS de forma mais eficiente e organizada. Vamos explorar conceitos como variáveis,

  • Fetch API e Assincronicidade

    JavaScript executa uma instrução de cada vez, em sequência. Isso é o que chamamos de execução síncrona — cada linha espera a anterior terminar.

  • Atividade Fetch API — PokeSearch

    Disciplina: Programação Web 2 Assunto: Fetch API, Promises, async/await Professor: Me. Danilo Bueno Grupos: duplas Duração: 4 aulas de 50 minutos (em sala)

  • DOM — Document Object Model

    O Document Object Model (DOM) é a representação do HTML de uma página como uma estrutura de dados acessível pelo JavaScript. É a ponte entre o seu código JS e o que o usuário vê na

  • Atividade DOM — Painel TaskFlow

    Disciplina: Programação Web 2 Assunto: DOM — Document Object Model Professor: Me. Danilo Bueno Grupos: duplas Duração: 4 aulas de 50 minutos (em sala)

  • Eventos e Interatividade

    Um evento é uma ação que acontece no navegador — um clique, uma tecla pressionada, o envio de um formulário, o carregamento da página.

  • Atividade Eventos — VibeStore

    Disciplina: Programação Web 2 Assunto: Eventos e Interatividade Professor: Me. Danilo Bueno Grupos: duplas Duração: 4 aulas de 50 minutos (em sala)

  • JavaScript Moderno (ES6+)

    Antes de qualquer código, você precisa saber onde executar JavaScript. O navegador já vem com um ambiente completo para rodar JS — sem instalar nada.

  • Atividade JavaScript ES6 — Catálogo GameData

    Disciplina: Programação Web 2 Assunto: JavaScript ES6 Professor: Me. Danilo Bueno Grupos: duplas Duração: 4 aulas de 50 minutos (em sala)

  • Pré-processadores CSS

    À medida que um projeto cresce, as folhas de estilo crescem junto. Um arquivo CSS de um site real pode ter centenas ou milhares de linhas — e aí começam os problemas:

  • Atividade PBL — Pré-processadores CSS

    Disciplina: Programação Web 2 Professor: Me. Danilo Bueno Duplas: 2 integrantes Duração: 4 aulas de 50 minutos (em sala)

  • Projeto Final — SerieLog

    Disciplina: Programação Web 2

  • Props e Comunicação entre Componentes

    Na aula anterior você criou componentes Vue. Mas eles tinham um problema: os dados eram hardcoded — fixos no próprio arquivo.

  • Atividade Props e Emits — VagaHub

    Disciplina: Programação Web 2 Assunto: Props e Comunicação entre Componentes Professor: Me. Danilo Bueno Grupos: duplas Duração: 4 aulas de 50 minutos em sala (+ 1 aula de teoria)

  • Vue Router — Roteamento Client-Side

    Quando você usa o Gmail, clica em "Enviados" e a lista muda sem a página piscar. Quando você navega pelo Spotify, a música continua tocando enquanto você vai para outra tela. Nos d

  • Projeto SerieLog — Vue Router e Remoção

    Disciplina: Programação Web 2 Assunto: Roteamento Client-Side com Vue Router Professor: Me. Danilo Bueno Grupos: duplas Duração: 4 aulas de 50 minutos em sala

  • SPAs e Frameworks JavaScript Client-Side

    A web começou como uma coleção de documentos estáticos. Com o tempo, passou a hospedar aplicações interativas — e-mail, mapas, redes sociais, dashboards. Essa mudança criou um prob

  • Atividade Vue 3 — SerieFlow

    Disciplina: Programação Web 2 Assunto: SPAs e Frameworks JavaScript Client-Side Professor: Me. Danilo Bueno Grupos: duplas Duração: 3 aulas de 50 minutos em sala (+ 1 aula de teori

  • Estado e Reatividade no Vue 3

    Quando você usa o Instagram e o número de curtidas muda sem recarregar a página, ou adiciona um produto ao carrinho e o ícone atualiza na hora — por baixo está acontecendo algo sim

  • Projeto SerieLog — Estado e Reatividade

    Disciplina: Programação Web 2 Assunto: Estado e Reatividade Professor: Me. Danilo Bueno Grupos: duplas Duração: 4 aulas de 50 minutos em sala

  • Web Design Responsivo
  • Atividade PBL — Web Design Responsivo

    Disciplina: Programação Web 2 Professor: Me. Danilo Bueno Grupos: 4 integrantes Duração: 4 aulas de 50 minutos (em sala)

  • Lista de Exercícios Práticos: Design Responsivo e Media Queries

    Contexto: Nas semanas anteriores, focamos em construir layouts incríveis para telas grandes (Desktops). Agora, o seu objetivo é utilizar Media Queries para adaptar esses mesmos com

WEB2

Fundamentos de Programação para Web

13 páginas