Introdução à programação em Android e iOS - iOS

2,268 views

Published on

Slides usados na edição de 2011 do Curso de Verão da UCP (http://www2.porto.ucp.pt/cvc/?details=124)

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
2,268
On SlideShare
0
From Embeds
0
Number of Embeds
5
Actions
Shares
0
Downloads
53
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Introdução à programação em Android e iOS - iOS

  1. 1. Programação em Apple iOS Cursos de Verão na Católica 2011 Jorge C. S. Cardoso, Luís Gustavo Martins jorgecardoso@ieee.org, lmartins@porto.ucp.pt
  2. 2. Apple iOS SDK● Software Development Kit (SDK) usado no desenvolvimento de aplicações ○ para iPhone, iPad, iPod Touch (i.e. dispositivos iOS) ○ Gratuitamente disponível para download em: http://developer.apple.com/technologies/tools/xcode.html● Inclui: ○ XCode IDE (Editor, Organizador de Projectos, …) ○ Interface Builder (IB) ○ iPhone / iPad Simulator ○ Compilador e Linker ■ GCC e LLVM, para C, C++, ObjC 2.0 ○ Debugger, Instruments, … ○ Mac e iOS Cocoa / Cocoa Touch APIs
  3. 3. Apple iOS SDK● Xcode 3 ○ Ambiente integrado de desenvolvimento (IDE) de aplicações ■ para iPhone, iPad, iPod Touch e Mac ■ Gratuíto e disponível para download em: http://developer.apple.com/technologies/tools/xcode.html
  4. 4. Apple iOS SDK● Apple Application Programming Interfaces (APIs) http://www.stanford.edu/class/cs193p/cgi-bin/drupal/downloads-2010-winter
  5. 5. Apple iOS SDK● Apple Application Programming Interfaces (APIs) http://www.stanford.edu/class/cs193p/cgi-bin/drupal/downloads-2010-winter
  6. 6. Apple iOS SDK● Apple Application Programming Interfaces (APIs) http://www.stanford.edu/class/cs193p/cgi-bin/drupal/downloads-2010-winter
  7. 7. Apple iOS SDK● Apple Application Programming Interfaces (APIs) http://www.stanford.edu/class/cs193p/cgi-bin/drupal/downloads-2010-winter
  8. 8. Apple iOS SDK● Apple Application Programming Interfaces (APIs) http://www.stanford.edu/class/cs193p/cgi-bin/drupal/downloads-2010-winter
  9. 9. Apple iOS SDK● Cocoa Touch Frameworks ○ Bibliotecas de objectos, métodos, recursos, documentação http://www.stanford.edu/class/cs193p/cgi-bin/drupal/downloads-2010-winter
  10. 10. Desenvolvendo para iOS http://www.stanford.edu/class/cs193p/cgi-bin/drupal/downloads-2010-winter
  11. 11. Delegation ● É um "Design Pattern" em que um determinado objecto "delega" uma determinada tarefa num outro objecto ○ O objecto em que é delegada essa tarefa é conhecido como "delegate object" ○ O delegate object é "especialista" naquela tarefa Delegate Object Some Object A Delegation é uma alternativa à SubClassing (herança) http://www.stanford.edu/class/cs193p/cgi-bin/drupal/downloads-2010-winter
  12. 12. Model-View-Controler ● É uma arquitectura de software em que as APIs Cocoa e Cocoa Touch são baseadas http://www.stanford.edu/class/cs193p/cgi-bin/drupal/downloads-2010-winter
  13. 13. Model-View-Controler ● Model ○ Gere os dados e estado da aplicação ○ Totalmente independente da Interface Gráfica (GUI) da aplicação ○ Pode guardar os dados de forma persistente (e.g. num ficheiro em na memória FLASH) ○ Reutilizável (em diferentes "Views") ● View ○ Apresenta os dados (i.e. o "Model") ao utilizador através de uma GUI ○ Permite ao utilizador manipular e interagir com os dados (i.e. o "Model") ○ Não armazena dados (exceptuando caches) ○ Facilmente reutilizável e possível de ser configurado para representar diferentes dados ● Controller ○ Intermediário entre o Model e a View ○ Actualiza a View quando o Model sofre alterações ○ Actualiza o Model quando a View sofre alterações ○ É tipicamente aqui que a "lógica" da aplicação é implementada
  14. 14. Model-View-Controler ● O Model e a View não comunicam directamente entre elas!! ○ O Model nada sabe sobre a View ○ A View nada sabe sobre o Model ○ O Controller sabe sobre os dois, e é o intermediário entre a View e o Model http://www.stanford.edu/class/cs193p/cgi-bin/drupal/downloads-2010-winter
  15. 15. Model-View-ControlerInterface Builder: Actions e Outlets http://www.stanford.edu/class/cs193p/cgi-bin/drupal/downloads-2010-winter
  16. 16. Hello World iPhoneA Label and a Slider :-) - Ligação da View ao Model - Controller - Interface Builder - IBOutlet - IBAction LIVE CODING DEMO
  17. 17. Hello World iPhoneA Label and a Slider :-) http://www.stanford.edu/class/cs193p/cgi-bin/drupal/downloads-2010-winter
  18. 18. Hello World iPhoneA Label and a Slider :-) http://www.stanford.edu/class/cs193p/cgi-bin/drupal/downloads-2010-winter
  19. 19. ExemploiOS App - FractionCalculator - Uso do classe Fraction criada antes - é o nosso Model - Criação da GUI (a View) - Criação do Controller e do DelegateLive Coding Demo! :-)
  20. 20. Bibliografiahttp://www.amazon.co.uk/Learning-iPhone-Programming-Xcode-Store/dp/0596806434/ref=sr_1_1?ie=UTF8&qid=1315406330&sr=8-1 http://www.amazon.co.uk/Programming-Objective-C-2-0- Developers-Library/dp/0321566157/ref=sr_1_20? ie=UTF8&qid=1315406508&sr=8-20
  21. 21. FimCursos de Verão na Católica 2011 http://porto.ucp.pt/cvc/ Jorge C. S. Cardoso, Luís Gustavo Martinsjorgecardoso@ieee.org, lmartins@porto.ucp.pthttp://slideshare.net/jorgecardoso (tag: cvc2011)

×