Curso Técnico Superior Profissional

Desenvolvimento para Dispositivos Móveis

Área Científica

481 – Ciências Informáticas

Duração

Semestral

Unidade Curricular

Programação Orientada a Objetos

ECTS

3

Horas de Contacto Teórico Práticas

50h

Objetivos da Aprendizagem

1. Desenvolver aplicações móveis multiplataforma utilizando C# e Xamarin;
2. Desenvolver APIs e serviços Web de forma eficiente e segura;
3. Trabalhar com diferentes plataformas (Android, iOS) e tecnologias de desenvolvimento;
4. Implementar boas práticas de programação.

Conteúdos Programáticos

1. Introdução à Programação Orientada a Objetos (POO).

2. Conceitos básicos de POO.

2.1. Paradigmas de programação: Orientação a Objetos vs. Orientação a Procedimentos;
2.2. Abstração e Encapsulamento;
2.3. Herança e Polimorfismo.

3. Classes e Objetos.

3.1. Definição de classes e os seus atributos;
3.2. Criação e manipulação de objetos;
3.3. Relacionamentos entre objetos.

4. Princípios de Design em POO.

4.1. Coesão e Acoplamento;
4.2. SOLID (Single Responsibility, Open-Closed, Liskov Substitution, Interface Segregation, Dependency Inversion);
4.3. DRY (Don’t Repeat Yourself).

5. Padrões de Design em POO.

5.1. Padrões de Criação (Factory Method, Abstract Factory, Singleton);
5.2. Padrões Estruturais (Adapter, Decorator, Facade);
5.3. Padrões de Comportamento (Observer, Strategy, Template Method).

6. Introdução ao Desenvolvimento para Dispositivos Móveis com C#.

6.1. Visão geral do desenvolvimento para dispositivos móveis com C#;
6.2. Plataformas móveis populares (Android, iOS, Xamarin);
6.3. Arquiteturas de aplicações móveis (monolítica, MVVM, MVP);
6.4. Ciclo de vida de uma aplicação móvel.

7. Conceitos básicos de interfaces de utilizador para dispositivos móveis.

7.1. Layout e design de interfaces (layouts, widgets, views);
7.2. Interação com o utilizador (toques, gestos);
7.3. Ciclo de vida de uma tela;
7.4. Ferramentas e tecnologias para desenvolvimento móvel com C#.

8. Visual Studio e Xamarin Studio.

8.1. Linguagem de programação C#;
8.2. Simuladores e emuladores de dispositivos móveis;
8.3. Desenvolvimento de Aplicações Móveis com Xamarin.Forms.

9. Introdução ao Xamarin.Forms.

9.1. Criação de projetos Xamarin.Forms;
9.2. Estrutura básica de uma aplicação Xamarin.Forms;
9.3. XAML para definição de interfaces de utilizador.

10. Trabalho com componentes de interface de utilizador.

10.1. Views, layouts e pages para construir interfaces;
10.2. Data binding para conectar dados à interface;
10.3. Eventos e manipuladores de eventos para interação com o utilizador.

11. Armazenamento de dados em aplicações Xamarin.Forms.

11.1. Application Properties para armazenar dados simples;
11.2. SQLite para armazenamento persistente de dados estruturados;
11.3. Xamarin.Forms.DependencyService para aceder a recursos específicos da plataforma.

12. Consumir APIs e serviços Web em Xamarin.Forms.

12.1. Realização de requisições HTTP para recuperar dados;
12.2. Uso de bibliotecas como RestSharp e HttpClient para simplificar a comunicação com APIs;
12.3. Manipulação de respostas JSON e XML;
12.4. Desenvolvimento de Aplicações Nativas com C#.

13. Introdução ao desenvolvimento nativo com C#.

13.1. Xamarin.Android: desenvolvimento nativo para Android;
13.2. Xamarin.iOS: desenvolvimento nativo para iOS.

14. Trabalho com interfaces.

14.1. Criação de interfaces com AXML (Android) e Storyboards (iOS);
14.2. Uso de controlos e elementos de interface específicos de cada plataforma.

15. Acesso a recursos específicos da plataforma:

15.1. Xamarin.Essentials para funcionalidades multiplataforma;
15.2. Acesso à câmera, localização e outros recursos nativos.

16. Desempenho e otimização de aplicações nativas.

16.1. Melhorias de desempenho em aplicações Android e iOS.

Bibliografia e recursos didáticos recomendados

Mike McGrath, C# Programming in easy steps, 3rd edition: Modern coding with C# 10 and .NET 6. Updated for Visual Studio 2022, In Easy Steps Limited; 3rd edition (31 Mar. 2022).

RB Whitaker, The C# Player’s Guide (5th Edition), Starbound Software (14 Jan. 2022).

Mark J. Price, C# 12 and .NET 8 – Modern Cross-Platform Development Fundamentals – Eighth Edition: Start building websites and services with ASP.NET Core 8, Blazor, and EF Core 8, Packt Publishing; 8th edition (14 Nov. 2023).

Ian Griffiths, Programming C# 10, O’Reilly Media; 1st edition (5 Aug. 2022).

Alessandro Del Sole, Xamarin with Visual Studio: Launch your mobile development career by creating Android and iOS applications using .NET and C# (English Edition), BPB Publications (14 Jun. 2022).

Ed Snider, Mastering Xamarin.Forms: App architecture techniques for building multi-platform, native mobile apps with Xamarin.Forms 4, 3rd Edition, Packt Publishing; 3rd edition (30 Dec. 2019).

INTERNET:
Acesso a publicações da especialidade, gratuitamente, através da rede SPRINGER