Conhecimentos de Base Recomendados
N. A.
Métodos de Ensino
Nesta unidade curricular são utilizadas as seguintes metodologias de ensino:
Método expositivo: método explicativo onde factos, conceitos, princípios e generalizações são definidos e apresentados pelo professor e discutidos com a turma, seguido de exemplos demonstrativos;
Método experimental: método ativo onde o aluno desenvolve o conhecimento através da resolução de problemas e o desenvolvimento de projetos em dinâmica de grupo e trabalho individual e refletivo.
Resultados de Aprendizagem
Identificar as principais utilizações da Internet;
Descrever o funcionamento de clientes e servidores web;
Descrever o funcionamento do protocolo HTTP;
Estruturar e planear uma aplicação Web;
Testar páginas web com vista a identificar problemas e solucionar os mesmos;
Construir folhas de estilos com CSS valido;
Construir páginas web com frameworks de HTML/CSS;
Desenvolver aplicações client-side com JavaScript;
Saber usar uma biblioteca de JS (frameworks JS);
Programa
Hipermédia
- Utilizações iniciais da Internet
- Hipertexto
- Hipermédia
- Evolução Histórica
Clientes e servidores web
- Conceitos base
- Principais tipos de clientes web
- Browsers
- Browser engines
- JavaScript engines
- Browsers de texto
- Conceitos base sobre servidores web HTTP (HyperText Transfer Protocol)
- Definiçao de protocolo
- Evolução do protocolo HTTP
- A estrutura das transações (pedidos e respostas)
- Principais cabeçalhos
- Os diversos métodos (GET, POST, PUT, DELETE, HEAD, …)
HTML (HyperText Markup Language)
- Conceitos base
- Estrutura base de um documento HTML
- Validação de documentos HTML
- Metatags
- As tags elementares (p, a, hr, br, img, h1…h6)
- Listas
- Tabelas
- Formulários
- Destaques
- Contentores genéricos
- Contentores semânticos
- Multimédia (video, áudio, canvas)
CSS (Cascading Style Sheets)
- Conceitos base
- Validação de ficheiros CSS
- Regras de estilo
- As diferentes formas de definir estilos (inline, interna, externa)
- Os principais seletores
- Formatação de texto
- Cores e backgrounds
- Propriedades de formatação do box-model
- Pseudo classes e pseudo elementos
- Posicionamento de imagens e tabelas
- Formatação de listas
- Tipos de posicionamento (static, absolute, relative, fixed)
- Flexbox
- Construção de layouts assente em grelhas
- Responsive design
- Transformações 2D e 3D
- Transições
- Animações
Frameworks de CSS/HTML
- Conceitos base
- Construção de layouts recorrendo a frameworks de CSS/HTML
JavaScript
- Conceitos base
- As várias formas de utilizar JavaScript (inline, interna e externa)
- Eventos
- Funções
- Variáveis e tipos de dados
- Operadores
- Estruturas de controlo
- Ciclos
- Manipulação de strings
- Manipulação de arrays
- Manipulação de formulários
- Programação orientada a objetos
- Web storage
- Cookies
- Manipulação do DOM
- Fetch API
Framework JS (React)
- Introdução ao funcionamento da Framework
- Base
- JSX
- Eventos
- Import/Export
- Propriedades
- Componentes
- Estilos
- Formulários
- Ciclo de Vida
- Router
- Pedidos Web / Requests
- Organização / Estrutura
Docente(s) responsável(eis)
Estágio(s)
NAO
Bibliografia
Abreu, L. (2015). HTML 5 (4a edição). FCA.
Remoaldo, P. (2011). CSS 3. FCA.
Queirós, R. (2017). Criação rápida de sites responsivos com o Bootstrap. FCA.
Abreu, L., & Carreiro, J. P. (2015). JavaScript 6. FCA.
Portela, F., & Queirós, R. (2018). Introdução ao desenvolvimento moderno para a web. FCA.
Portela, F., & Queirós, R. (2020). Desenvolvimento moderno para a web – do front-end ao back-end. FCA.
Crockford, D. (2008). JavaScript: The Good Parts. O’Reilly Media.
Flanagan, D. (2011). JavaScript: The Definitive Guide. O’Reilly Media.
Haverbeke, M. (2018). Eloquent Javascript. No Starch Press.