IPT Logotipo do IPT

Ano Letivo: 2015/16

Web e Dispositivos Móveis

Application Development for Mobile Devices II

<< back to Curriculum Plan

Publication in the Diário da República: Aviso n.º 12718/2016 - 19/10/2016

6 ECTS; 2º Ano, 1º Semestre, 60,0 PL + 30,0 TP , Cód. 620016.

Lecturer

(1) Docente Responsável
(2) Docente que lecciona

Prerequisites
C# programming language deep knowledge.

XAML/XML basic knowledge are nor mandatory, but are welcome.

Objectives
Learn and master mobile application development, with and without data persistence, for iOS and Android platforms, using the Xamarin.Forms framework.

Program
Cap. 1 - Xamarin.Forms overview
- 'Native' Xamarin vs Xamarin.Forms
- Cross-platform development
- Shared code
- Integrated Development Environments
- Emulators and simulators
- Portable Class Library (PCL) Apps vs Shared Asset Project (SAP) Apps
- Anatomy of a Xamarin.Forms Solution

Cap. 2 - Android and iOS projects
- The Label view
- Padding

Cap. 3 - Using Text
- Wrapping paragraphs
- Text and Background colors
- The Color structure
- Default color scheme
- Font size and attributes
- Text formatting

Cap. 4 - Scrolling the stack
- Stacks of views
- Scrolling contents
- Frame and BoxView
- ScrollView in a StackLayout

Cap. 5 - Dealing with sizes
- Pixeis, Points,dps, DIPs e DIUs
- Metric sizes
- Estimated Font sizes
- Fitting text to available sizes

Cap. 6 - Button clicks
- Processing the click
- Sharing Button clicks
- Anonymous event handlers
- Distinguish views with IDs
- Saving transient data

Cap. 7 - XAML usage
- Properties and Atributtes
- Adding a XAML page to the project
- Formatted text
- Passing arguments
- The x: Name attribute
- Custom XAML-based Views
- Events and Handlers
- Tap gestures

Cap. 8 - Platform-specific API calls
- Preprocessing in the SAP
- Parallel classes and the SAP
- DependencyService and the PCL
- Platform-specific sound generation

Cap. 9 - XAML markup extentions
- Code structure
- Accessing static members
- Recource dictionaries
- Other markup extentions

Cap. 10 - The Bindable infrastructure
- The Xamarin.Forms class hierarchy
- BindableObject and the BindableProperty
- Defining bindable properties

Cap. 11 - Styles
- The basic style
- Styles in code
- Style enheritance
- Implicit styles
- Dynamic styles
- Device styles

Cap. 12 - Bitmaps
- Platform-independent bitmaps
- Streaming bitmaps
- Platform-dependent bitmaps

Cap. 13 - AbsoluteLayout
- AbsoluteLayout characteristics
- Attache bindable properties
- Proportional sizing, coordinates and positioning
- AbsoluteLayout and XAML
- Overlays

Cap. 14 - The interactive interface
- Slider and Stepper
- Switch and Checkbox
- Typing text
- Date and time selection

Cap. 15 - Data Binding: Part I
- Code and XAML
- Source and BindingContext
- The binding mode
- String formatting
- The Path property
- Binding value converters
- Bindings and custom views

Cap. 16 - The Grid and Collections
- The Grid
- Picker
- ListView
- ListView and the MVVM
- TableView

Cap. 17 - Page navigation
- Model pages and modeless pages
- Navigation variations
- Patterns of data transfer
- Saving and restoring the navigation stack

Cap. 18 - Page varieties
- Master-Detail
- Tabbed pages

Cap 19 – Data Binding: Part II and Data Access
- Overview
- The SQLite database
- The SQLite.NET library
- Data Binding
- The interface INotifyPropertyChanged
- ViewModels and the MVVM
- Binding to ViewModels and Data Models
- Using SQLite.NET
- Creating a database
- Using a pre-existent database
- Building the database Path
- Connect by using PCL
- Connect in Android
- Connect in iOS
- Creating Tables
- Using attributes
- Selecting, Inserting, Updating and Deleting rows
- Locking Rows
- Creating a Data Access Layer (DAL)
- Creating a repository
- Managing the repository
- Adding methods to the repositiry

Evaluation Methodology
- A cross-platform development project of an Android and iOS App (Peso 100%).

Project auditions are compulsory.

Bibliography
- Hermes, D. (2015). Xamarin Mobile Application Development. (pp. 297-337). California: Apress
- Petzold, C. (2016). Creating Mobile Apps with Xamarin.Forms. (pp. 1-1050). Redmond: Microssoft Press

Teaching Method
Theoretical and practical classes.

Software used in class
Visual Studio;
Android SDK;
XCode;

 

 

 


<< back to Curriculum Plan
NP4552
Financiamento
KreativEu
erasmus
catedra
b-on
portugal2020
centro2020
compete2020
crusoe
fct
feder
fse
poch
portugal2030
poseur
prr
santander
republica
UE next generation
Centro 2030
Lisboa 2020
Compete 2030
co-financiado