4. What is the iPhone?
• accelerometer
• gyroscophe
• GPS
• Digital compass
• multi-touch display
• sensors (proximity, ambient light)
• camera (photos, video)
• UMTS/HSDPA, GSM/EDGE,WI-FI, Bluetooth
Friday 22 October 2010
5. What is the iPhone?
Based on a work at cs193p.stanford.edu
Friday 22 October 2010
6. Core OS
OSX Kernel
Mach 3.0
BSD
Sockets
Security
Power Management
Keychain Access
Certificates
File System
Bonjour
iOS
Cocoa Touch
Media
Core Services
Core OS
Based on a work at cs193p.stanford.edu
Friday 22 October 2010
7. Core Services
Collections
Address Book
Networking
File Access
SQLite
Core Location
Net Services
Threading
Preferences
URL Utilities
iOS
Cocoa Touch
Media
Core Services
Core OS
Based on a work at cs193p.stanford.edu
Friday 22 October 2010
8. Media
Core Audio
OpenAL
Audio Mixing
Audio Recording
Video Playback
JPEG, PNG, TIFF
PDF
Quartz (2D)
Core Animation
OpenGL ES
iOS
Cocoa Touch
Media
Core Services
Core OS
Based on a work at cs193p.stanford.edu
Friday 22 October 2010
9. Cocoa Touch
Multi-Touch
Core Motion
View Hierarchy
Localization
Controls
Alerts
Web View
Map Kit
Image Picker
Camera
iOS
Cocoa Touch
Media
Core Services
Core OS
Based on a work at cs193p.stanford.edu
Friday 22 October 2010
20. Hello iPhone MVC
Sta
CS
Fall
Controller
MVC
Model View
action
outlet
target
Then hand out an action to the View.
HelloiPhoneViewController
myButtonPushed
Based on a work at cs193p.stanford.edu
Friday 22 October 2010
21. Hello iPhone MVC
Sta
CS
Fall
Controller
MVC
Model View
action
outlet
target
Then hand out an action to the View.
HelloiPhoneViewController
UILabel
myButtonPushed
Based on a work at cs193p.stanford.edu
Friday 22 October 2010
22. Hello iPhone MVC
Sta
CS
Fall
Controller
MVC
Model View
action
outlet
target
Then hand out an action to the View.
HelloiPhoneViewController
UILabel UIButton
myButtonPushed
Based on a work at cs193p.stanford.edu
Friday 22 October 2010
23. Hello iPhone MVC
Sta
CS
Fall
Controller
MVC
Model View
action
outlet
target
Then hand out an action to the View.
HelloiPhoneViewController
UILabel UIButton
myButtonPushed
UISlider
Based on a work at cs193p.stanford.edu
Friday 22 October 2010
24. Hello iPhone MVC
Sta
CS
Fall
Controller
MVC
Model View
action
outlet
target
Then hand out an action to the View.
HelloiPhoneViewController
UILabel UIButton
myButtonPushed
X UISlider
Based on a work at cs193p.stanford.edu
Friday 22 October 2010