成功开发iPhone软件的10个步骤

简介:

一年前斯坦福和Apple联手推出了基于iPhone平台的开发课程,这个课程的ppt被放在网上分享,反响非常好。这个学期,斯坦福将课程进行了录像,放在了iTunes university上提供下载,目前这个课程在iTunes的下载排行第一,达到了100万人次的下载。这次给大家分享的是其中关于“成功开发iPhone软件的10个步骤”的讲座,虽然与我们工作中设计软件的应用平台不同,但是还是有很多成功的经验可以借鉴。 

1. 决定要做什么 

人们很容易犯的一个错误是“从结论出发”,比如决定要做一个本地社会关系网的软件,而没有去想究竟做这个软件是想解决什么问题,是为了解决和好友找地方吃饭的问题还是别的什么,如果是针对吃饭地点问题,那么是不是有更加好的解决方法。所以首先要确定的是需要满足什么样的目标用户和需要解决的问题。 

 

最容易成功的一种情况是设计者本身就是目标用户,而要解决的问题也是设计者本身遇到的问题。这样设计者能够经常使用软件,发现其中问题并进行有效迭代。想象别人的需求很困难,必须与目标用户接触、交谈,使用用户研究工作中经常使用的用户画像方法。用户画像并不一定是真实用户,可以是虚拟的,但是要能够代表用户群体。 

 

2. 访问app store 

iPhone上的软件设计者没有多少机会去教育用户熟悉新的设计,这是由于iPhone本身的使用环境限制的,用户的注意力时间有限,耐心也有限,很多时候都是在交通工具上或者在等待的间隙使用的,所以软件的设计是需要用户一看就知道如何使用的。App Store上有非常多的软件,找出热门软件,看看它们是如何设计的。这些热门软件一般都是经过精心设计的,并且通常都是得到用户反馈迭代过几轮的,一些共通的地方可以借鉴参考。“Good artists copy, great artists steal.” 

3. 搜寻所有可能的设计方案 

有的时候设计师心里有一个设计方案,觉得这个方案非常完美,不愿意去考虑是不是有别的设计。但是通常第一个设计方案都不是完美的,即使是苹果的设计师,第一个方案往往都是糟糕的。 

Iphone上的软件有很多局限性: 
1. 小屏幕 
2. 触摸式的输入很不精确,通常需要44像素大小的目标才能有足够的点中率。 
3. 输入更困难,即使有软键盘,相对普通键盘的输入还是困难不少。更多的是传达信息给用户而不是让用户产出信息。简单地说就是读应用多于写应用。 
4. 使用时间比较短,通常一次都是几分钟的使用长度。不一定是用户对软件不感兴趣,而是由一些例如“地铁到站了”的客观情况所决定的。所以设计出的软件一个操作流程不能花很长的时间。 

以iPhoto为例,下图左侧为mac上的iPhoto程序,功能非常全面,编辑图像的能力很强。而右侧是iPhone端的程序,主要的功能是看图。 

 

不能因为功能上的减少就说iPhone端的iPhoto不成功,事实上它是一个非常成功的软件。任何人即使是3岁的孩子也会使用它,它的核心思想就是“小”。只保留那些核心功能,如果缺失了用户就不再使用此软件。 

4. 画草图 

到了这一步,就需要在纸上画出草稿了。例如下图右侧的程序大致对应的草图在左侧。 

 

在做草图的时候尽量多地设计,不同的功能不同的布局。这个是苹果设计师进行设计的方法(creative alternative design),画出的第一个草图是设计师心里一开始最理想的方案,做第二到第四个的时候还比较简单,做到第七个就比较难了,最后三个是非常难的,但也是价值最大的,往往有非常有创意的想法迸发出来。 

 

当有了这些草图以后,需要寻找到目标用户去听他们的意见,比如有同样需求的朋友。他们会反馈一些意见,喜欢什么设计不喜欢哪些地方,这些意见有助于将设计方案进行排除和整合。剩下大约2-3个接受度比较高,没有明显优劣的方案,可以选择一个方案来实现。在这部分花的时间比较多,但是非常值得,因为在之后的过程中不断修改所付出的代价往往是在先期修改的代价的数倍。 

5. 建立纸质原型 

下图中的每张纸代表了一个屏幕上显示的软件界面。这个步骤的价值在于在纸上绘制这些图后就可以得到一些用户实际使用的感受而不必等编程实现。 

 

从第一张开始“OK, 你刚刚打开我的软件”,点击这个按钮就到了第二张纸的屏幕,等等就可以对软件的整个操作流程有直观的感受了。在这个过程中可以收集到比草图阶段丰富得多的用户反馈,哪里用户不知道怎么操作了,哪里容易引起困惑,哪里用户比较喜欢,哪里不喜欢。 

下面这张图是一个iPhone游戏的设计师们做的纸质的原型,模拟真实的iPhone。设计师们做了各种各样的纸片来模拟程序中的各种元素。 

 

6. 工具的使用 ——omnigraffle 

Omnigraffle虽然是个图形编辑软件,但是更加合适做原型设计,里面有丰富的控件库,可以拖拉这些控件来方便地搭建程序界面。一些比较个性的设计或者比较细节的加工可以在photoshop中制作。下面这张图是omnigraffle中用于Iphone平台的控件库。 

 

