Ficha Unidade Curricular (FUC)
Informação Geral / General Information
Carga Horária / Course Load
Área científica / Scientific area
480 - Informática
Departamento / Department
Departamento de Tecnologias Digitais
Ano letivo / Execution Year
2023/2024
Pré-requisitos / Pre-Requisites
Fundamentos de Programação
Objetivos Gerais / Objectives
Fornecer uma visão integrada dos vários componentes de uma aplicação ou serviço web, apresentando os principais conceitos, problemas, metodologias e tecnologias associadas ao desenvolvimento de aplicações para a World Wide Web. Desta forma, o aluno será preparado para planear, desenvolver e modelar em equipa aplicações web, recorrendo a tecnologias cliente-servidor. O aluno irá: - Aprender a evolução e arquitetura da World Wide Web e reconhecer os seus principais componentes; - Desenvolver aplicações e serviços web com suporte a persistência de dados utilizando tecnologias com relevante adoção na indústria; - Realizar revisão do trabalho de outros colegas; - Desenvolver competências de criatividade, inovação, autoaprendizagem, trabalho em equipa e expressão oral.
Objetivos de Aprendizagem e a sua compatibilidade com o método de ensino (conhecimentos, aptidões e competências a desenvolver pelos estudantes) / Learning outcomes
OA1 Enquadrar e compreender os principais componentes da World Wide Web; OA2 Conhecer e aplicar corretamente o modelo de programação cliente e o paradigma MVC; OA3 Utilizar e estender as tecnologias de servidor para desenvolver aplicações e serviços web; OA4 Integrar aplicações e serviços web com Sistemas de Gestão de Base de Dados; OA5 Compreender o pipeline do ciclo de vida de um projeto para web; OA6 Desenvolver a criatividade, inovação tecnológica, pensamento crítico; OA7 Desenvolver a autoaprendizagem, revisão por pares, trabalho em equipa, expressão oral.
Conteúdos Programáticos / Syllabus
C1 Introdução. A história da Web. Linguagens de programação para a Web; Standards W3C. C2 Arquitetura da World Wide Web. Marcação de telas com HyperText Markup Language (HTML). C3 Programação do lado do cliente. Descrição da estrutura (HTML), folhas de estilo (CSS) e atualização dinâmica da interface gráfica. Validação da entrada; Introdução à segurança do lado do cliente. C4 Programação do lado do servidor. Distribuição de conteúdos estáticos, geração dinâmica de conteúdos e padrão de desenho MVC. Serviços e comunicação entre serviços. Introdução à segurança do lado do servidor. C5 Persistência de dados. Integração com Sistemas de Gestão de Base de Dados C6 Arquiteturas web orientadas para serviços. Serviços Web e Microserviços. Modelos de middleware para a Web. Conteinerização.
Demonstração da coerência dos conteúdos programáticos com os objetivos de aprendizagem da UC / Evidence that the curricular units content dovetails with the specified learning outcomes
O alinhamento entre os componentes do programa (C) e os objetivos de aprendizagem (OA) sçao os seguintes: OA1 - {C1, C2} OA2 - {C2, C3} OA3 - {C4, C5, C6} OA4 - {C4, C5, C6} OA5 - {C2, C4, C5, C6} OA6 - {C2, C3, C4, C5, C6} OA7 - {C2, C3, C4, C5, C6}
Avaliação / Assessment
UC com Avaliação Periódica, não contemplando Exame Final. Pesos da avaliação: - 4 mini-testes individuais de resposta múltipla [40%][10% por mini-teste]. - Projeto [60%] (squad de 2 até 4 membros), com relatório [10%] apresentação em grupo [20%] e discussão oral individual [30%]. Se reprova na época normal (< 8 valores), na média dos mini-testes, o aluno acede ao exame de 1º ou 2ª épocas, valendo 40% da nota em uma avaliação escrita, e sendo obrigatória a aprovação no Projeto em Grupo OU a realização de um Projeto Individual com discussão oral e relatório [60%][20% projeto][30% oral][10% relatório].
Metodologias de Ensino / Teaching methodologies
Total de 150 horas: - Aulas expositivas teórico-práticas: teoria,demonstrações, apresentações audiovisuais (12 h) - Aulas participativas: análise e discussão de casos de estudo,apresentações convidadas (3 h) - Aulas ativas: realização de exercícios, dos entregáveis do projeto de grupo em lab e apresentação do projeto (21h) - Aula de apoio tutorial (1h) - Trabalho autónomo do aluno: auto-estudo, revisão da matéria dada e realização dos entregáveis do trabalho de grupo (113h)
Demonstração da coerência das metodologias de ensino e avaliação com os objetivos de aprendizagem da UC / Evidence that the teaching and assessment methodologies are appropriate for the learning outcomes
É a seguinte a correspondência entre as metodologias de ensino-aprendizagem e os objetivos de aprendizagem (OA): - Aulas expositivas para apresentação oral das unidades de ensino teóricas: OA1, OA2, OA3, OA4, OA5. - Aulas participativas com análise e discussão de casos de estudo: OA3, OA4, OA5. - Aulas ativas com a realização dos entregáveis relativos ao projeto de grupo: OA2, OA3, OA4, OA5, OA6, OA7. - Autoestudo e trabalho autónomo, para consulta da bibliografia, revisão de matéria dada e realização dos entregáveis do trabalho de grupo: OA1, OA2, OA3, OA4, OA5, OA6, OA7.
Observações / Observations
--
Bibliografia Principal / Main Bibliography
Livros de texto: Dean J. (2018). Web Programming with HTML5, CSS, and JavaScript. Ed: Jones & Bartlett Learning. ISBN-13: 978-1284091793. ISBN-10: 1284091791 Menezes N. (2019). Introdução à programação com Python: Novatec. ISBN-13: 978-8575227183. Grinberg M. (2018). Flask Web Development: Developing Web Applications with Python. O'Reilly. ISBN: 978-1491991732 George N. (2019). Build a Website With Django 3: A complete introduction to Django 3. GNW Independent Publishing. ISBN: 978-0994616890. Ahmad H. (2017). Building RESTful Web Services with PHP 7. Ed: Packt Publishing. ISBN-13: 9781787127746. Hillar G. (2016). Building RESTful Python Web Services. Packt Publishing. ISBN: 978-1786462251 Haverbeke M. (2018). Eloquent JavaScript: A Modern Introduction to Programming (3rd. ed.). No Starch Press, USA. Architecture of the World Wide Web, Volume One, W3C Recommendation 15 December 2004, https://www.w3.org/TR/webarch/
Bibliografia Secundária / Secondary Bibliography
Haverbeke M. (2018). Eloquent JavaScript: A Modern Introduction to Programming (3rd. ed.). No Starch Press, USA. Architecture of the World Wide Web, Volume One, W3C Recommendation 15 December 2004, https://www.w3.org/TR/webarch/ Artigos: Fielding, R. T. (2000) REST: Architectural Styles and the Design of Network-based Software Architectures, PhD thesis, University of California, Irvine.
Data da última atualização / Last Update Date
2024-02-16