利用iOS技术特性打造最佳体验
当中,这种应用可以运行在任何类型的iOS设备当中。它会自动判断当前的设备环境,并在用户体验形式上作出相应的调整,例如可以通过不同的方式对用户界面进行渲染,在功能方面也会根据当前平台的具体情况发生相应的改变。
对技术开发人员来说,通用型应用是个好消息,它可以避免不同版本所带来的重复性工作,极大地提高开发流程的生产效率。不过站在设计师的角度,你仍然需要准确的把握不同设备在用户行为及体验模式上的差异,确保设计方案可以适用于它们各自的系统平台。而这种方式带来的进步也是显而易见的。在必须针对不同设备打造两个独立版本的情况下,你需要对已有的一套设计方案进行改造,在界面元素和交互形式等方面进行全方位的调整,以适应新的设备平台,这必然会导致两个版本的应用在界面外观和操作方式等方面存在显著的差异;而对于通用型应用,你可以在设计过程中预先考虑到两种设备的不同特性,并且能够在同一套设计方案中针对这些差异来定义局部样式或功能的响应式调整规则,从最大程度上确保用户体验的一致性。很多同时拥有两款设备的用户会在不同的需求情景中使用不同的设备来操作同一款应用,在这种情况下,具有高度一致性的界面外观及交互方式就显得尤为重要了。
![](../img/eep/emb/emb-50696uahwf53gwrr.jpg)
原生应用与Web应用
如今,关于是否真正有必要开发iOS原生应用的问题,行业中还存在一些争论。在当前复杂纷乱的移动市场中,除非你有足够的资源,否则为每一种设备平台都单独打造一套原生应用确实是不大现实的。在很多情况下,移动版本的网站或是Web应用都可以很好的满足需求。不过,在你着手于Web方向的解决方案之前,有一些重要的问题必须事先了解清楚。
在用户体验方面,Web应用与原生应用之间的差距还是很明显的。如今,有很多前端开发技术框架可以帮助我们打造基于浏览器运行的Web应用。这些应用无论在界面外观还是交互方式上都与原生应用非常相似。然而,在实际的移动设备上下文环境中,它们仍然无法与原生的方式相提并论。正像我们在前文中了解到的,苹果为开发者们提供了很多强大的图形技术工具,作为设计师,我们不仅可以在设计方案中打造高度定制化的界面外观及交互效果,更重要的是,这些视觉表现形式都是在系统级别甚至硬件级别的功的支持下高性能的展现出来的。相比之下,基于浏览器运行的Web应用解决方案通常只能提供数量非常有限的交互效果,而且在性能方面更是无法与原生应用相比。所以,如果你正在考虑使用Web应用的方式来打造产品,至少要确保你的设计方案当中不会涉及到过多的视觉交互效果。
其实,对于这两类应用,我们并不需要争论出一个非此即彼的结果,因为iOS允许这两种形式在同一款应用中兼容并包的存在,一款原生应用当中完全可以同时包括本地化的界面控件与基于Web的页面元素。这种混合型应用可以将两者的优势淋漓尽致地发挥出来,使其自身即能拥有原生应用高性能的表现力以及对硬件功能的访问能力,同时又具备Web应用的动态性与灵活性,并且更加易于维护。
最终,对于解决方案的选择仍然取决于产品自身的功能及用户体验需求。任何关于产品实现方式的讨论都必须从这个角度出发。
总结
苹果为开发者们提供了四种用于渲染界面对象和视觉交互效果的关键性图形技术:
UIKit:用于绘制界面元素的最重要的图形技术框架,在整个交互体验的塑造过程中扮演着至关重要的角色。
核心图形(Core Graphics):二维图形渲染引擎, 可以动态地渲染很多不同种类的图形,并能使应用具有创建和编辑图像的能力。在必要的时候,也可以用来对普通用户界面元素进行渲染。
核心动画(Core Animation):可以在UIKit的配合下,为用户界面中的交互对象创建动态的视觉效果。
OpenGL ES:面向嵌入式设备的OpenGL 3D图形应用程序接口(API),可以通过硬件加速功能来渲染具有高性能表现的2D或3D图像。
以这些图形技术为后盾,我们可以在设计中大胆地尝试高度定制化的用户界面外观与独特的交互表现形式,甚至可以对交互对象的视觉行为属性进行实验性的探索。
通用型应用的概念可以帮助我们有效的降低开发与维护成本,将iPhone与iPad两种版本的产品需求整合到同一款应用当中。不过,作为设计师,你仍然需要准确的把握两款设备在用户行为及体验模式上的差异,确保设计方案可以适用于它们各自的系统平台。这种方式所带来的进步是,你可以在设计过程中预先考虑到两种设备的不同特性,并在同一套设计方案中针对这些差异来定义局部样式或功能的响应式调整规则,从最大程度上确保用户体验的一致
- Windows CE 进程、线程和内存管理(11-09)
- RedHatLinux新手入门教程(5)(11-12)
- uClinux介绍(11-09)
- openwebmailV1.60安装教学(11-12)
- Linux嵌入式系统开发平台选型探讨(11-09)
- Windows CE 进程、线程和内存管理(二)(11-09)