Se ha denunciado esta presentación.
Utilizamos tu perfil de LinkedIn y tus datos de actividad para personalizar los anuncios y mostrarte publicidad más relevante. Puedes cambiar tus preferencias de publicidad en cualquier momento.

iOS Dev Intro

iOS intro for the Multimedia course at KU Leuven

  • Inicia sesión para ver los comentarios

iOS Dev Intro

  1. 1. IOS DEVELOPMENT INTRODUCTION Gonzalo Parra #mume12 October 5, 2012
  2. 2. A smartphone is a mobile phone thatoffers more advanced computing ability and connectivity than a contemporary feature phone. Source: LP33.TV
  3. 3. WHAT IS THE IPHONE?• accelerometer• Three-axis gyro• Assisted GPS• Digital compass• multi-touch display• sensors (proximity, ambient light)• camera (photos, video)• UMTS/HSDPA, GSM/EDGE, WI-FI, Bluetooth
  4. 4. IOS?• iPod Touch• iPhone• iPad
  5. 5. WHAT IS THE IOS? Based on a work at
  6. 6. iOS Core OSCocoa Touch OSX Kernel Power Management Media Mach 3.0 Keychain Access BSD CertificatesCore Services Sockets File System Core OS Security Bonjour Based on a work at
  7. 7. iOS Core ServicesCocoa Touch Collections Core Location Media Address Book Net Services Networking ThreadingCore Services File Access Preferences Core OS SQLite URL Utilities Based on a work at
  8. 8. iOS MediaCocoa Touch Core Audio JPEG, PNG, TIFF Media OpenAL PDF Audio Mixing Quartz (2D)Core Services Audio Recording Core Animation Core OS Video Playback OpenGL ES Based on a work at
  9. 9. iOS Cocoa TouchCocoa Touch Multi-Touch Alerts Media Core Motion Web View View Hierarchy Map KitCore Services Localization Image Picker Core OS Controls Camera Based on a work at
  10. 10. TYPES OF DEVELOPMENT• Native Apps• Mobile Web Apps• External frameworks
  11. 11. NATIVE APPLICATIONS• iOS SDK (requires an Intel Mac)• Language: Objective-C• Tools: XCode• Apple Developer Program • AppStore
  12. 12. EXAMPLES
  13. 13. MOBILE WEB APPLICATIONS• Language: HTML*, Javascript, CSS • Frameworks: Sencha Touch, jQueryMobile, ...• Tools: HTML* editor (DashCode), Safari• Can be displayed in “every” smartphone * PHP, JSP, ASP, ...
  14. 14. EXAMPLESiUi: iPhone User Interface Framework
  15. 15. EXTERNAL PLATFORMS• PhoneGap, Titanium,... • requires iOS SDK• Language: HTML, Javascript, CSS
  17. 17. COMPONENTS• iOS SDK (requires an Intel Mac) • Frameworks: Foundation, UIKit, Core Data, Core ... • Design strategy: MVC• Language: Objective-C• Tools: XCode (iOS Simulator), Instruments• Apple Developer Program
  18. 18. MVCModel View Controller
  19. 19. MVC MVC Controller Model ViewIt’s all about managing communication between camps St C Based on a work at Fa
  20. 20. MVC: CONTROLLER MVC Controller outlet Model ViewControllers can also talk directly to their View. St C Based on a work at Fal
  21. 21. MVC: VIEW MVC should target will did Controller data count outlet at da de ta le g so at u action e rc eModel ViewNo. The Model is (should be) UI independent. St C Based on a work at Fal
  22. 22. MVC: MODEL MVC should target will did Controller data count outlet at da de Notification ta le & KVO g so at u action e rc e Model ViewNow combine MVC groups to make complicated programs ... St C Based on a work at Fal
  23. 23. MVCMVCs working together Stanford CS193p Fall 2010 Based on a work at
  24. 24. OBJECTIVE-C
  25. 25. OBJECTIVE-C .h .mInterface Implementation
  26. 26. CLASSES From: “The Objective-C Programming Language”
  27. 27. METHODS[myArray insertObject:anObject atIndex:0]; From: “The Objective-C Programming Language”
  28. 28. PROPERTIES @property BOOL flag;.h @property (nonatomic) NSString *nameObject; @synthesize flag = _flag;.m @synthesize nameObject = _nameObject; From: “The Objective-C Programming Language”
  29. 29. HELLO IPHONE!
  30. 30. HELLO IPHONE!
  31. 31. HELLO IPHONE MVC MVCHelloiPhoneViewController target Controller outlet X action myButtonPushed Model View UISlider UILabel UIButton Then hand out an action to the View. Sta CS Based on a work at Fall
  33. 33. CALCULATOR
  34. 34. MVC
  36. 36. CODE• HelloiPhone:• Calculator:• MapApp:
  37. 37. QUESTIONS? THANKS! @gaposx
  38. 38. REFERENCES• CS193P: Developing Applications for iOS, Stanford University:• HelloWorld Tutorial:• iPhone Programming Tutorials:• Learning Objective-C: A Primer: