时间:2014-07-03 13:23:24 来源: 复制分享
苹果(Apple)的iPhone使得触摸界面和小型应用程序成为一种生活方式。谷歌(Google)的Android紧随其后,在以摩托罗拉(Motorola)Droid为代表的日益增长的智能手机中提供相似的功能和性能。现在,Android已经得到了开放手机联盟(OHA)的支持。
苹果的iPad则进一步增加了取胜的把握(参见“Success Of iPad Is All About Software”)。iPad不是第一台平板电脑,但却是至今最成功的平板电脑(参见“With iPad Sales Soaring, Are Netbooks Dead?”)。
iPad的硬件与iPhone稍有不同(参见“Inside The Apple iPad”)。但底层软件允许应用程序既能在iPad也能在iPhone上运行。大多数用户从苹果的应用商店(App Store)获取iPad和iPhone的应用程序。
Android用户可以从Android Marketplace获得大部分应用程序。这些用户几乎无一例外地使用基于Android的智能手机,因为他们正是Android的初始目标用户。有许多公司正准备将Android应用到包括平板电脑的其它领域。基于Android的Archos 10平板电脑就是有望冲击市场的Android平板电脑之一。
iPhone、iPad和Android智能手机成功的关键是拥有第三方提供的大量应用程序。底层操作系统、编程构架和用户界面使得这些平台更加容易使用。另外,高分辨率触摸屏和低功耗、高性能多核处理平台提供了高度交互的触摸应用所需的响应性能。
一个典型的Android硬件平台包含有无数的接口,如果所有接口同时工作,那么连十年前的台式机都将甘拜下风。现在,三维加速计可以跟踪设备的动作,而照相机可以进行记录。编程框架的杂务程序(chore)可轻松实现这种硬件的编程,如今这些编程框架已经成为标准的软件组件。
触摸编程构架
众所周知,触摸界面只是苹果平台和Android平台上使用的编程构架的一部分。但它们从初始设计阶段就包含在架构内,不是外加到现有构架上去的。
苹果的iOS为苹果开发人员提供了操作系统(OS)和Cocoa-Touch构架。这种构架基于Mac OS的Cocoa应用编程接口(API),并采用模型-视图-控制器(MVC)架构。
SQLite是上述混合型系统的一部分,虽然系统中的Core Data存储中心也能用来存储信息。其它主要组件包括Core Data、Core Audio、OpenAL、Media Library和WebKit等。视频组件则包括Core Animation、OpenGL ES和Quartz 2D。
默认的编程语言是Objective-C,这是一种C语言的面向对象的扩展和超集。Objective-C与许多开发人员熟悉的C++有很大的差别。Objective-C使用Smalltalk类型消息传递,这使得转发消息成为可能。
苹果的软件开发套件(SDK)可以处理iPhone和iPad应用程序。它包含了许多工具,比如种用来创建应用程序用户界面的图形化编辑器Interface Builder。