LP3

LP3

LP3

profile-pic
2026

Linguagem de Programação 3

Implementar sistemas web backend que se comunicam com Bancos de Dados. Entender o significado das estratégias e tecnologias de versionamento. Integrações e APIs. Comunicação entre sistemas distintos. Segurança da Informação. Gerenciar projetos finais de desenvolvimento de software.

Informações Gerais

Ementa

Arquitetura da Web. Processo de deploy. Conexões com Bancos de Dados. Desenvolvimento de aplicações CRUD. Git e Github. Integração com APIs. Acesso remoto. Desenvolvimento e Gerenciamento de Trabalho de Conclusão de Curso.

Programação das Aulas

Aula Tópicos Vídeo Aula Outros Materiais
Início do 1º Período --- --- ---
01 - João Arquitetura da Web e Serviços de Hospedagem --- Trabalho 01 - Parte 1
02 - Cláudio PHP - Introdução à linguagem PHP --- ---
03 - João Git - Introdução ao Git e GitHub: entendendo repositórios --- Trabalho 01 - Parte 2
04 - João Git - Introdução ao Git e GitHub: trabalho colaborativo --- ---
05 - Cláudio PHP - Particularidades da linguagem --- ---
06 - João Git - Utilizando o terminal (TUTORIAIS) --- Terminal e git
07 - João PHP - Comunicação via POST e GET (formulários) --- Aula, Práticas e Exercícios
08 - Cláudio PHP - Arrays associativos --- ---
09 - João PHP - Login, fluxo de requisição e área restrita --- Aula, Práticas e Exercícios
10 - Cláudio PHP - Cookies e Sistema de Votação --- Slides, Exercício
11 - João PHP - Repository Pattern (Padrão de Projeto) --- Projeto Base, Arquitetura e Trabalho 02
12 - Cláudio PHP - Conexão com Banco de Dados (MySQL) --- Slides
13 - João Questões de revisão --- Questões
14 - Cláudio Apoio ao desenvolvimento do trabalho --- ---
15 - João Apoio ao desenvolvimento do trabalho --- ---

Certificações

Primeira Certificação
12 de junho de 2026 5,0 pontos

A avaliação cobrará todo o conteúdo visto até o último encontro antes da certificação.

Revise os materiais, práticas, listas e atividades desenvolvidas em aula.

Trabalhos

Trabalho 01
DS313: 06 de abril de 2026 DS315: 09 e 17 de abril de 2026 5,0 pontos Peso 1
Aviso importante:

O link para o site, ou seja, o seu domínio (Parte 1) e o link para o repositório remoto, isto é, o link do seu GitHub onde o projeto está armazenado (Parte 2), deverão ser enviados para lagoas.joaoluiz@outlook.com para fins de avaliação e atribuição de nota.

A data de envio limite, sem possibilidade de ajuste, é definida por turma:
  • DS313 — 06 de Abril até 23:59 (Parte 01 e Parte 02)
  • DS315 — 09 de Abril até 23:59 (Parte 01), 17 de Abril até 23:59 (Parte 02)

A Parte 01 pode ser realizada em dupla. A Parte 02 deve ser realizada individualmente, e cada aluno deverá apresentar uma conta própria no GitHub.

O objetivo deste trabalho é compreender, na prática, a dinâmica da arquitetura web por meio de um primeiro processo de deploy. Não somente, exploraremos como o git, solução de versionamento de código, é usado para manter repositórios e estimular o trabalho colaborativo.

Ver instruções completas

Parte 1 — Publicação do site (Serviço de Hospedagem)

  1. Pesquisar um serviço de hospedagem gratuito.
  2. Registrar um domínio. Não deixe para a véspera, pois o registro pode levar até 72 horas para ser concluído.
  3. Publicar uma página web no domínio registrado, isto é, um arquivo index.html. A página pode ser composta por outros arquivos .html, .css e .js, conforme necessário. Esses arquivos de front-end podem ser obtidos da internet, desde que sejam adaptados para o seu trabalho. A solução pode ser simples.

Observação: o serviço de hospedagem escolhido deve oferecer suporte a PHP e MySQL, mesmo que isso ainda não seja utilizado neste momento.

