Código: | LIB10139 | Sigla: | DDM | |
Área Científica: | Informática |
Página Web: | http://arturmarques.com/edu/ddm/ |
Área de Ensino: | Informática |
Sigla | Nº de Estudantes | Plano de Estudos | Ano Curricular | Créditos | Horas Contacto | Horas Totais |
---|---|---|---|---|---|---|
LIB1 | 34 | Despacho n.º 9236/2020, de 28 de setembro | 3º | 6 | 75 | 150 |
Teórico-Práticas: | 70,00 |
Docência - Horas Semanais
|
Docência - Responsabilidades
|
Uma vez obtida aprovação na disciplina, o aluno deverá:
- Ter noção das principais plataformas para desenvolvimento, publicação e distribuição de apps móveis;
- Saber instalar e utilizar um ambiente de desenvolvimento adequado a uma plataforma;
- Compreender o fundamental da plataforma elegida quanto a arquitetura, interface com o utilizador, experiência do utilizador em geral, e acesso a dados;
- Ter capacidade para a criação de apps, na plataforma selecionada, utilizando as ferramentas oficiais;
- Ser capaz de conferir multilinguismo e suporte a recursos alternativos às apps criadas;
- Ser capaz de conceber apps, seguindo abordagens que minimizem a probabilidade de situações ANR (Application Not Responding) e excepções de runtime.
"Ecossistemas" e "Plataformas" para apps móveis
- Perspetivas (provider, user, developer)
Escolha de um "ecossistema"/"plataforma"
- Introdução à plataforma
- Ambientes de desenvolvimento
- Instalação de um ambiente
Aspetos fundamentais de apps na plataforma
- Arquitetura
- Manifest(s)
- Recursos
- Programação
Aspetos de interface
- Componentes de layouts
- Layouts
- Organização e comunicação entre layouts
Dados
- Preferências do utilizador
- Ficheiros
- Bases de dados nativas, com SQLite
Desenvolvimento baseado em padrões
- Models (e.g. dados em SQLite, via OOP em Java)
- Views (e.g. layouts em XML, como recursos de Activities Android)
- Controllers
Especificidades do processo de desenvolvimento na plataforma
- Permissões
- Questões de robustez
Os tópicos permitem ao estudante fazer um caminho que começa por elencar as "plataformas" mais estabelecidas para apps móveis, tomando as perspetivas do fornecedor, do utilizador e do programador.
Elegida uma "plataforma", escolhe-se um ambiente para o desenvolvimento de apps. Instala-se-o, incluindo o suporte à emulação acelerada de dispositivos.
Antes e durante o desenvolvimento de soluções na prática, são discutidos aspetos arquiteturais, de desenho, de interface com o utilizador, e de funcionamento das apps.
O desenvolvimento na prática deverá conferir ao estudante aptidões para ele próprio criar soluções para a plataforma elegida, usando as tecnologias selecionadas.
Apresentações, exemplos e casos de estudo.
Desenvolvimento prático de soluções com as soluções adotadas.
Avaliação:
Trabalho proposto pelo estudante e acordado com o docente (T)
- Teste escrito (E)
- Nota final = 0.4 * T + 0.6 * E
As apresentações, os exemplos e os casos de estudo introduzem, ilustram e concretizam os conceitos, respetivamente, e deverão facilitar o seu entendimento.
O desenvolvimento na prática expõe os estudantes à realidade das soluções adotadas, devendo traduzir-se em aptidões para a criação de apps móveis.
Murphy, M. (2021). The Busy Coder's Guide to Android Development: https://commonsware.com/Android/.
Android Developers - Training. (2023). from https://developer.android.com/training/index.html
Bill Phillips, C. S., Brian Hardy. (2018). Android Programming: The Big Nerd Ranch Guide: Big Nerd Ranch Guides.
Joseph Annuzzi Jr., L. D., Shane Conder. (2015). Introduction to Android Application Development: Addison Wesley.
Utilização regular de soluções que permitem o acompanhamento das sessões e dos alunos, à distância, como o software Zoom.