Disciplina: Desenvolvimento Web - Front-End

Área Científica:

Ciências Informáticas

HORAS CONTACTO:

80 Horas

NÚMERO DE ECTS:

6,5 ECTS

IDIOMA:

Português

Objetivos Gerais:

1 - Proporcionar ao aluno uma visão global das tecnologias existentes para o desenvolvimento Web (Front-End).
2 - Adquirir competências no âmbito do desenvolvimento de uma aplicação WEB.
3 - Dotar os alunos de conhecimentos teóricos, metodológicos e práticos sobre o desenvolvimento de programas para clientes Web no âmbito das linguagens de Script.

Conteúdos / Programa:

1 - Iniciação à programação com linguagens de script - Front-End.
1.1 - Tipos de dados.
1.2 - Expressões.
1.3 - Estruturas de Decisão e de Repetição.
1.4 - Definição de funções.
1.5 - Definição de listas.
2 - Frameworks Javascript.
2.1 - Anatomia de uma Aplicação Web.
2.2 - Controlo de versões com GIT.
2.3 - Gestão de pacotes NodeJS com o NPM.
2.4 - Hot-Reloading, DevTools e Bundling a partir de um CLI.
2.5 - Estrutura do projeto usando um CLI.
2.6 - Builds para Desenvolvimento e para Produção.
2.7 - Estratégias de implementação (SPA, Isomorphic Apps, etc).
3 - Componentes.
3.1 - Criação de componentes.
3.2 - Uso de templates.
3.3 - Comunicação entre componentes.
3.4 - Aplicação de estilos.
3.5 - Criação de Animações.
4 - Diretivas.
4.1 - Utilização das diretivas básicas.
4.2 - Tipos de Bindings.
5 - Serviços.
5.1 - Criação de Serviços.
5.2 - Conceito de Injeção de Dependência.
5.3 - Comunicação com APIs por HTTP.
5.4 - Utilização de Store centralizada com padrão REDUX.
5.5 - Persistir informação localmente e/ou em Bases de Dados.
6 - Rotas.
6.1 - Criação de rotas no cliente.
6.2 - Links e estruturas de navegação.
6.3 - Guardas.
7 - Formulários.
7.1 - Criação de formulários baseados em template e/ou Reactive.
7.2 - Validações.
8 - Autenticação.
8.1 - Autenticação.
8.2 - Autorização na Aplicação Web.
9 - Estratégias para Aplicações em Dispositivos Móveis.
9.1 - Progressive Web Apps.
9.2 - Hibridas.
9.3 - Nativas.
10 - Implementação de uma Aplicação Web.

Bibliografia / Fontes de Informação:

Damas, L. , 1999 , Linguagem C , Editora FCA
Kernighan, B.W., and Ritchie, D.M. , 1988 , The C Programming Language , Prentice-Hall
Stroustroup, B. , 2000 , The C++ Programming Language, Special Edition , Addison-Wesley
Wirth, N. , 1986 , Algorithms and Data Structures , Prentice-Hall
Sedgewick, R. , 1998 , Algorithms in C , Addison-Wesley
Sedgewick, R. , 2002 , Algorithms in C , Addison-Wesley

Métodos e Critérios de Avaliação:

Tipo de Classificação: Quantitativa (0-20)

Metodologia de Avaliação:
De acordo com o previsto para os Cursos Técnicos Superiores Profissionais.