Computação Móvel › 44139

código no paco
área científica
Informática / Sistemas de Informação
ensino teórico-prático (TP) - 3 horas/semana
idioma(s) de lecionação
a inserir brevemente

Handheld devices promise to dominate the future of software platforms as a result of the rapid convergence of computers and mobile phones. Among the existing mobile operating systems, both Android and iOS are the popular options, particularly with developers because of its high level API that allows easy integration with hardware (e.g. GPS, accelerometers, etc) and the availability of web services (e.g. maps). Although initially designed for mobile devices, they are becoming appealing for its other usages (e.g. tablets) because of numerous features found primarily in more ‘powerful’ enterprise solutions.

In this course, we will learn to design, implement, and deploy a location/context-aware Android and iOS application. Topics to be covered include basic user interfaces, application design, concurrency, and location-aware and other context-aware programming. The course may need basic web services/REST concepts for their use as application resources. Parallels between Android, IOS and other solutions like J2EE (an enterprise solution) will be established.

The course objectives are two-fold:

- Hands-on approach on Android and iOS programming (lab and homework).

- Focus on mobile frameworks design patterns and architectural options and establish a parallel between them.


After completing the course, students will:

        The specificities of mobile computing as it relates to architectural and software ‘limitations’ when compared with ‘standard’ program paradigms.
        The architecture, programming model, and features of both Android and iOS. This will include user interface solutions, inter “process” communication mechanisms, persistence and resource management, etc.
    Be able to:
        Propose and implement a mini project in Android and iOS.
        Discuss the similarities and differences between Android, iOS and enterprise solutions (e.g. J2EE).
        Identify and select between the existing options for integrating a mobile application within a heterogeneous network (http, SOA, etc ).
    Learn to:
        Design, implement, and deploy applications in Android and iOS that may interacts with external resources – namely SOA frameworks.


Module 1 – Introduction to mobile computing    

     Basic concepts
    Mobility – Historical evolution and current status
    Mobile and nomadic computing: wireless networks impact on the mobile computing paradigm
    Mobile Market, Operating systems and mobile devices
    Strategies and programming environments
    Future and perspective on mobile devices

Module 2 – Tecnology 1: iOS

    Basic concepts
    Tools and resources
    Lab on basic concepts and application development

Module 3 – Technology 2: Android

    Basic concepts
    Tools and resources
    Lab on basic concepts and application development


This course will have continuous evaluation (avaliação continua). The assessment will be mainly supported on the course project and will consist of 3 main components:

Personal 30% : based on 1 test and quizzes addressing all modules contents
Projects 70% - based on the application concept and both implementation in Android and in iOS


Desejável possuir alguma experiência em programação orientada por objectos (e.g. Java, C++, C#)


The focus of the course is in the production of software application in the mobile computing frameworks addressed in the course: iOS and Android

The course will have two projects in each of the addressed frameworks and these will be the main results of the sources. They should integrate the knwoledge acquired along the lab and lectures classes.

The projects will be implemented by teams of 2 students.

bibliografia recomendada

Programação em Windows Mobile
Wigley, A., D. Moth, et al. (2007). Microsoft Mobile Development Handbook, Microsoft Press.
Jesse Liberty (2005), Programming C#, 4th Edition, O'Reilly Media Java 2 Micro Edition
Li, S. and J. Knudsen (2005). Beginning J2ME: From Novice to Professional, 3rd Edition, Apress.

Este sítio web utiliza cookies sem recolher informação pessoal que permita a identificação dos utilizadores. Ao navegar neste sítio está a consentir a sua utilização.saber mais
Para que esta página funcione corretamente deve ativar a execução de Javascript. Se tal não for possível, algumas funcionalidades poderão estar limitadas.