阅读更多

8顶
1踩

移动开发

原创新闻 给移动应用开发新手的6个建议

2011-07-07 13:47 by 见习编辑 jobbole 评论(1) 有5542人浏览

  转到移动应用程序的开发,并不只意味着去适应一个小得多的显示屏。不管是在苹果应用商店(App Store)、微软的Windows Mobile应用商店、Google的Android应用市场(Android Marketplace),还是在消费者和企业关注的其他移动应用站点,如果你希望你的软件被人们发现,你就一定要牢记下面这6个建议。

  移动应用商店已经彻底地颠覆了人们对于买卖软件的旧观念。用户评分和反馈使得移动应用驶向了一个完全不同的方向,甚至连开发人员当初都没有预料到。社区从未如此直接地掌控专有软件的开发过程。针对准备在陌生环境下开发移动应用程序的开发人员,以下是一些小贴士。

  1. 以最小可行的产品作为开始

  你的方法应该是:尽早发布,经常发布。发布一款最小可行的产品可以让你在花费最少代码编写时间的同时获取需求。“在应用商店中,一些最成功的应用程序 却拥有最简单的功能。在你开发出一整套复杂的东西之前,最好花上个周末赶出一个功能单一却强大的产品吧。”在 LincWare担任Global Solutions副总裁,同时身为LincDoc Mobile发行人的丹尼尔·奥乐瑞如是说。

  确定应用程序什么时候达到了可行性阶段,这才是你所面对的难关。功能性和可靠性并不是唯一的先决条件。发布一款用户界面愚蠢丑陋的应用,一般会被用户 评级扼杀。在清新的用户界面上进行构建是很重要的。若是在首发后再对用户界面进行大幅度的调整,用户会很厌烦。很多应用程序都是因为做出了不适宜的调整而 收到了差评和低分,就算那些评分用户可能实际上很喜欢这款产品。

  许多复杂的应用程序都会放出免费版或是低价测试版。喜欢去试用测试版的用户们更能容忍程序中的小瑕疵,尤其是当他们知道修复那些小瑕疵只是时间问题的 时候。人们也很容易接受价格的调整。测试版的试用者们认为他们得到了一些有价值的东西,以作为帮助你测试的回报。从而建立起一个忠实的用户基础。

  2. 使用多种不同的测试技术

  虚拟设备对于开发极有帮助,但是发布软件前,在真实的设备上测试应用程序也是非常重要的。这样有助于在发布日前将漏洞减至最少,因为那些漏洞将会导致永久性的负面评价。给出残酷评价的用户不太可能在一段时间后还回头查看你的应用程序有没有改进。

  我们都会很偏见地认为我们自己的应用程序非常直观。毕竟,我们清楚它是怎么工作的。你应该把你的预发布版应用程序分发给几个不太懂技术的朋友,让他们 去试一下那个用户界面(不要在旁边插嘴或是指指点点,安安静静地让他们试用)然后看看他们使用你的程序的时候有没有问题。问问他们的评价和建议。

  3. 早期反馈很重要

  反馈可以帮助你了解你的应用程序的需求量,也能让你知道用户对这个程序的期望。用户们不会犹豫要不要说出他们的需求。他们也许会要求你加入某种你从没料想过的功能。请放心的让用户把你的应用程序带向新的方向。对一个想法太过依依不舍,可能会使你失去整个市场。

  “去索要评分和反馈,” Hwee-Boon Yar(一个MotionObj的独立开发人员)说,“在价格上动心思,用广告和销售策略去维持你的评级。” Yar建议,让用户感到他们在开发中扮演着更加活跃的角色,这使得应用程序更加完善,消费者也会满意。

  为你的目标用户量身定做广告。针对商务人士的应用程序如果配上浮华的广告就显得不那么专业。商务用户可能更愿意花更多的钱购买一个无广告版的应用程序。普通用户和消费者们就显得不太愿意在应用上花钱。在标价和做出添加广告的决定时,要常将你的对手程序在心中考虑一下。

  最近,有些人开始抵触基于地理位置的广告。一些对私密性敏感的用户拒绝安装有GPS定位功能的应用程序,事实上这一功能并未起到明显的作用。不幸的是,由于这些用户的不了解,那些以GPS为核心功能的应用程序可以在用户不知道的情况下获取地理位置广告。

  4. 保持更新

  应用程序可不像是飞弹,发射出去后就不用管了。成品——这个概念从来都不会有。用户期望着不断的更新,当他们意识到一个项目已经不再发展时,他们便会 蜂拥至你的对手程序那里。不管你是加入新功能还是修复问题,定期更新是很重要的。从当前用户那里获得高评分会让你的收益持续增加,也会吸引新用户。这第3 点也就是乔纳森·丹尼可总结《20条编程经验》中的第19条:没有已经完成的软件

  如果你做出了显著的调整,请确保你当前的变更被列在销售页面的显眼位置。在更新后首次运行的时候也应该显示出另一条简短的,分部分的关于主要变更的表 单。如果不是特别显眼的话,新加功能也许就不会被人们察觉。你总不想因为用户不知道你的程序还有其他功能而去下载其他程序吧。

  5. 推销是应用开发成功的重要部分

  “大部分开发新人总是认为他们应该只致力于付出努力做出好应用,然后把销售交给应用商店打理,”在Arphix游戏公司做iPhone开发的瑞南·罗 波是 Mini Wars和Star Wings两款游戏的发布商,他说,“他们真是大错特错。实际上,一份完整的销售计划,不仅仅只是有帮助而已,它对你在应用商店的应用增加可见性是非常重 要的。”

  “发布的时候要有大爆炸的效果。如果你想花钱去做市场销售和广告,那就在第一天集中去做。”Yar.High说。初期的好评可以获得来自外界诸于科技 新闻网站的广泛关注” 仅供参考。在已有的海量应用程序的重压下,新程序几乎已经半截入土了。如果潜在用户不特意搜索,或者没有外界帮助的话,他们就不太可能会发现你的新应用。

  6. 传统学习有帮助

  AppCanny创始人之一的凯维·特恩博说:“如果你真的要开始的话,上一些相关的iPhone、Android或者黑莓的开发课程。这会让你轻松 很多。”如果没有一个系统性的进展,自学会在你的知识中留下盲点,而你永远不知道这些盲点位于何处。课程可以避免产生知识断层,又可以培养行业内的朋友和 商业关系。

  购买开发类书籍是另一选择。特点是和上课一样都会涵盖相同的内容,但是花费要少很多。互联网是个很好的参考源,但是没有什么比得过你最开始学习的那本书。拜师也可以帮助一个应用开发人员踏出第一步。他们的经验有助于编写代码,创造新观点,或者生涯建议。

 
  原文:Donald Baker  翻译:敏捷翻译 - 蒋少雄

