How to find us
|
Contacts

Mobile Application Development 2016/2017

  • 5 ECTS
  • Taught in Portuguese
  • Continuous Assessment

Objectives

Once this course is finished, the student ought to be able to build simple object applications for Android mobile devices with a server connection through web services.


The student will also have the knowledge to prepare a critical assessment of mobile applications of equal size or complexity.


This course helps prepare the students for the programmer career path.

Recommended Prerequisites

Familiarity with Java or other object oriented programming language such as C# or VB.NET.
Knowledge acquired in the curricular unit:
Estruturas de Dados.
Engenharia de Software, namely: version control, software testing.
Sistemas Distribuidos, namely: web services.
Tecnologias de Base de Dados, namely SQL syntax, DB management.

Teaching Metodology

Exposition, demonstrations, experimental. Concepts are explained in theory, canonical examples are demonstrated, students experiment by applying concepts to practical problems.

Body of Work

Mobile Market and Development Environment
Graphic Interface Paradigms
Binding with Java
Activity Lifecycle
Mobile Graphical Interface Guidelines
Asynchronous Programming
Networking
Content
APIs and Other Functionality

Recommended Bibliography

Phillips, B. & Hardy, B. (2013). Android Programming: The Big Nerd Ranch Guide. Atlanta: Big Nerd Ranch Guide. Page - 580.

Complementary Bibliography

David J. Barnes & Michael Kölling, Objects First with Java, Third Edition, Prentice Hall / Pearson Education, 2006, ISBN 0-13-197-629X.

Weekly Planning

Week 1: Introduction and Hello World
OSes
Devices
Development approaches
Market and Trends
IDE, SDK + AVD
Debug on Device

Week 2: Introduction to Views
Layouts
Create GUI components by inflating an XML layout
drawable
strings.xml
colors.xml
Task Calculator Demonstration

Week 3: Binding with Java
Using Java for app development
Classes, objects, methods, interfaces and inheritance
Event, ListView and Adapters, custom adapters
Debugging Android apps

Week 4: Activity lifecycle + Intents
Logging the activity lifecycle
startActivity
startForResult
Toast
Dialog
Android memory usage recommendations

Week 5: UI Guidelines
UI Guidelines
Options Menu
Navigation
Animations
Assignments
Calculator for Landscape and Portrait

Week 6: Async Programming
Android performance and responsiveness recommendations
Android threading model
Asyncronous processes in Android app

Week 7: Networking
Async http requests
broadcast receivers

Week 8: Content
SQLite
Shared preferences
External storage
Content providers
JSON objects and JsonReader

Week 9: API
Maps
Vibrator
GPS
Gestures
Multi-touch

Week 10: Project Counseling
Week 11: Project Counseling

Demonstration of the syllabus coherence with the curricular unit's objectives

Since the curricular unit has, as main learning outcomes, the creation and the development of a critical evaluation of mobile applications all course contents are fundamental. From introducing the development environment to the use of advanced APIs, along with Interface, Lifecycle, Networking, etc., all will develop the necessary skils for the student to complete these objectives.

Demonstration of the teaching methodologies coherence with the curricular unit's objectives

The three methologies chosen encompass the technological possibilities students have with mobile applications. Canonical examples serve to propose quick problems the student can assimilate and understand the workflow. By experimenting, students will be allowed to roam free in their solutions while still focusing on each problem’s end goal. In these sessions, students will need to think not only of how might can achieve their goal but also test their ideas against the ideas of their peers. These potentially contradictory views will breed an optimal solution.

relevant generic skillimproved?assessed?
Achieving practical application of theoretical knowledgeYesYes
Adapting to new situationsYes 
Analytical and synthetic skills  
Commitment to effectivenessYesYes
Commitment to qualityYesYes
CreativityYesYes
Ethical and responsible behaviour Yes
Foreign language proficiencyYes 
Information and learning management  
Initiative and entrepreneurship capability  
IT and technology proficiencyYesYes
Problem Analysis and AssessmentYes 
Problem-solvingYesYes
Relating to others  
Research skillsYesYes
Self-assessment  
Teamwork  
This website uses cookies to provide better functionality and for performance measurements (European Union Directive 2009/136/EC)
Please take a few minutes do answer a few quick questions about our website.