iPhone SDK Technology Layers
supports - iPhone, iPad
- Core OS
- LibSystem library - access to low level and system functions
- threading (POSIX threads)
- networking (BSD sockets)
- file system access
- standard I/O
- Bonjour and DNS Services
- Locale Information
- memory Allocation
- Math Computations
- Core Services
- system services all iPhone applications use
- frameworks and libraries:
- core foundation framework - C based interfaces :
- collection data types (arrays, sets)
- application bundle support
- date and teim management
- raw data management
- preferences management
- URL & Stream services
- Thread & Run-loop
- Port & socket communication
- CFNetwork framework
- C based interfaces surrounding networking
- BSD Sockets
- FTP & HTTP(s) communication
- Bonjour Network services
- DNS Host resolution
- Encrypted SSL or TLS
- Security framework - built in security
- Certificate & Key management
- Generate pseudo-random numbers
- Keychain
- SQLite library - database support, including local database tables.
- XML libraries - support for XML, opensource for parsing and translating XML to HTML
- Media
- Quartz - library for 2D, vector graphics, images
- Core Animation - Objective C for animation, window transitionsand feedback
- OpenGL ES - mobile version for OpenGL - 3D graphics, gamming
- Aduio
- Core Audio & Audio Toolbox framework- short sounds, vibration, play and capture audio
- OpenAL - 3D spatial audio, used in gamming sometimes.
- Video
- MediaPlayer framework - compression for video and audio, MPEG, etc.
- Cocoa Touch
- primary event driven and interface (GUI), access built in camera, etc.
- UIKit framework - GUI and events
- Application integraton - use other applications via system message (i.e. call phone, open safari, drop a pin in maps app, display youtube or create a mail, or your own other applications
- Graphics and windows
- Views = a few is the layout.
- View have controls.
- Event- handling
- MULTI TOUCH EVENTS model : instead of mouse and keyboard use one or more fingers and tracking (location and direction of movement) to manipulate. Recognize gestures and give responses.....Zoom in response = pinch gester. Scroll = flick gesture
|