下面这张图是讲师用omnigraffle做出的软件界面,可以实现到与最终版本像素级精确。 

 

在这个阶段就要进行一些比较细节的内容确定和视觉相关定义,比如颜色的定义等等。建立起精确的原型也方便一个团队多人一起工作,减少沟通成本,避免产生歧义。 

7. 回溯修改 

其实不是一个真正的步骤,但是放在这里说明并不是每个软件都要一步到位,其实是一个迭代的过程,有时候必须要回溯修改。 

下图是讲师最近正在制作的一个软件的界面,在制作具体界面细节中所进行的不同尝试: 

 

也有要进行更加彻底的回溯修改的情况,有的用户在草图阶段反馈说喜欢的东西其实并不是他真正需要的东西,这种情况下就要回到草图阶段进行重新设计。 

8. 开发实现 

这部分不赘述,简单地说就是要注意程序的设计模式,用户界面和后台数据分离。 

9. 测试 

对软件做测试,看看是否文字提示恰当,是否有bug等。这里比较关键的是谁来做测试。 

好友是比较可靠的资源,他们的反馈比较有价值。但是如果本地的目标用户比较难找,比如地震分析软件这种涉及全球性质的用户,就可以使用Mechanical Turk。Mechanical Turk是Amazon的一个服务,对于那些在网上又没有明确事情要做的人,以非常低的报酬,比如几美分,来请他们进行测试。也可以出稍高的价钱请数量比较少但是比较专业的人来进行测试,这样反馈的价值比较高。 

 

10. 发布 

发布软件,在比较前期的版本可能需要界面修改,bug修补,迭代版本。但是通常到后期都是一个比较可喜的结局。 

总结 

几条要注意的原则: 

1.了解你的用户,并与他们接触、交谈。 
2.不要做虚幻的想象的设计,多从成功软件中汲取经验。 
3.软件要设计得“小”。 
4.找到足够多的设计方案,通过数量的累计来得到好的质量。 
5.失败得越早成功得越快。 
6.要做到像素级精确。 
7.记住没有什么是非常宝贵不能舍弃的,不要害怕去修改。 
8.在提交之前进行足够的测试。

 

http://luckeyliu.wordpress.com.cn/2009/10/23/成功开发iphone软件的10个步骤/










本文转自 arthurchen 51CTO博客,原文链接:http://blog.51cto.com/arthurchen/575681,如需转载请自行联系原作者
目录
相关文章
|
18天前
|
编解码 测试技术 iOS开发
iPhone 屏幕尺寸和开发适配
【10月更文挑战第23天】iPhone 的屏幕尺寸变化给开发者带来了一定的挑战,但也为创新提供了机遇。通过深入了解不同屏幕尺寸的特点,遵循适配原则和策略,运用合适的技巧和方法,我们能够为用户提供在不同 iPhone 机型上都具有良好体验的应用。在未来,随着技术的不断进步,我们还需要持续学习和适应,以满足用户对优质应用体验的不断追求。
|
18天前
|
编解码 iOS开发 UED
响应式设计在 iPhone 开发适配中的具体应用
【10月更文挑战第23天】响应式设计在 iPhone 开发适配中扮演着至关重要的角色,它能够帮助我们打造出适应不同屏幕尺寸和用户需求的高质量应用。通过合理运用响应式设计的原则和方法,我们可以在提供良好用户体验的同时,提高开发效率和应用的可维护性。
|
3月前
|
数据采集 iOS开发 Python
Chatgpt教你开发iPhone风格计算器,Python代码实现
Chatgpt教你开发iPhone风格计算器,Python代码实现
|
iOS开发
iPhone 移除描述文件详细步骤(Apple Configurator 2)
iPhone 移除描述文件详细步骤(Apple Configurator 2)
364 0
|
存储 iOS开发 Windows
苹果手机软件备份工具iMazing2023ios设备管理软件
iMazing是一款ios设备管理软件,该软件支持对基于iOS系统的设备进行数据传输与备份,用户可以将包括:照片、音乐、铃声、视频、电子书及通讯录等在内的众多信息在Windows/Mac电脑中传输/备份/管理。iMazing2023下载:http://t.csdn.cn/j8wPO
339 0
|
Shell iOS开发
iOS逆向:tweak开发教程(iPhone/tool)
iOS逆向:tweak开发教程(iPhone/tool)
1159 0
iOS逆向:tweak开发教程(iPhone/tool)
|
编解码 iOS开发
iphone 开发的基本入门知识
iphone 开发的基本入门知识
232 0
「镁客早报」iPhone或将在今年采用三摄;传Facebook致力于开发语音助力服务与亚马逊、苹果竞争
亚马逊向美国Alexa设备推免费音乐服务;视频会议软件开发商Zoom纳斯达克上市。
265 0
苹果手机什么日程安排提醒软件可以事件备忘和随时提醒?
苹果手机上什么日程安排提醒软件可以事件备忘和随时提醒? iPhone手机上有备忘录用来事件备忘,有提醒事项可以日程提醒,iPhone手机上想用一款集备忘与提醒于一体的桌面日程安排提醒软件,可以添加云便签敬业签苹果手机版使用。
1860 0