Iphone SDK Tools = {Xcode + instruments + Dashcode + iphone simulator}


              编码  进程管理  编译    模拟器


架构

Core OS

 Core Services  

Media

Cocoa Touch

 

核心系统层

 核心服务层

媒体层

图形技术

音频技术

视频技术

界面层

UIKit framework

Addressbook framework

Addressbook UI framework

Core location framework


   


iPhone = phone + ipod + net


★ Xcode 简单、高效、强大(only on Mac os x 10.5)


Iphone managemen

coding

Building & debugging

analysis

organizer

Interface builder

simulator

instruments


           程序员:编码,调试……耐心


★  Cocoa Touch       


        Cocoa Touch  面向对象编程 | MVC模型(Modal + View + Controller)


        Objective-C / Objective-C++ / Objective-C 2.0    C based  类C语言


        UIKit framework    控件


 ★ API函数


     CoreOS/kernel/ Core Frameworks /Media/Application Frameworks/Native Applications


      


MAC OS X 10.5    Cocoa 

Iphone     Cocoa Touch

AppKit  

NSView    NSControl

UIKIT

 

UIView   

UIControl

Foundation

 

NSString

NSArray

NSObject

Foudation

NSString

NSArray

NSObject


     类


         

ios中sdk集成 iphone sdk_Core

                            


 


 


★  Media


  UIKit Graphics 、Quartz 2D 、Core Animation 、OpenGL ES 、Media Player、Core Audio


  UIKit { UIImage  UIImageView  UIColor  UIFont/UILabel  UIScreen }


  QUartz 2D { 平面图形}  iPhone 480 X 320


  Core Animation { 动态效果} 图层 主要类CALayers  CAAnimations  


  OpenGL ES { 3D }  GPU图形处理器


  Media Player Framework { 调用内置视频播放器} MPMoviePlayerController


  Core Audio API(Audio Services、Audio Queue Services、Audio File Stream Services )


          OpenAL  3D音效的高级API函数


★ 利用系统资源


     联系人 、Photos 、Camera 、网络连接 、开放的URLs 、Bonjour


★ Designing Applications for iphone


Design Required { hand input手写输入+ Compact Screen + 单任务处理 + …}


 思想:1. Implementation solutions,not features.


       2. Easy to use digital photo editing,organizing,and sharing for casual and                          


          amateur photographers.


       3. Iphone os 是简化版的Mac os x。


       4. Ease of use—simple and straightforward is best.


       5. Ensure Consistency.


       6. Surprise and Delight.


★ iPhone Application Development 


     1. Design  Great Performance, By Design. Limitsed Real Estate/ simple /单                      


            任务


     2. Memory PNG Optimization、Plist conversion、Thumb内存不足—重启


            ->Instruments工具 、内存回收、低内存警告


     3. Responsiveness  20s限制 launch and Quit


     4. Power 


     5. Security   Sandboxing


★ Designing for iphone


    Static Device information {System name / System Version / Model / Name}


          Unique ID  Orientation  


Dynamic Device information 


    Acceleration Data  UIAccelerometer  xyz轴


    Location Data     GPS / WiFi / gprs


 


 ★ SDK for Web Developers


        1. Advanced JavaScript


             getElementsByClassName    /    Selectors API   W3C  CSS3 


        2. CSS Effects


             CSS Transforms  /  CSS Transitions   /  CSS Animations 


    3. Offline Data


             HTML 5 / JavaScript API / SQL Syntax / Transaction Support / Secure 


        4. Gesture Events 


        工具 Iphone Simulator  、 Dashcode