著名iPhone程序开发者精彩演讲苹果之道

来自Big Nerd Ranch的开发者Aaron Hillegass和Joe Conway在上周末的Voices that MatteriPhone大会上做了一场精彩的演说,从开发者的角度详述了一款iPhone应用的生命周期。他们两位都是著名的开发者指导,还是iPhone软件开发的顾问。

  在演讲中,他们解释了iPhone软件如何产生,从开始到完工,其间还向参加会议的开发者提供了他们开发软件的窍门和建议。

  首先,Aaron Hillegass和Joe Conway透露了自己不愿合作的客户,以供其他开发者参考。这些客户分别是:Dreamerguy,Ad guy,web guy,enterprise guy,clone guy,future recipient of aC&D guy,desperately seekingcool。原因是,这些客户有些急于求成,却又不提供任何想法;有些想为自己的网站开发软件,却又想拿着软件到AppStore赚钱;有些甚至早早要求开发者签订协议,似乎早就知道你开发的软件安全性能不够。

  他们提醒开发者在卖力开发软件之前应该先调查清楚客户的背景与要求。接着,他们进入正题,开始解释iPhone软件开发的过程。

  软件能否获得很好的评论,或者是否会被苹果拒绝,归根到底为一个定义:(向什么样的)对象+区别+解决方案。比如,向学生提供的+设计精美的+电子阅读器;向房主提供的+有趣的+预算追踪器。开发者可以慢慢思考,要开发的软件是在何时何地使用,列出可行方案清单,然后才思考整个开发过程。

  下一步是模型阶段,这一阶段需要设计出软件的外观和整体感觉。市面上有很多这样的工具,如sketchpads到stencils 到iPadapplications。我们的目的不仅是将软件的表面做好,还要将软件的功能进行修正,尽可能地简化,只留下必要的功能。苹果最擅长这方面了,甚至在硬件方面他们也能做到舍弃,即使他们知道一部分用户想要这些功能,比如他们将软盘驱动从iMac拿走了,把FM收音功能从iPod拿走,把USB接口从iPad拿走。但这样做的效果则使产品更具目的性,反而更加成功。这一点我们可以从苹果身上学习。

  按照Big NerdRanch的做法,接下来他们将会把软件从UI模式转为代码模式,在一种类似Omnigraffle的程序制作表格,列出代码中模式、价值和控制器,还标出软件的数据,比如它将会储存在哪里,以及它的称号。这些信息均在文档中于参与的开发者共享,而且留着还有用处,如果想把软件移植到其他平台上。

  此时,Big NerdRanch也会为软件做出分析:开发者可以建立一个信息表,随时更新该软件的使用方式,操作方式,以及需要修复的Bug。一些公司甚至还利用专门软件来收集iPhone用户的建议和想法。假设你是为电影公司制作软件,可以进行调查,让用户选出自己喜欢的电影角色,然后可以用观众选出的最受欢迎角色来作为推荐电影的人物,放到即将开发的软件中。

  Aaron Hillegass和JoeConway还提到了估算。如果开发者是为客户开发软件,则必须随时向客户更新软件完工时间。这点可要注意了。Hillegass说,你花在估算的时间越长,你就越擅长估算。但如果你一直都在估算你什么时候能完成开发,你将永远都完成不了。所以,在必要的时候可以将开发时间估算得长一些。BNR的规则是,加一天,并增加时间的单位。怎么说呢?比如一位开发者说他需要5天才能完成,他们将会添加一天,然后加大时间的单位,即用“周”来表示。这样,他们告诉客户的完工时间就是“6周”。

  编码的过程被称为周期。这时,你需要执行软件的一个功能、加入美术效果、从客户获得反馈、修复一些Bug,然后才进入下一个功能的开发。Conway指出,在客户和开发者之间还有一个周期,那就是反应,也可等同于金钱。因此,越快从客户获得反馈,开发进展得越快。

  有意思的是,他们透露孩子是他们见过的最好的测试用户。Conway建议,开发者可以向孩子们展示他们的软件,看看孩子如何操作,如果连孩子都会使用,并且能弄懂你的软件,这说明这款软件很好。

  这时,屏幕上出现关于行销的幻灯片。Aaron Hillegass和JoeConway都承认,他们对软件的行销一无所知。他们只知道需要在AppStore提供软件描述和截图,而且还需要一个网站,评测推荐将会为软件的行销提供不少帮助。开发者往往不参与行销,虽然他们知道行销非常重要。“行销是一个关键。”Hillegass说。

  接着,他们大略提了软件的本地化。Hillegass说,如果开发者想让软件支持世界各国语言,最好延后。因为开发者等待改变软件的语言时间越长,他们实际需要作出的改变越少。一旦准备就绪,开发者即可展开部署。这要根据软件的不同而变化。但如果需要网页服务,Hillegass和Conway推荐亚马逊和谷歌的服务。需要提醒的是,苹果审核软件的时间一般不可预知,所以开发者都不会清楚具体的发布日期。

  最后,他们谈了AppStore拒绝一款软件的几点原因。其中一点是“复制苹果的API(当前的或将来的”。Conway说,开发者的软件常常被苹果没有理由地打回,然后几个月后会发现苹果实际上将他们软件的功能作为苹果官方的功能发布。飞行模式也是一个被拒绝的普遍原因。一款软件的功能必须能在没有网络的情况下使用。所以一款软件能不能在飞行模式下打开是软件会否被拒绝的原因。

  虽然Aaron Hillegass和Joe Conway的演讲主要是针对开发者,但也给我们圈外人解释了软件开发的流程,最后感谢Aaron Hillegass和Joe Conway的精彩演讲。

转载于:https://www.cnblogs.com/T00PCN/archive/2010/04/27/1722157.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值