José Carlos Ramalho
Professor/Investigador/Empresário
Dep. Informática - Universidade do Minho
jcr@di.uminho.pt
Horário
Aula Teória:
Aulas Práticas:
Avaliação
Datas importantes
Apresentação da UC e do seu método de funcionamento.
Introdução ao HTML: crash course sobre os conceitos fundamentais na construção duma página web.
Tutorial sobre XML e tecnologias associadas.
Tutorial inicial de nodejs.
Tutorial sobre o Node Package Manager (NPM).
Tutorial sobre o json-server: como criar uma API de dados em 5 minutos!
Tutorial sobre formulários HTML: alguns exemplos.
Como tratar e servir recursos estáticos usados nos websites: folhas de estilo, imagens, snippets de JS.
Como recolher a informação do body de pacotes HTTP e processá-la.
Geração de aplicações web com o Express.
Introdução aos conceitos de roteador, controlador, template de página HTML e modelo.
A linguagem PUG para especificação de templates HTML.
Introdução ao MongoDB: criação de bases de dados e coleções.
Linguagem de query: comandos básicos e suas aplicações.
Introdução à programação do lado do cliente: DOM e framework jQuery.
Construção de pequenos exemplos demonstrativos.
Envio e recepção de ficheiros entre cliente e servidor: upload e download.
Introdução à autenticação: autenticação com username e password.
Json Web Tokens: criação e verificação.
Autenticação utilizando o módulo passport-local-mongoose.
Utilização de Json Web Tokens na proteção de serviços.
Pequena tutorial sobre formatos textuais que iremos usar para assegurar a persistência de dados: CSV, JSON e XML.
Exercício: criação duma template HTML para consulta dum mapa virtual.
Exercício: criação duma script em Python que lê o dataset e povoa a template com a informação criando uma página estática com um índice de navegação.
Especificação em XML do manifesto a ser usado nas submissões dos TPC.
Dataset do Mapa Virtual para os exercícios.
Ferramentas usadas: VS Code, Oxygen, e um browser.
Material desenvolvido na aula: template.html, geraHTML.py, mapa.html e manifesto.xml
Slides apresentados na aula: RPCW2023 e HTML.
TPC1: página web (letra H) + completar o mapa virtual com as ligações de cada cidade (cada ligação deve ser um link com o texto a ser o nome da cidade e a indicação da distância).
Criação dum DTD para um manifesto: manifesto.dtd.
Exercícios de criação de servidores HTTP simples com nodejs:
Ferramentas usadas: VS Code, Oxygen, nodejs, curl, postman, python e um browser.
Dataset dos arqueossítios para o TPC2.
TPC2: O TPC consiste na criação dum servidor dos registos do dataset. Sugere-se a sua divisão nas tarefas seguintes (apenas as 2 primeiras são obrigatórias):
Guião seguido na aula: RPCW2023-aula3.pdf.
Exercícios realizados na aula:
TPC3: O TPC consiste na criação dum serviço de consulta sobre o dataset de pessoas (continuação do trabalho realizado na aula). Sugere-se a sua divisão nas tarefas seguintes:
Guião seguido na aula: aula4.html.
Material de suporte fornecido no início da aula.
Exercícios realizados na aula:
TPC4: This week's Work Assignement has the following tasks:
Guião seguido na aula: aula5.html.
Desenvolvimento da aplicação de gestão de alunos na nova arquitetura.
Aplicação desenvolvida na aula.
TPC5: This week's Work Assignement has the following tasks:
Guião seguido na aula: aula6.html.
Exemplos de ligação ao MongoDB.
Desenvolvimento da aplicação de gestão de alunos com ligação ao MongoDB.
Aplicação desenvolvida na aula.
TPC6: This week's Work Assignement has the following tasks:
Guião seguido na aula: aula7.html.
Construção duma API de dados: Gestão de Exames Médicos Desportivos.
Programação do loado do cliente: pequenas aplicações.
Weekly assignments: from now on students must be fully dedicated to the final project.
Construção de uma aplicação para gestão de ficheiros: upload, download, modais.