Aplicações Móveis

Conhecimentos de Base Recomendados

Conceitos de programação orientada a objetos.

Métodos de Ensino

Nesta unidade curricular são utilizadas as seguintes metodologias de ensino:

1. Método expositivo: método explicativo onde fundamentos teóricos e conceitos são apresentados pelo docente e discutidos com a turma. Os conceitos e informações serão apresentados aos alunos através, por exemplo, de apresentações em slides ou discussões orais. Será utilizado nas aulas para a estruturação e esquematização da informação.

2. Método demonstrativo: baseia-se na exemplificação pelo docente de uma operação técnica ou prática que se deseja aprendida. Centra-se na forma como se executa uma dada operação, destacando as técnicas, as ferramentas e os equipamentos mais adequados. Será por exemplo utilizado em aulas práticas e laboratoriais.

3. Método interrogativo: processo que se fundamenta em interações verbais, sob a condução do docente, adotando o formato de questões e respostas. Permite obter maior dinâmica na aula e consolidar a aprendizagem. Será utilizado por exemplo para recordar elementos de aulas anteriores, e em revisões do conteúdo lecionado.

4. Métodos ativos: serão utilizadas técnicas pedagógicas em que o aluno é o centro do processo de aprendizagem, sendo um participante ativo e envolvido na sua própria formação. O docente assume o papel de facilitador, estimulando o pensamento crítico, a colaboração, a criatividade e a autonomia dos alunos. Serão aplicados nas aulas para alcançar um ambiente de aprendizagem dinâmico e mais duradouro.

Resultados de Aprendizagem

Espera-se que no final da unidade curricular o aluno esteja habilitado a:
1. Identificar tecnologias e sistemas operativos para dispositivos móveis;
2. Elaborar aplicações para dispositivos móveis com base no sistema operativo Android.

Programa

1. Introdução à computação móvel
– Dispositivos móveis
– Sistemas operativos para dispositivos móveis

2. Introdução ao sistema operativo Android
– História e versões
– Arquitetura e camadas de software
– O ecossistema Android
– Distribuições Android

3. Android Development Tools
– Android Studio
– Android SDK
– Android Virtual Device (AVD)
– Criação e configuração de AVDs

4. Desenvolvimento de aplicações Android
– Ciclo de vida das Activities
– Elementos da interface gráfica: TextView, EditText, Buttons, etc.
– Layout da interface gráfica

5. Android Activities e Intents
– Invocação de Activities
– Passagem de dados entre Activities

6. Processamento em background em Android:
– Processos e threads
– A Thread de Interface com o Utilizador
– AsyncTask

8. Estado e Persistência:
– Callbacks relacionadas a estado
– SharedPreferences
– Android databases: SQLite

9. Content Providers
– Content Providers nativos
– Content Resolvers

10. Android REST Client
– Retrofit
– Definição da Interface REST
– Configuração e inicialização da framework
– Invocações síncronas e assíncronas

Docente(s) responsável(eis)

Francisco Carlos Afonso

Métodos de Avaliação

No que diz respeito à avaliação estão previstos os seguintes métodos:

1. Avaliação Periódica

Classificação Final = 3 trabalhos práticos (60%) + teste (40%)

a) cada um dos componentes de avaliação possui uma classificação mínima de 40%, sem arredondamento, para que seja obtida aprovação na unidade curricular;

b) a realização dos trabalhos envolve a entrega de programas e relatórios através da plataforma de gestão académica (Inforestudante), e a sua respectiva defesa.

2. Avaliação por Exame

Classificação Final = exame (40%) + projeto (60%)

a) cada um dos componentes de avaliação possui uma classificação mínima de 40%, sem arredondamento, para que seja obtida aprovação na unidade curricular;

b) a realização do projeto envolve a entrega de programa e relatório através da plataforma de gestão académica (Inforestudante), e a sua respectiva defesa.

Em ambos os tipos de avaliação, as seguintes regras são aplicadas:

  • É proibida a utilização de sistemas de inteligência artificial generativa na realização dos trabalhos práticos e projeto, incluindo na programação e na elaboração dos respetivos relatórios.
  • Durante a defesa, o estudante deverá demonstrar conhecimento e domínio sobre os programas submetidos, podendo ser solicitado que justifique as soluções adotadas, explique a sua implementação e efetue as alterações solicitadas.
  • A incapacidade do estudante para demonstrar conhecimento e domínio sobre o trabalho apresentado poderá determinar uma penalização da classificação obtida no respetivo trabalho ou projeto, podendo essa penalização atingir até 100% da classificação.
  • A utilização indevida de sistemas de inteligência artificial será considerada como fraude e poderá conduzir à reprovação na unidade curricular e demais sanções disciplinares.

    Estágio(s)

    NAO

    Bibliografia

    Griffiths, D., & Griffiths, D. (2021). Head First Android Development: A Brain-Friendly Guide (3rd ed.). O’Reilly Media.

    Darwin, I. F. (2017). Android Cookbook: Problems and Solutions for Android Developers (2nd. ed). “O’Reilly Media, Inc.”.

    Meier, R., & Lake, I. (2018). Professional Android (4th. ed.). Wrox.

    Wickham, M. (2018). Practical Android. Apress.