Arquiteturas Móveis

Conhecimentos de Base Recomendados

  • Programação orientada a objectos
  • Programação em Java

Métodos de Ensino

Os tópicos são abordados nas aulas teóricas com exemplificação sempre que possível dos conceitos apresentados.
Nas aulas práticas são desenvolvidas aplicações académicas que permitem experimentar as tecnologias e componentes mais habituais.
Os slides fornecidos permitem ao aluno, mesmo não frequentando as aulas, acompanhar os tópicos e servirem de base para pesquisa e estudo da bibliografia adequada.

Resultados de Aprendizagem

  • Entender o funcionamento dos sistemas operativos para dispositivos móveis e as especificidades dos mesmos
  • Entender as vantagens e desvantagens no desenvolvimento de aplicações móveis
  • Desenvolver aplicações nativas para dispositivos móveis
  • Desenvolver aplicações cross-platform

Programa

  • Conceitos sobre sistemas móveis, sistemas disseminados e sistemas ubíquos
  • Conceitos sobre desenvolvimento de aplicações para dispositivos móveis
  • Programação de aplicações para dispositivos móveis
    • Componentes constituintes de uma aplicação móvel
    • Ciclo de vida de uma aplicação
    • Definição de ecrãs e componentes visuais
    • Mecanismos de interação com o utilizador
    • Visualização de listas de dados
    • Persistência de dados
    • Realização de tarefas assíncronas
    • Comunicação com outros dispositivos e Web services
    • Sistemas de localização
    • Sensores
    • Captura de imagens
  • Desenvolvimento de aplicações cross-platform
    • Vantagens e desvantagens do desenvolvimento cross-platform
    • Desenvolvimento de aplicações baseado em componentes
  • Deployment de aplicações móveis

Docente(s) responsável(eis)

Estágio(s)

NAO

Bibliografia

Bibliografia principal

Android

  • JetBrains. (n.d.). Kotlin Programming Language. https://kotlinlang.org/
  • Google. (n.d.). Android. http://www.android.com
  • Google. (n.d). Android Developers. http://developer.android.com

iOS

  • Apple. (n.d.). Apple Developer. http://developer.apple.com
  • Apple. (n.d.). Swift – Apple Developer. https://developer.apple.com/swift/

Flutter

  • Google. (n.d.). Flutter. https://flutter.dev
  • Google. (n.d.). Flutter Documentation. https://flutter.dev/docs
  • Google. (n.d.). Dart programming language. https://dart.dev/
  • Google. (n.d.). Dart documentation. https://dart.dev/guides
  • Google. (n.d.). DartPad. https://dartpad.dartlang.org/
  • Google. (n.d.). Dart and Flutter packages. https://pub.dev/

 

Bibliografia complementar

Android

  • Queirós, R. (2018). Android Profissional – Desenvolvimento Moderno de Aplicações. FCA Editora

Genérico

  • Stack Overflow. (n.d.). Stack Overflow – Where Developers Learn, Share, & Build Careershttp://www.stackoverflow.com