Ficha
Unidade Curricular: |
Programao de Aplicaes Mveis |
Docente: |
Rui Silva Moreira |
Grau Acadmico: |
Doutor |
Categoria Funcional: |
Professor Associado |
Curso: |
Engenharia Informtica |
Ciclo De Estudos: |
2 Ciclo |
Ano Lectivo: |
2015-2016 |
Semestre Curricular: |
1 Semestre |
N. Total ECTS: |
3 |
N. ECTS Contacto: |
2,5 |
Tipologia Das Aulas: |
Terico-Prtica (TP) e
Prtica-Laboratorial (PL) |
Actualmente, cada vez mais comum e generalizada a utilizao de dispositivos mveis, e.g., telefones mveis ou Smart Phones, Personal Digital Assistants (PDAs), etc. Estes aparelhos evoluram de forma acentuada nos ltimos anos e possuem j capacidades de processamento, comunicao e memria significativas que permitem o desenvolvimento de aplicaes mveis complexas, envolvendo normalmente requisitos grficos e de comunicao considerveis que permitem aos utilizadores aceder infra-estrutura de informao de forma contnua e independentemente da localizao.
Existem muitos aspectos a considerar nas aplicaes mveis que as distinguem das aplicaes fixas/standalone e mesmo das aplicaes distribudas tradicionais. Por um lado estas aplicaes so executadas sobre plataformas e infra-estruturas que podem variar significativamente, tanto em termos de recursos fsicos (e.g., RAM, CPU, resoluo ecrs, etc.) como em termos de capacidades de comunicao (e.g., variedade de redes e protocolos, diferentes nveis de conectividade, flutuaes de largura de banda, etc.). Por outro lado, a natureza e/ou o domnio das prprias aplicaes exigem muitas vezes capacidades de adaptao para responder posio dos clientes/dispositivos mveis mas tambm a diferentes condies ambientais/contextuais (e.g., disponibilidade de recursos, tarefas agendadas, presena/ausncia de outras entidades, etc.). As primeiras, aplicaes mveis sensveis localizao, so j comuns e permitem oferecer informao aos utilizadores ou tomar decises baseados na sua localizao (e.g., lista de pontos de interesse numa dada zona, alternativas de caminhos a seguir, etc.). As segundas, aplicaes sensveis ao contexto, comeam a surgir em vrias reas e domnios de aplicao (e.g., monitorizao ambiental, deteco/alerta de cheias e incndios, controlo de ambientes residenciais, etc.); estas aplicaes dependem muito da interligao de mltiplos sensores e actuadores com um suporte de middleware capaz de monitorizar, gerir e despoletar decises e adaptaes dinmicas do sistema. Ambos os tipos de aplicaes desempenharo no futuro papis importantes no nosso dia-a-dia, contudo, iremos focar-nos principalmente nas aplicaes baseadas em dispositivos mveis.
Neste contexto, esta unidade curricular pretende dotar os alunos do curso de informtica de conhecimentos slidos sobre as tecnologias, plataformas e solues de desenvolvimento mais utilizadas actualmente com dispositivos mveis, nomeadamente as tecnologias J2ME, Android e .NET Compact Framework (CF). Assim, os objectivos principais desta unidade curricular passam pela identificao e caraterizao das principais plataformas mveis existentes, pelo conhecimento dos protocolos de comunicao mais utilizados por estas plataformas e pelo estudo das arquitecturas e das ferramentas de programao mais utilizadas no desenvolvimento de aplicaes mveis para estas plataformas. Os alunos devero, no final do semestre, estar familiarizados com os conceitos e tecnologias mveis e, em especial, a programao de aplicaes sensveis localizao. Devem ainda dominar as principais tecnologias e ferramentas de desenvolvimento de aplicaes mveis existentes e devero ser capazes de desenvolver aplicaes mveis para telefones mveis e PDAs, envolvendo no s os aspectos de interface grfica mais comuns, mas tambm os aspectos de comunicao (e.g., WiFi, Bluetooth, Ird), protocolos de comunicao ao nvel da aplicao (e.g., HTTP, SMS, MMS, Email) e segurana (e.g., criptografia, assinatura de cdigo).
ECTS:
Presencial: 6
No Presencial: 0
Total (Presencial + No Presencial): 6
Tipologia:
(x) Formao Especfica
( ) Formao Bsica
( ) Unidade Curricular de Opo
( ) Projecto de Graduao
Parcela (Horas)
Terica
Terico-Prtica: 16
Prtica
Prtica Laboratorial: 32
Ensino Clnico
Seminrio
Trabalho de Campo: 10
Estgio
Orientao Tutorial: 10
Avaliao:
Nota: 1 ECTS = 26 horas
Linguagens de Programao 2 - Programao Orientada aos Objectos (POO)
Lista de competncias a alcanar no final da unidade curricular de acordo com o formato dos Descritores de Dublin:
1. Conhecimento e capacidade de
compreenso:
1.1. Capacidade de identificao e descrio de vrios tipos de sistemas mveis existentes
1.2. Capacidade de compreenso das tecnologias utilizadas em sistemas mveis
1.3. Capacidade de caracterizao das principais plataformas de desenvolvimento de sistemas mveis
1.4. Domnio das tcnicas e mtodos de estruturao e desenvolvimento de aplicaes mveis para diferentes plataformas
1.5. Domnio das ferramentas J2ME, Android e .NET CF
2. Aplicao de conhecimentos e
compreenso:
2.1. Conhecimentos para utilizar/aplicar a plataforma J2ME e a linguagem Java na estruturao e implementao de aplicaes mveis
2.2. Conhecimentos para utilizar/aplicar a plataforma Android e linguagem Java na estruturao e implementao de aplicaes mveis
2.3. Conhecimentos para utilizar/aplicar a plataforma .NET CF e linguagem C# na estruturao e implementao de aplicaes mveis
3. Realizao de
julgamento/tomada de decises:
3.1. Capacidade para seleccionar e justificar a utilizao de uma plataforma de desenvolvimento mais adequada
3.2. Capacidade para definir a arquitectura e a estrutura mais adequada a uma aplicao mvel
3.3. Capacidade para escolher as solues tcnicas mais adequadas a uma aplicao mvel
4. Comunicao:
4.1. Capacidade de descrever/explicar a estrutura e funcionamento de uma aplicao mvel
4.2. Capacidade para estruturar e desenvolver aplicaes mveis em grupo
4.3. Capacidades de apresentao e justificao de utilizao de aplicaes mveis
5. Competncias de auto-aprendizagem:
5.1. Capacidade/curiosidade para conhecer e explorar ferramentas e linguagens de desenvolvimento de aplicaes mveis
5.2. Capacidades de autonomia e de auto-disciplina para procurar solues alternativas e ultrapassar autonomamente dificuldades inerentes ao desenvolvimento de aplicaes mveis
0. Apresentao
0.1. Enquadramento e Objectivos
0.2. Metodologia e Sistema de Avaliao
0.3. Contedo Programtico e Bibliografia
1. Introduo s Aplicaes Mveis
1.1. Caracterizao das aplicaes mveis
1.2. Evoluo das plataformas e aplicaes mveis
1.3. Caractersticas das plataformas mveis (CPU, RAM, IO)
1.4. Comunicaes sem fios (WiFi, Bluetooth, Ird)
1.5. Plataformas de desenvolvimento de aplicaes mveis
1.6. Anlise de exemplos de aplicaes mveis
2. Desenho e Arquitectura de Aplicaes Mveis
2.1. Separao de aspectos e controlo da execuo
2.2. Aspectos de usabilidade e interface grfica
2.3. Aspectos de desempenho
2.4. Aspectos de execuo e resposta das aplicaes
2.5. Aspectos comunicao, localizao e sincronizao de dados
2.6. Aspectos de segurana em aplicaes mveis
2.7. Linguagens e ferramentas de desenvolvimento
2.7.1. Breve introduo plataforma J2ME
2.7.2. Breve introduo plataforma Android
2.7.3. Breve introduo plataforma .NET CF
2.7.4. Breve introduo plataforma Python (Nokia S60 Module)
2.7.5. Breve introduo plataforma Carbide C++ (Symbian OS)
3. Programao de Aplicaes Mveis em J2ME
3.1. Arquitectura J2ME (CDC & CLDC, MIDP)
3.2. Ferramentas de desenvolvimento (NetBeans e Java ME SDK)
3.3. Ciclo de desenvolvimento e distribuio (JAR/JAD)
3.4. Interfaces grficas e eventos (MIDlets)
3.5. IO e persistncia (RMS)
3.6. Comunicaes e segurana
3.7. Jogos (2D) e Multimdia (Mobile Media)
4. Programao de Aplicaes Mveis em Android
4.1. Arquitectura Android
4.2. Ferramentas de desenvolvimento (Android Studio, Eclipse/Netbeans/Pluggins)
4.3. Interfaces grficas e eventos
4.4. Localizao, Mapas Multimdia
4.5. Recursos e armazenamento de dados
4.6. Comunicaes, segurana e permisses
Designao da unidade lectiva; Horas Contacto (HC) - (T+TP+P+L+TC+OT); Horas de Estudo Individual (HEI); ECTS; Bibliografia (B)
1. Apresentao; HC: 1
2. Introduo s Aplicaes Mveis; HC: 6; HEI: 6; ECTS: 0,5; B: [1], [2]
3. Arquitectura das Aplicaes Mveis; HC: 6; HEI: 6; ECTS: 0,5; B: [1], [2], [3], [4]
4. Programao de Aplicaes Mveis em J2ME; HC: 24h; HEI: 12; ECTS: 1,5; B: [3], [5]
5. Programao de Aplicaes Mveis em Android: HC: 12; HEI: 6; ECTS: 0,5; B: [4]
Horas Contacto (TP+PL): 68
Horas Estudo Individual: 10
Horas Totais: 78
ECTS: 3
N ECTS = N horas/26
O sistema de avaliao desta disciplina segue na generalidade o regulamento pedaggico da UFP e define em especfico as seguintes regras de clculo:
1 -
Avaliao contnua
A avaliao compreende duas componentes: uma componente Terico-Prtica (TP) e uma componente Prtica-Laboratorial (PL). A classificao final da disciplina ser calculada atravs da seguinte expresso:
Nota final = 50% Nota Componente TP + 50% Nota Componente PL
Componente
Terico-Prtica
A componente TP realiza-se de forma contnua e inclui os seguintes elementos de avaliao:
Um teste de avaliao individual: incide sobre os conhecimentos leccionados at ao momento em que ser realizado. O teste realiza-se prximo do fim do semestre (em data a combinar com os alunos) e englobar uma parte terica (e.g., contendo perguntas de escolha mltipla, verdadeiros/falso e respostas de desenvolvimento) e uma parte prtica (e.g., contendo o desenvolvimento de exemplos concretos de aplicaes para as plataformas abordadas nas aulas) .
Desempenho nas aulas: esta componente procurar avaliar a participao e o progresso dos alunos nas aulas e a capacidade para a realizao de exerccios.
A falta aos momentos de avaliao ser convertida numa nota 0 (zero) para efeitos de clculo da classificao. A classificao obtida na componente TP ser calculada atravs da seguinte expresso:
Nota Componente TP = 90% Teste + 10% Desempenho Aluno Aulas
Componente
Prtica-Laboratorial (PL)
A componente PL realiza-se de modo contnuo durante as aulas e atravs da realizao de projectos prticos realizados em grupo (mximo 2 alunos), sobre um ou mais temas propostos durante o semestre. A avaliao da componente PL inclui os seguintes elementos de avaliao:
Especificao sistema/aplicao mvel: os alunos devero entregar um relatrio a meio do semestre (em data a especificar) onde devem desenvolver a ideia e possveis funcionalidades do sistema mvel proposto.
Implementao sistema/aplicao mvel: os alunos devero projectar e desenvolver um sistema/aplicao mvel. Para demonstrar a utilizao e substanciar a exequibilidade do sistema, este dever ser prototipado utilizando as ferramentas/tecnologias abordadas nas aulas. O resultado final dever dar origem a um artigo com os requisitos, arquitectura e funcionalidade do sistema bem como das tecnologias utilizadas. Ter ainda que incluir uma reviso bibliogrfica que demonstre o conhecimento dos alunos acerca das tecnologias e ferramentas utilizadas para o tema concreto proposto. O artigo dever ser entregue em formato electrnico, de acordo com o modelo das revistas do IEEE (a disponibilizar pelo docente) e possuir entre 5 a 6 pginas. Os alunos tero que marcar presena em pelo menos 2 sesses de discusso/anlise do trabalho durante as horas de atendimento para acompanhamento do projecto e/ou esclarecimento de dvidas. O artigo e a implementao devero ser defendidos em apresentao oral no final do semestre.
Desempenho nas aulas: esta componente procurar avaliar a participao e o progresso dos alunos nas aulas e a capacidade para a realizao de exerccios.
A falta aos momentos de avaliao ser convertida numa nota 0 (zero) para efeitos de clculo da classificao. A classificao obtida na componente PL ser calculada atravs da seguinte expresso:
Nota Componente PL = 20% Especificao Sistema/Aplicao Mvel + 70% Defesa Oral da Implementao Sistema/Aplicao Mvel + 10% Desempenho Aluno Aulas
O acesso s pocas de exame, relativas apenas componente TP, faz-se de acordo com o regulamento pedaggico. A componente PL no pode ser efectuada por exame.
2 -
Exames
Os exames sero realizados de acordo com o regulamento pedaggico da UFP nos perodos previstos no cronograma e incidiro sobre a totalidade da matria includa no programa da disciplina. O docente poder solicitar o desenvolvimento de trabalhos com apresentao oral de modo a melhor aferir o nvel de conhecimentos e competncias alcanadas pelos alunos. A classificao final do aluno ser calculada utilizando a equao indicada acima.
Principal
[1] G. Coulouris, J. Dollimore & T. Kindberg, Distributed Systems: Concepts and Design, 4th
Edition, Addison Wesley, 2005.
[2] T. Mikkonen, Programming Mobile Devices: an introduction for
practitioners, John Wiley & Sons, 2007.
[3] K. Topley, J2ME in a Nutshell, O'Reilly Java series, O'Reilly,
2002
[4] J. Box, D. Fox, Building Solutions with the Microsoft .Net Compact
Framework: Architecture and Best Practices for Mobile Development,
Addison-Wesley, 2003.
[5] Android Developers, http://developer.android.com/, visitado em Setembro 2010.
Complementar
[6] M. Juntao Yuan, Enterprise J2ME: Developing Mobile Java
Applications, Prentice Hall PTR, 2004.
[7] P.
Yao, D. Durant, .NET Compact Framework Programming with C#, Microsoft .NET
Development Series, Prentice Hall PTR, 2004.
Computador Porttil
Ambientes de desenvolvimento
Netbeans IDE, http://www.netbeans.org/downloads
Eclipse IDE, http://www.eclipse.org/downloads/
Android SDK + ADT, http://developer.android.com/index.html
Visual Studio &
.NET Compact Framework (CD-ROM)
Apresentao dos objectivos, programa, bibliografia e mtodo de avaliao. Introduo s Aplicaes Mveis: caracterizao das aplicaes mveis, evoluo das plataformas e aplicaes mveis, caractersticas das plataformas mveis (CPU, RAM, IO), comunicaes sem fios (e.g., WiFi, Bluetooth, Ird, etc.), plataformas de desenvolvimento de aplicaes mveis, anlise de exemplos de aplicaes mveis. Arquitectura das Aplicaes Mveis: separao de aspectos e controlo da execuo, aspectos de usabilidade e interface grfica, aspectos de desempenho, aspectos de execuo e resposta das aplicaes, aspectos de comunicao, localizao e sincronizao de dados, aspectos de segurana em aplicaes mveis, linguagens e ferramentas de desenvolvimento (cf. J2ME, Android, .NET CF, Python - Nokia S60 Module; Carbide C++ - Symbian OS). Programao de Aplicaes Mveis em J2ME: arquitectura do J2ME (CDC & CLDC, MIDP), ferramentas de desenvolvimento (NetBeans), ciclo de desenvolvimento e distribuio (JAR/JAD), interfaces grficas e eventos (MIDlets), IO e persistncia (RMS), comunicaes e segurana (dados/rede), jogos (2D) e multimdia (Mobile Media); Programao de Aplicaes Mveis em Android: arquitectura Android, ferramentas de desenvolvimento (Eclipse + ADT pluggin), interfaces grficas, localizao e mapas, multimdia, recursos e armazenamento de dados, segurana e permisses.
Presentation
of the goals, syllabus, bibliography and evaluation methods. Introduction to mobile applications:
characterization of mobile applications, evolutions of mobile platforms and
mobile applications, characteristics of the mobile platforms (CPU, RAM, IO),
wireless communication (e.g., WiFi, Bluetooth, Ird, etc.), mobile applications development platforms,
analysis of mobile application examples. Mobile applications architecture:
separation of concerns/aspects and execution control, usability aspects and
graphic interface, performance aspects, responsiveness aspects, communication,
local and data synchronization aspects, security aspects of mobile
applications, programming languages and development tools (cf. J2ME, Android,
.NET CF, Python - Nokia S60 Module; Carbide C++ - Symbian OS). Programming
mobile applications with J2ME: J2ME architecture (CDC & CLDC, MIDP),
development tools (NetBeans), development cycle and
distribution (JAR/JAD), graphical user interfaces and events (MIDlets), IO and persistency (RMS), communications and
security, games (2D) and multimedia (Mobile Media), games and multimedia
(Mobile Media); Programming mobile applications with Android: Android
architecture, development tools (Eclipse + ADT pluggin),
GUIs, location and maps, multimedia, resources and data storage, security and permissions.
Course Title: Programao
de Aplicaes Mveis / Mobile Applications Programming |
Code |
|||||
Language of Instruction 12.1.1.1
PT/UK
|
Assessment Method Exame
& Projecto Exam
& Project |
Level of Course Undergraduate |
Number of Credits 3 ECTS |
|||
Year of Studies |
Name of Lecturer Rui Moreira |
Spring Semester x |
Total Hours: 78 |
|||
Course Objectives: Caracterizao
e evoluo das aplicaes e plataformas
mveis; Desenvolvimento de aplicaes mveis. Characterization and evolution of mobile
applications and platforms; Development of mobile applications. |
||||||
Course Description: 1. Introduo s Aplicaes Mveis 2. Desenho e Arquitectura
das Aplicaes Mveis 3. Programao de Aplicaes Mveis em J2ME 4. Programao de Aplicaes Mveis em Android |
1. Introduction to Mobile Applications 2. Design and Architecture of Mobile
Applications 3. Programming mobile Applications with J2ME 4. Programming mobile Applications with
Android |
|||||
Obligatory Reading |
[1]
G. Coulouris, J. Dollimore
& T. Kindberg, Distributed
Systems: Concepts and Design, 5th Edition, Addison Wesley, 2011. [2]
T. Mikkonen, Programming
Mobile Devices: an introduction for practitioners,
John Wiley & Sons, 2007. [3]
K. Topley, J2ME in a Nutshell, O'Reilly Java series,
O'Reilly, 2002 [4]
Android Developers,
http://developer.android.com/, visitado em Setembro 2010. [5]
J. Box, D. Fox, Building Solutions
with the Microsoft .Net Compact Framework: Architecture and Best Practices for Mobile Development, Addison-Wesley,
2003. |
|||||
Supplementary Reading |
[6] M. Juntao Yuan, Enterprise J2ME:
Developing Mobile Java Applications, Prentice Hall PTR, 2004. [7] P. Yao, D. Durant, .NET Compact Framework Programming with C#,
Microsoft .NET Development Series, Prentice Hall PTR, 2004. |
|||||
Method of Teaching |
Aulas
tericas e prticas / Theoretical and practical classes |
|||||
Prerequisites |
Programao
OO & Redes de Computadores / OO Programming
& Computer Networking |
|||||
Assessment method |
Exame
& trabalhos. Exam & projects. |
|||||
Responsible person |
Rui Moreira |
e-mail:
rmoreira@ufp.edu.pt |
||||
Modelo A3ES: PAM
Esta unidade curricular pretende dotar os alunos de conhecimentos slidos sobre as tecnologias, plataformas e solues de desenvolvimento mais utilizadas atualmente com dispositivos mveis. Os objectivos principais desta unidade curricular passam pela identificao e caraterizao das principais plataformas mveis existentes, pelo conhecimento dos protocolos de comunicao mais utilizados por estas plataformas e pelo estudo das arquiteturas e das ferramentas de programao mais utilizadas no desenvolvimento de aplicaes mveis para estas plataformas. Os alunos devero ficar familiarizados com os conceitos e tecnologias mveis existentes, dominar as principais tecnologias e ferramentas de desenvolvimento de aplicaes mveis e ser capazes de desenvolver aplicaes mveis para telefones mveis e PDAs, envolvendo no s os aspectos de interface grfica mais comuns, mas tambm os aspectos de comunicao ao nvel da aplicao (e.g., HTTP, etc.) e segurana (e.g., criptografia, assinatura de cdigo).
This course aims to
provide students with solid knowledge about the technologies, development
platforms and solutions currently used for existing mobile devices. The main
objectives of this course go through the identification and characterization of
the major available mobile platforms, the knowledge of the used communication
protocols by most of these platforms and the study of architectures and
programming tools used for developing mobile applications on these platforms.
Students should be familiar with the concepts and existing mobile technologies,
mastering key technologies and mobile application development tools and be able
to develop mobile applications for mobile phones and PDAs, involving not only
the aspects related with graphical interfaces, but also the aspects of
communication at the application level (e.g., HTTP, etc.) and security (e.g.,
encryption, code signing).
1. Introduo s Aplicaes Mveis
2. Desenho e Arquitetura das Aplicaes Mveis
3. Programao de Aplicaes Mveis em J2ME
4. Programao de Aplicaes Mveis em Android
1. Introduction to
Mobile Applications
2. Design
and Architecture of Mobile Applications
3. Programming mobile
Applications with J2ME
4. Programming mobile
Applications with Android
Os contedos programticos esto coerentes com os objectivos de aprendizagem na medida em que abordam os temas principais sobre a caracterizao das plataformas mveis existentes bem como a programao de aplicaes para estas plataformas, que devero ser dominados pelos alunos no final da unidade curricular. Em particular comea-se por abordar os conceitos fundamentais inerentes aos diferentes aspectos que caracterizam as plataformas e ferramentas mveis existentes bem como a estruturao de aplicaes para estas plataformas. Particulariza-se inicialmente o estudo nas ferramentas J2ME e posteriormente na plataforma Android. Todos os temas abordados so exemplificados com a aplicao em vrios exerccios concretos. Os objectivos da aprendizagem esto portanto alinhados com os temas abordados tanto ao nvel terico-prtico como prtico, sendo aplicados em exemplos variados concretos tanto nas aulas como em trabalhos para casa.
The contents are
consistent with the learning objectives since they address the main issues on
the characterization of existing mobile platforms and programming applications
for these platforms, which must be mastered by the students at the end of the
course. In particular it begins by addressing the fundamental concepts
associated with the different aspects that characterize the existing mobile
platforms and tools as well as the structure of applications for these
platforms. In particular, initially the study covers the J2ME framework and later
the Android platform and tools. All topics covered are exemplified with several
practical exercises. The learning objectives are therefore aligned with the
themes addressed both at the practical and theoretical-practical levels, and
applied on various concrete examples both in classes and homework assignments.
Esta unidade curricular est organizada em aulas terico-prticas (TP) e prticas (PR). A metodologia de ensino utilizada no mbito das aulas TP baseia-se na exposio oral dos contedos programticos e na sua imediata exemplificao em exerccios concretos sobre os temas abordados nomeadamente na programao de aplicaes mveis para as plataformas abordadas. Paralelamente, no contexto das aulas prticas laboratoriais, os alunos tm oportunidade de aplicar e desenvolver exerccios adicionais que complementam a base de experincias com os temas abordados. A avaliao contnua, contemplando em partes iguais a componente TP e PR. A componente TP avaliada por um exame realizado durante o semestre. A componente PR avaliada pela realizao de um projeto prtico cujos requisitos so propostos durante o semestre.
This course is organized
into theoretic-practical (TP) and practical (PR) classes. The teaching
methodology used within TP classes is based on the oral presentation of the course
contents with exemplification of concrete exercises covering the presented
topics, especially he one related with programming mobile applications for the addressed
platforms. Meanwhile, in the context of laboratory classes, students have the
opportunity to apply and develop additional exercises that complement the basis
of experience with the covered topics. The assessment is continuous,
contemplating in equal parts the TP and PR components. The TP component is
assessed by an exam at the end of the semester. The PR component is assessed
through practical projects whose requirements are proposed during the semester.
As metodologias de ensino aplicadas nesta unidade curricular procuram levar os alunos a contactar e a conhecer os diferentes aspectos das plataformas e ferramentas mveis existentes, bem como a implementao de aplicaes para estas plataformas. Procura-se ainda que os alunos desenvolvam competncias prticas na estruturao e desenvolvimento de aplicaes mveis concretizados nas ferramentas de desenvolvimento propostas. As aulas terico-prticas e em particular as aulas prticas laboratoriais permitem um contato permanente com a modelizao e implementao de aplicaes mveis, facilitando portanto o progresso gradual no desenvolvimento destas aplicaes para as plataformas existentes. Esta experincia e contato com contextos prticos concretos permite melhorar o conhecimento das plataformas mveis e ferramentas de desenvolvimento existentes, que essencial para aumentar as competncias tcnicas e de programao nesta rea.
Teaching methodologies
applied in this course seek to lead students to contact and know the different
aspects of the existing mobile platforms and tools as well as the
implementation of applications for these platforms. Furthermore, it intents students
to develop practical skills in structuring and developing mobile applications,
implemented using the proposed mobile tools. The theoretic-practical classes,
and in particular the laboratory classes, allow permanent contact with modeling
and implementation tasks of mobile applications, thus facilitating the gradual
progress in developing these applications for existing platforms. This
experience and contact with concrete practical contexts improves the knowledge about
mobile platforms and existing development tools, which is essential for increasing
the technical and programming skills in this area.
[1] G. Coulouris, J. Dollimore & T. Kindberg, Distributed Systems: Concepts and Design, 5th Edition, Addison Wesley, 2011.
[2] T. Mikkonen, Programming Mobile Devices: an introduction for practitioners, John Wiley & Sons, 2007.
[3] K. Topley, J2ME in a Nutshell, O'Reilly Java series, O'Reilly, 2002
[4] Android Developers, http://developer.android.com/, visitado em Setembro 2010.
[5] J. Box, D. Fox, Building Solutions with the Microsoft .Net Compact Framework: Architecture and Best Practices for Mobile Development, Addison-Wesley, 2003.