Dispositivos Móveis e Multimédia

Desenvolvimento para Plataformas Móveis

Objetivos de aprendizagem e a sua compatibilidade com o método de ensino

Pretende-se que, no final da UC, os alunos sejam capazes de:

O1 – Analisar os princípios, arquiteturas e ecossistemas das plataformas móveis, identificando semelhanças, diferenças e desafios específicos dos sistemas Android e iOS;
O2 – Projetar aplicações móveis robustas e escaláveis, aplicando padrões de arquitetura, boas práticas de design de interfaces e princípios de experiência do utilizador (UX);
O3 – Desenvolver aplicações móveis recorrendo a tecnologias nativas e multiplataforma, avaliando criticamente frameworks como Flutter e outras soluções multiplataforma em função de requisitos técnicos e organizacionais;
O4 – Integrar serviços e funcionalidades avançadas em aplicações móveis, incluindo persistência de dados, comunicação em rede, acesso a sensores e serviços externos;
O5 – Demonstrar autonomia e capacidade de julgamento técnico, justificando decisões de desenvolvimento, arquitetura e tecnologia, bem como comunicando soluções a públicos especializados e não especializados.

Ramo

Dispositivos Móveis e Multimédia

Área Científica

Ciências Informáticas

Ano/Semestre

1º / 2º

Carácter

Obrigatório

Horas Totais

168h

Teórico/Prático

42h

Conteúdo programático

1. Introdução ao desenvolvimento para plataformas móveis: evolução, ecossistemas Android e iOS e principais desafios técnicos.
2. Arquiteturas e padrões de desenvolvimento móvel: ciclo de vida das aplicações, padrões arquiteturais e gestão de estado.
3. Desenvolvimento nativo para plataformas móveis: conceitos fundamentais, ferramentas e APIs para Android e iOS.
4. Desenvolvimento multiplataforma: princípios, comparação entre abordagens nativas e multiplataforma e frameworks como Flutter, incluindo critérios de seleção tecnológica.
5. Conceção de interfaces e experiência do utilizador: usabilidade, acessibilidade e adaptação a diferentes dispositivos.
6. Integração de serviços e funcionalidades avançadas: persistência de dados, comunicação em rede, consumo de APIs e acesso a sensores. Testes, qualidade, segurança e distribuição de aplicações móveis.

Demonstração da coerência dos conteúdos programáticos com os objetivos de aprendizagem da unidade curricular

Os conteúdos programáticos da unidade curricular estão alinhados com os objetivos de aprendizagem, assegurando uma progressão lógica entre fundamentos, arquiteturas e práticas avançadas de desenvolvimento móvel. A introdução às plataformas móveis e às suas arquiteturas suporta a análise crítica dos ecossistemas Android e iOS (O1). O estudo de padrões arquiteturais e do ciclo de vida das aplicações fundamenta a conceção de soluções robustas e escaláveis (O2). Os conteúdos relativos ao desenvolvimento nativo e multiplataforma, incluindo frameworks como Flutter, permitem desenvolver e avaliar soluções tecnológicas adequadas a diferentes contextos (O3). A integração de serviços, funcionalidades avançadas e princípios de usabilidade contribui para o desenvolvimento de aplicações funcionais e centradas no utilizador (O4). Por fim, os temas de testes, segurança e distribuição reforçam a autonomia e a capacidade de julgamento técnico dos estudantes (O5).

Metodologias de ensino e de aprendizagem específicas da unidade curricular articuladas com o modelo pedagógico

A unidade curricular é de natureza teórico-prática, com 42 horas de contacto planeadas. O processo de ensino-aprendizagem assenta numa abordagem ativa e centrada no estudante, combinando a exposição e discussão de conceitos teóricos com a sua aplicação prática em contexto laboratorial. Os conteúdos são introduzidos através da apresentação de princípios, arquiteturas e tecnologias de desenvolvimento móvel, seguida da demonstração prática e da realização de exercícios orientados. Os estudantes desenvolvem aplicações móveis, recorrendo a abordagens nativas e multiplataforma, de forma progressiva e incremental, permitindo a consolidação dos conhecimentos adquiridos. Ao longo da UC são promovidas atividades individuais e colaborativas, culminando no desenvolvimento de um projeto final em grupo, no qual os estudantes integram e justificam as decisões técnicas e arquiteturais adotadas.

