Tecnologias e Programação de Sistemas de Informação

Programação Web

<< voltar ao Plano Curricular

Publicação em Diário da República: Despacho n.º 12805/2021 - 29/12/2021

5 ECTS; 1º Ano, Anual, 60,0 TP , Cód. 602420.

Docente(s)
- João Filipe Rodrigues Silva (2)
- Paulo Sérgio Correia Monteiro (1)(2)

(1) Docente Responsável
(2) Docente que lecciona

Pré-requisitos
Não aplicável

Objetivos
1. Tecnologias Web Front-end Fundamentais
Dominar HTML5: Criar estruturas semânticas modernas, elementos multimédia e validação de formulários
Aplicar CSS3: Desenvolver layouts responsivos, animações e técnicas avançadas de estilização
Programar em JavaScript: Implementar interactividade, manipulação do DOM e programação assíncrona
Utilizar Frameworks CSS: Aplicar Bootstrap para prototipagem rápida e Tailwind CSS para desenvolvimento utility-first. Desenvolvimento Back-end e Ferramentas Modernas.
Programar em PHP: Criar aplicações server-side, gerir sessões e implementar APIs RESTful
Desenvolver com React: Utilizar Hooks para gestão de estado e criar componentes funcionais reutilizáveis
Containerização com Docker: Configurar ambientes de desenvolvimento consistentes
3. Frameworks Full-stack e Gestão de Conteúdo
Construir aplicações com Next.js: Implementar Server-Side Rendering (SSR) e optimizações de performance Integrar Headless CMS: Conectar aplicações com Strapi para gestão de conteúdo dinâmico
4. Experiência do Utilizador e Boas Práticas
Desenvolver interfaces responsivas: Criar layouts adaptativos para diferentes dispositivos
Implementar acessibilidade web: Seguir directrizes WCAG para aplicações inclusivas
Construir interacções dinâmicas: Desenvolver funcionalidades que melhoram a experiência do utilizador

Programa
Módulo I - Fundamentos Web
HTML5: Estruturas semânticas, formulários, tabelas e elementos multimédia
CSS3: Seletores avançados, flexbox, grid, animações e media queries
JavaScript: Manipulação do DOM, eventos, programação assíncrona e APIs

Módulo II - Frameworks de Interface
Bootstrap: Sistema de grelha, componentes pré-definidos e customização
Tailwind CSS: Classes utilitárias, configuração personalizada e otimização de produção

Módulo III - Desenvolvimento Server-Side
PHP: Sintaxe básica, estruturas de controlo, funções e orientação a objetos
Integração PHP-HTML: Processamento de formulários e sessões

Conectividade com bases de dados utilizando PDO

Módulo IV - React e Desenvolvimento Moderno
Componentes funcionais e JSX
Hooks: useState, useEffect e hooks personalizados
Gestão de estado e comunicação entre componentes

Módulo V - DevOps e Containerização
Conceitos de containers e virtualização
Docker: Criação de imagens, Dockerfiles e orquestração básica

Implementação de ambientes de desenvolvimento consistentes

Módulo VI - Tecnologias Full-Stack Avançadas
Next.js: Routing, SSR, SSG e otimização de performance
Strapi: Configuração de CMS headless, APIs REST
Integração e deployment de aplicações completas

Metodologia de avaliação
1.Trabalhos Intermediários (30% do total)
Fundamentos de Desenvolvimento Web: 15%
Introdução ao Tailwind: 15%
Cada trabalho intermediário deverá ser um projeto ou conjunto de exercícios práticos que reflita os conhecimentos e habilidades adquiridas durante o respectivo módulo.
2.Projeto Final (70% do total)
Avaliação baseada na complexidade, design, funcionalidade, inovação, e aplicação das técnicas aprendidas.
Deverá incorporar elementos de cada módulo da disciplina, mostrando competência em desenvolvimento web front-end, uso do BootStrap, React, Next.js, e integração com Strapi.
3. Em alternativa quem não conseguir ter nota mínima de 10 valores através da realização dos trabalhos + projeto, poderá em alternativa ir a exame que vale 100%, nota minima de 10 valores.

Bibliografia
- Bocso, L. (2024). Mastering Tailwind CSS: Crafting Modern, Responsive Designs. Independently: Independently published
- Chan, J. (2020). PHP: Learn PHP in One Day and Learn It Well. PHP for Beginners with Hands-on Project. Independently: Independently published
- Ducket, J. (2011). HTML and CSS: Design and Build Websites. USA: John Wiley & Sons
- Ducket, J. (2014). JavaScript and JQuery: Interactive Front-End Web Development. USA: Wiley
- Elshafie, K. e Haider, M. (2022). Designing Web APIs with Strapi: Get started with the Strapi headless CMS by building a complete learning management system API. ePub: Packt Publishing
- Lim, G. (2023). NextJS 13 and React Crash Course: Build a Full Stack NextJS 13 App with React, Tailwind and Prisma backend. Independently: Independently published
- Wieruch, R. (2025). The Road to React: Your journey to master plain yet pragmatic React.js. Germany: Independently published

Método de Ensino
Aulas teórica-práticas expositivas para apresentação dos conteúdos programáticos. Aulas teórico-práticas laboratoriais para resolução de problemas e consolidação de conhecimentos utilizando o computador.

Software utilizado nas aulas
HTML5, CSS3, JavaScript, Bootstrap, Tailwind, PHP, WampServer, React, Docker, Next.js, Strapi

 

Aprovado em Conselho Técnico Cientifico: 17 de junho de 2025

Download da Ficha da Unidade Curricular (FUC)

 

 


<< voltar ao Plano Curricular
NP4552
Financiamento
KreativEu
erasmus
catedra
b-on
portugal2020
centro2020
compete2020
crusoe
fct
feder
fse
poch
portugal2030
poseur
prr
santander
republica
UE next generation
Centro 2030
Lisboa 2020
Compete 2030
co-financiado