Parte 2 — Versionamento com git e GitHub

  1. Criar uma conta no site github.com.
  2. Instalar o GitHub Desktop na sua máquina ou usar no Colégio.
  3. Criar um repositório local usando o GitHub Desktop.
  4. No repositório local (pasta), colocar todos os arquivos que foram usados para criar o site do trabalho anterior.
  5. Notar que o GitHub Desktop vai sinalizar que alguns arquivos foram adicionados. Realizar um commit com uma mensagem adequada, como por exemplo: "Projeto inicial".
  6. Após fazer o commit, clicar em Publish para fazer o push e criar o repositório remoto.
  7. Checar, na sua conta do GitHub, se o repositório remoto foi criado corretamente.
  8. Nas configurações do seu repositório remoto, ajustar para que ele seja público. Isso geralmente é feito clicando em Settings.

Nota: cada aluno deverá enviar individualmente a sua conta do GitHub e apresentar pelo menos um commit próprio no projeto.

Trabalho 02
DS313: 02 de junho de 2026 DS315: 05 de junho de 2026 5,0 pontos Peso 2
Aviso importante:

O trabalho será avaliado presencialmente. Durante a apresentação, haverá arguição oral sobre o código, a modelagem do banco, as decisões de arquitetura e as funcionalidades implementadas.

Todos os integrantes devem apresentar commits próprios no histórico do repositório e estar preparados para explicar partes do projeto. O trabalho pode ser realizado em grupos de até três alunos.

O objetivo deste trabalho é transformar o template fornecido em uma aplicação web real, desenvolvida em PHP puro com MySQL. O projeto deve manter a organização em camadas, mas substituir o tema original por uma entidade principal própria, com regras de negócio, relacionamentos e fluxos coerentes com o domínio escolhido.

Ver instruções completas

Aplicação web CRUD com login, sessão e modelagem própria

A aplicação final não deve ser apenas uma troca de nomes. Ela precisa demonstrar decisões próprias de modelagem, fluxos de uso coerentes e funcionalidades que façam sentido para o tema escolhido.

Temas possíveis

  • Biblioteca: livros, autores, categorias, empréstimos, avaliações e capas.
  • Eventos: eventos, categorias, participantes, inscrições, cartazes e comentários.
  • Loja: produtos, categorias, pedidos, itens do pedido, estoque e imagens.
  • Clínica: pacientes, médicos, consultas, procedimentos e histórico de atendimento.
  • Receitas: receitas, ingredientes, categorias, tags, imagens e avaliações.
  • Música: álbuns, artistas, músicas, playlists, tags e capas.

Enunciado completo: acesse a página do Trabalho 02.

Cálculo de Nota

A avaliação em LP3 acompanha o desenvolvimento técnico do aluno ao longo do ano. O primeiro período combina certificação e trabalhos práticos; o segundo período acompanha principalmente as entregas do TCC e a qualidade do produto final.

1º Período
Primeira Certificação e trabalhos práticos
  • A nota do primeiro período será composta pela Primeira Certificação e pelos trabalhos práticos.
  • A Primeira Certificação valerá 5,0 pontos.
  • Os trabalhos práticos serão avaliados em atividades de 5,0 pontos cada.
  • A nota de trabalhos será calculada pela média ponderada dos trabalhos práticos realizados: Trabalho 01 com peso 1 e Trabalho 02 com peso 2.
2º Período
Entregas do TCC e avaliação final
  • A nota do segundo período será definida em função das entregas realizadas no TCC.
  • Cada marco e alinhamento de entrega de software com os professores será avaliado semanalmente ou quinzenalmente, gerando uma série de notas.
  • A composição final também considerará o resultado do projeto, a avaliação técnica individual e a apresentação para o público e/ou banca de professores externos.
  • O total do segundo período também será de 10,0 pontos.
Aprovação
Condições para aprovação

A aprovação segue as mesmas condições aplicadas em LP2. A média anual é calculada com peso 2 para o primeiro período e peso 3 para o segundo período.

Média Anual = (2 × 1P + 3 × 2P) ÷ 5

Se a média anual for maior ou igual a 6,0, o aluno estará aprovado diretamente. Caso contrário, fará PFV.

Resultado Final = (3 × Média Anual + 2 × PFV) ÷ 5

Após a PFV, o aluno será aprovado se o resultado final for maior ou igual a 5,0.

Use a calculadora abaixo para simular a situação final considerando a nota do primeiro período e a nota do segundo período.

Média anual = (2 × 1P + 3 × 2P) ÷ 5

Aguardando notas

Preencha as duas notas com valores entre 0 e 10.


Referências

Os materiais abaixo são fontes confiáveis e amplamente utilizadas para estudo de arquitetura web e desenvolvimento backend com PHP. Podem ser utilizados para aprofundamento nos temas abordados na disciplina.