Avaliação

A avaliação da unidade curricular é contínua, integrando componentes formativa e sumativa. São considerados dois momentos principais de avaliação, baseados no desenvolvimento de trabalhos práticos ao longo do semestre. O primeiro momento de avaliação corresponde a um trabalho prático individual, desenvolvido de forma incremental, que avalia a aquisição e aplicação dos conhecimentos técnicos fundamentais, incluindo o desenvolvimento de funcionalidades específicas de aplicações móveis. O segundo momento de avaliação consiste num projeto final em grupo, que integra os conhecimentos adquiridos ao longo da unidade curricular, incluindo aspetos de arquitetura, desenvolvimento nativo e/ou multiplataforma, usabilidade e integração de serviços, sendo acompanhado de relatório técnico e apresentação oral. Os resultados das avaliações são expressos na escala numérica de 0 a 20 valores. A participação e colaboração dos estudantes ao longo do semestre são consideradas como elementos de valorização transversal. Resultado final = 40% (Trabalho prático individual) + 60% (Projeto final em grupo)

Demonstração da coerência das metodologias de ensino e avaliação com os objetivos de aprendizagem da unidade curricular

As metodologias de ensino adotadas na unidade curricular assentam numa abordagem teórico-prática e centrada no estudante, promovendo a articulação entre aquisição de conhecimento, aplicação prática e reflexão crítica. A exposição e discussão dos conceitos fundamentais das plataformas móveis e das respetivas arquiteturas permitem aos estudantes analisar os ecossistemas Android e iOS e compreender os princípios subjacentes ao desenvolvimento móvel (O1). A realização de exercícios laboratoriais e de um trabalho prático individual possibilita a aplicação progressiva desses conceitos no desenvolvimento de aplicações móveis, fomentando competências de conceção, implementação e autonomia técnica (O2, O3). O projeto final em grupo constitui um momento integrador, no qual os estudantes aplicam de forma articulada conhecimentos de desenvolvimento nativo e multiplataforma, arquitetura de software, usabilidade e integração de serviços, avaliando criticamente as tecnologias selecionadas e justificando as decisões técnicas adotadas (O3, O5). A componente de apresentação oral e relatório técnico reforça as competências de comunicação e argumentação técnica. A avaliação contínua, baseada em trabalhos práticos com ponderações diferenciadas, assegura a coerência entre os objetivos de aprendizagem, os conteúdos programáticos e as metodologias de ensino, valorizando simultaneamente competências técnicas, colaborativas e comunicacionais, em alinhamento com os descritores de aprendizagem do 2.º ciclo.

Bibliografia

Phillips, B., Stewart, C., & Hardy, B. (2022). Android Programming: The Big Nerd Ranch Guide (5th ed.). Big Nerd Ranch Guides.

Alessandria, S. (2023). Flutter Cookbook (2nd ed.). Packt Publishing.

OWASP Foundation. (2026). OWASP Mobile Application Security Verification Standard (MASVS). OWASP Mobile Application Security. Retrieved February 11, 2026.

Material Design. (2026). Accessibility designing (Material Design 3).

Flutter (Google). (2026). State management: Introduction. Flutter Documentation.

Payne, R. (2024). Flutter App Development: How to Write for iOS and Android at Once. Apress.

Tsadok, A. (2024). Mastering iOS 18 Development: Take Your iOS Development Experience to the Next Level with iOS, Xcode, Swift, and SwiftUI. Packt Publishing.

Wang, W. (2023). Pro iPhone Development with SwiftUI: Design and Manage Top-Quality Apps (4ª ed.). Apress.