来自: www.jobbole.com
8
1
评论 共 1 条 请登录后发表评论
1 楼 zyl小星星 2011-07-08 09:07
不错不错!值得学习!

发表评论

您还没有登录,请您登录后再发表评论

相关推荐

  • 数据驱动和模型驱动的区别

    数据驱动是通过移动互联网或者其他的相关软件为手段采集海量的数据,将数据进行组织形成信息,之后对相关的信息进行整合和提炼,在数据的基础上经过训练和拟合形成自动化的决策模型。因此,数据驱动的过程是非常复杂的,需要有数据和不断的输入,然后需要模型根据比对决策结果和现实数据把偏差信息反馈给机器学习,在其后不断的机器学习迭代过程中自我完善。:数据驱动是模型去适应数据,模型是根据不同的数据而改变的。在我们身边的数据驱动的例子就是:1、电子购物软件中的定制推送,每个人的推送内容都是不同的,会根据你平时的浏览的数据生成。

  • 低代码(九)低代码平台后设计一:模型驱动

    低代码模型驱动

  • 【模型驱动软件设计】概念形成

    存在不同的模型驱动软件开发方法,每种方法都有自己的术语,这种现象主要是不同的意图和历史造就的产物。在实践中,这并不关键,但是能够引起混淆和限制交流。因此,我们旨在创建一种通用的、概念上的超结构---一种统一的MDSD术语。

  • 模型驱动开发(Model-Driven Development,MDD):提高软件开发效率与一致性的利器

    在软件开发的世界中,提高开发效率和确保代码的一致性是所有开发者和项目经理共同追求的目标。传统的开发方法往往依赖手工编码,存在效率低下和人为错误的风险。而模型驱动开发(Model-Driven Development,简称MDD)正是为了解决这些问题而提出的一种方法。MDD通过构建和使用模型来自动生成代码,不仅能显著提高开发效率,还能确保代码的一致性。本文将详细探讨MDD的原理、优势、实现方法以及实际应用,旨在为广大开发者提供一个全面的指导。

  • 模型驱动技术

    模型驱动就是“为了实现系统的目标,将系统划分为若干层级,在每一个层级上对相关对象进行建模并建立各层模型之间的映射关系,采用人工或计算机软件按照映射规则完成信息从一个层级向另一个层级之间的变换,最终获得系统的目标结果。”      模型驱动是一种新型的软件开发思想,它是继面向对象的软件开发思想之后,出现的一种新的面向模型的软件开发方式。      信息系统开发经历了以处理为中心、数据为中心、对象

  • 模型驱动 ModelDriven

    ModelDriven:模型驱动,对所有action的模型对象进行批处理. 我们在开发中, 在action中一般是用实体对象,然后给实体对象get,set方法。 RegAction{   User user ;   //get/set} 然后在jsp页面中给action中的user属性绑定值是通过如下方式 <s:textfield name="user.name" /><...

  • 模型驱动设计(MODEL-DRIVEN DESIGN)

    为了使领域驱动设计过程更灵活,开发人员需要理解一些众所周知的基本设计原理是如何支持MODEL-DRIVEN DESIGN的,这样才能在设计过程中做出一些折中选择,而又不脱离领域驱动设计轨道。 本文将从理论层面,详细介绍下如何实现模型驱动设计。

  • 深度学习、数据驱动、模型驱动

    我的理解是:机器学习属于人工智能,深度学习是机器学习的子集,数据驱动应该属于大数据。但他们都属于人工智能领域。 有人说通过自动化手段实时收集数据,在线分析相关信息,总结规律,形成数据建模,当用户搜索时自动根据模型对价格进行调整。即进行了“数据采集——数据分析——得到模型——根据模型去分析并调整价格”这样的一个过程,但我认为不是数据驱动,而是模型驱动,根据原有数据生成的模型是不变的,数据经过模型得到结果。而数据驱动是模型去适应数据,模型是根据不同的数据而改变的。 在我们身边的数据驱动的例子就是:1、电子购物软

  • MDD(模型驱动开发)

    前言导读   当下企业软件应用开发面临着需求复杂多变、新的需求和系统不断增长,软件系统变得越来越复杂,普通的软件开发方式难以快速满足用户需求。为了解决这些问题,就出现了很多新的方法,其中最突出的一个就是模型驱动开发 MDD (Model Driven Development)。   基于高度业务模型驱动开发MDD,通过使用高度抽象的领域业务模型作为构件,完成代码转换实现或各种模型驱动引擎配置支撑,降低开发成本,应对复杂需求变更。其基本思想是让开发中心从编程转移到高级别抽象中去,通过模型转成代码或其他构件

  • 模型驱动

    在实际项目开发过程中,一定会遇到建模,一个好的模型能避免很多问题,能有效保证需求方、产品方、开发及运营人员 统一认知。在实际情况下非常重要,简单总结如下,顺序从左至右 分类 业务模型 领域模型 设计模型 产出 业务架构图 功能架构图 系统架构图 解释 确定业务,涉及运作方式。通常需要高层人员确定,属于战略性决策成果 确定功能,涉及动作、角色...

  • 【模型驱动软件设计】分类

    前面已经为MDSD确定了一个统一的术语,所以现在开始研究相关课题的分类。

  • 模型驱动架构设计方法及应用

    MDA作为一种模型驱动的软件开发方法论,通过将模型作为开发的中心,实现了从抽象到具体的转换和自动生成代码的过程。模型驱动架构(MDA)作为一种先进的软件开发方法论,已经在多个行业中证明了其价值。通过将模型置于开发过程的核心,MDA不仅提高了软件开发的效率和质量,还增强了系统的可维护性和可扩展性。随着技术的进步和市场需求的变化,MDA将继续演进,为各行各业提供更加强大和灵活的软件解决方案。

  • 数字技术名词解释—模型驱动和表单驱动

    题图:模型(模特)驱动(开车)https://pixabay.com/模型驱动和表单驱动是在讨论低代码 / 无代码技术时经常遇到的概念,我在前一篇万字长文讲透低代码中把模型驱动和表单驱动列...

  • 模型驱动的方法

    背景介绍 模型驱动的方法 做一件事情用到了模型 案例——武器装备系统效能评估 评估方法介绍 DCS(Damage control system)中,救火系统评估,传统方法如模拟法、多次实验法都有不完善,二者结合,模拟火灾多次试验,最终得到了救火系统的评估。效能评估和系统设计过程迭代、 具体过程如下: 系统目标分析——系统需求:在120s内控制住火情并成功灭火;用例图定义任务系统“综合舰艇系统”的用...

  • 模型驱动架构(MDA,Model Driven Architecture)浅述

    前言<br />西西弗斯是古希腊神话中的科林斯国王,他被罚将一块巨石推到山上,但无论西西弗斯如何努力,每次石头到达山顶之前都不可避免地滚下来,周而复始,永无休止。<br />在《应用MDA》一书中,作者Frankel将IT人比作现代版的西西弗斯,面对日新月异层出不穷的技术平台,不可避免地不断重复一些工作。理想的MDAer,试图阻止这一悲剧的继续发生。今天,我们通过分析MDA的概念,了解其内涵,看看MDA是否有希望完成这个艰巨的任务。定义<br />MDA是由OMG(Object Management Gro

  • 机器学习中的两种主要思路:数据驱动与模型驱动

    在机器学习的研究和应用中,如何从数据中提取有价值的信息并做出准确预测,是推动该领域发展的核心问题之一。在这个过程中,机器学习方法主要依赖于两种主要的思路:数据驱动与模型驱动。这两种思路在不同的应用场景中发挥着至关重要的作用,它们的核心差异在于如何利用数据和模型的关系来进行预测和决策。本文将深入探讨这两种思路的内涵和区别,并阐述它们在机器学习各个阶段中的应用。机器学习通常包括数据预处理、特征工程、模型选择、训练与评估等多个阶段。

  • 领域驱动模型(DDD)在美团外卖活动管理业务的应用

    什么是领域驱动模型? 2004年Eric Evans 发表《领域驱动设计——软件核心复杂性应对之道》(Domain-Driven Design –Tackling Complexity in the Heart of Software),简称Evans DDD,领域驱动设计思想进入软件开发者的视野。领域驱动设计分为两个阶段: 1、以一种领域专家、设计人员、开发人员都能理解的通用语言作为相互交流的工具,在交流的过程中发现领域概念,然后将这些概念设计成一个领域模型; 2、由领域模型驱动软件设计

  • 模型驱动架构MDA

    模型驱动工程(MDE, Model-Driven Engineering)是软件工程的一个分支,它将模型与建模拓展到软件开发的所有方面,形成一个多维建模空间,从而将工程活动建立在这些模型的映射和转换之上。[1] MDE的基本原则是将模型视为第一实体,将所有软件产物当做模型或模型要素。模型驱动工程(Model Driven Engineering, MDE)是一种软件开发范式,其核心思想是通过高层次的抽象模型来描述系统的行为和结构,然后利用模型转换和代码生成技术自动生成部分或全部实现代码。

Global site tag (gtag.js) - Google Analytics