经常和许多创业者讨论,发现很多人想法都不错,但是都不知道该如何实现,今天就如何引导大家走出第一步写一篇文章,很多人通常误会一件事情,认为程序员开发可以一步步把自己的想法拼接出来,我有一个功能点,就让程序员去开发,总有一天会实现我的想法。

  确实,一个优秀的程序员能够做到这些,但是我们的思维是广阔,是无限的,总不能让程序员写代码永远跟随着天马行空的想法没有计划的执行吧?在现在这个移动互联网创新的时代,如何进行APP开发第一步我觉得应该是每个创业者思考如何定义你的APP重要属性的问题。

  如果你作为父母,作为老师,你一定经常听到:

  “我不知道作文怎么写”

  “我不知道这个报告怎么写”

  而当你在进一步问他的时候:“那你觉得哪里有问题呢?”

  他们往往回答:“我也不知道哪里有问题。”

  从这里可以发现,在当下标准化教育傻瓜式思维的定义下,很多人已经习惯了等待最佳解决方案的出现,这就是为什么很多软件外包公司在和用户打交道的时候,会不断的调整前期的开发方案,然后配合用户的理解去整理修改,而不是先开发然后跟随用户的想法去做开发调整。因为一旦涉及到开发过程后,如果大量的开发人力成本被第一次的原型想法修改,会伴随很多的开发成本的浪费,但是往往外包公司的收费价格普遍较高,意识决定生存状态,如果不这么收费,外包公司就没有利润,在当下商业社会,不赚钱的事情,会有大部分人去做吗?

  下面进入重点,如何进行APP开发思维定义,依照我们程序员客栈www.proginn.com500+开发经验,我做了一些简单的总结,大致可分为:分析问题、拆分问题、解决问题,而如何应到大家突破这些问题,就是我下面要讲的,以最近开发的一个APP为例:

  第一步思考:如何使用?

  一开始,我们会引导客户也就是这款APP的制作者先从使用者的观点出发:

  如果你希望用APP算出自己的BMI指数,那么在你的想像中会是怎样的一种操作方式呢?

  此时或许还有很多答案:

  我希望说出我的身高和体重,手机屏幕就会出现我的BMI指数

  我想用打字的方式,先输入体重、再输入身高,按下确定按钮屏幕就会出现我的BMI指数

  这个时候我们的客户就会尽情的头脑风暴,并且试图想像自己正在使用这个“还没有开发出来的APP”的情境。

  第二步思考:你的APP大概长成什么样子?

  接下来,我们会引导客户思考:

  根据你提出的想法和情境,你觉得APP会长成什么样子?

  到了这个阶段,整个APP的外观大概已经有了草图,每个界面的原素和对应使用者的作用如何,也有了标准化定义,虽然我们大家都不会设计,但是最起码,如果给你一直铅笔,我相信90%的人都会和我最近沟通的客户一样画出如下的东西出来,你没有必要会电脑操作,这些还原的设计可以请专业的人来给你搞定,如下图:

示意图(一客户手绘)

  第三步思考:拆解、操作

  最后我们会发现每个APP功能原素的定义都应该有他属于的用户行为定义,而每一个行为定义就是你想要做的APP的每一个小小的功能点,这个时候程序员客栈的项目经理团队,会把你的想法功能点进行拆分并解释开发流程如下:

  1,原型设计(高保真还原)

  2,UI设计(视觉体验到位)

  3,前端开发(连条处理)

  4,后端开发(后端开发和后台开发是两码事)

  5,制作A功能

  6,制作B功能

  7,制作C功能

  8,…..

  9,测试、验收

  10,付款。

项目经理的随笔(图)

  最后,我们的程序员客栈的项目经理会根据所有的功能点拆分在匹配平台有这方面工作经验的开发者,组成一个开发团队,根据人力成本估算一个报价给用户,用户如果觉得没有问题可以先托管费用到平台,最后验收后通知平台付款给开发者。

  虽然看起来整个过程有些复杂,但是为什么我们一定要这么强调流程化开发呢?因为我也是一名伪开发者,在大部分程序开发团队中有这么一句话:

  “当问题被清楚的描述的时候,它已经被解决了一半!”(来自美国哲学家和教育家 John Dewey)

  本文属于个人简介,理解不到之处还望海涵,有不懂的地方可以加我微信:jjrc521

别让好想法埋没:如何进行APP开发?的更多相关文章

  1. app开发外包注意事项,2017最新资讯

    我们见过很多创业者,栽在这app外包上.很多创业者对于app外包这件事情不是特别重视,以为将事情交给app外包公司就完事了,实际上不是的.无论是从选择app外包公司还是签订合同.售后维护等各方面都有许 ...

  2. 选择App开发外包时,你该了解哪些法律常识?

    随着App需求的激增,选择App外包服务的客户也多了起来.然而客户和开发方对于其中的法律条款却不甚了解,导致在服务过程中,时常会发生一些分歧和纠纷,最终致使项目搁浅. 为了普及App外包的法律常识,移 ...

  3. 苹果版App开发心得

    这几个月中做的工作包括网站开发.安卓App开发和苹果App开发,前两者用的语言都是我熟悉的java,故苹果知识的学习,较安卓知识的学习,多出「语言基础」一块,其他方面差不多. 之前发过安卓那篇,如感兴 ...

  4. 打通移动App开发的任督二脉、实现移动互联创业的中国梦

    年初的两会上,第一次听到克强总理讲到“互联网+”的计划,当时就让我为之感到无比振奋.我个人的理解是:“互联网+”的本质就是要对传统行业供需双方的重构,通过移动互联技术来推动各个行业上的全民创新,促使中 ...

  5. 十大技巧快速提升原生APP开发性能

    移动应用市场用户争夺战日益激烈,原来做APP拼想法拼创意拼是否抓住用户痛点.现在,精细化用户体验成为了一个APP能否留存用户的关键问题,一旦用户觉得体验不畅,马上就有竞品APP后补,如何开发高性能的移 ...

  6. 【Hybrid App】Hybrid App开发实战

    [引言]近年来随着移动设备类型的变多,操作系统的变多,用户需求的增加,对于每个项目启动前,大家都会考虑到的成本,团队成员, 技术成熟度,时间,项目需求等一堆的因素.因此,开发App的方案已经变得越来越 ...

  7. APP开发外包时常见的错误

    时代在发展,科技在进步,很多企业都想要开发出属于自己的一款APP.然而,不是每个企业都有开发团队或是专门雇一个技术人员来做的,有一个好方法就是把开发APP的工作外包出去,找一个比较好的外包公司根据自己 ...

  8. 混合模式为什么成为占有率最高的app开发技术

    在企业移动战略布局中,app已成为连接业务与用户最主要的载体,同样其开发技术目前也处于十分成熟的阶段,而从技术实现的角度去考量,很多从业者可能并不知道,越是大企业.越是IT预算多的企业,他们的移动ap ...

  9. Hybrid App开发实战

    Hybrid App开发实战 作者 李秉骏 发布于 九月 04, 2013 | [引言]近年来随着移动设备类型的变多,操作系统的变多,用户需求的增加,对于每个项目启动前,大家都会考虑到的成本,团队成员 ...

随机推荐

  1. ZBrush细说3D海盗角色的创建艺术

    一提到海盗,就不由自主想到了<加勒比海盗>,那个帅得一塌糊涂的杰克船长更是让人夜不能寐寝难安,但在艺术的世界里,角色无美丑,今天我们要讲的这位海盗,就与“帅气”八竿子打不着了,它甚至有点古 ...

  2. 克隆CentOS 6.9 配置静态IP,重启网络服务时报错

    克隆的CentOS 6.9 第一次开机时,VMware workstation会为新虚拟机自动生成新mac地址,导致虚拟机配置文件中mac地址与虚拟机新mac地址不一致. 解决方法:1. 修改网卡配置 ...

  3. BZOJ 3878 [AHOI&JSOI2014]奇怪的计算器 (线段树)

    题面:BZOJ传送门 洛谷传送门 线段树好题 题目保证$a$一定是正整数,容易发现计算结果是单调的 我们把询问离线,并按照从小到大排序 某次操作可能导致某些位置达到边界$L/R$ 根据单调性的结论 这 ...

  4. parted分区流程操作

    parted不同于fdisk(<2T)它比fdiskf更加灵活,fdisk需保持后才能生效,而parted是分区后直接生效! 磁盘分区步骤: 1.parted /dev/sdb #进入磁盘分区 ...

  5. weex手机端安全键盘

    github地址:weexSafeKeyboard 效果图: 技术依赖:框架:weex+vue 弹出层:weex-ui 图标:iconfont 说明:1.如果不想用到weex-ui,可以把inputk ...

  6. preload、prefetch的认识

    预加载 现在的网络情况虽然很乐观,但是 defer和async 当浏览器碰到 script 脚本的时候: <script src="script.js"></sc ...

  7. C# List源码分析(二)

    常用操作的复杂度分析 Contains 该方法是一个O(n)的方法,是根据顺序依次遍历整个列表的,观看源码,跟JAVA还是有不少分别的,在上一篇中就有发现,因为C#对Primitive类型是有处理的, ...

  8. python中字符串逆序的实现

    没有直接的逆序函数,有两种常用方式可将字符串逆序,一为切片,一为利用list的reverse,示例如下: #切片x=' y=x[::-1] #reverse函数 y=list(x) y.reverse ...

  9. Oracle查看哪些表被锁住了

    --查看哪些表被锁住了select b.owner,b.object_name,a.session_id,a.locked_mode from v$locked_object a,dba_object ...

  10. 使用Spring Initializer快速创建Spring Boot项目

    目录结构 IDE都支持使用Spring的项目创建向导快速创建一个Spring Boot项目:选择我们需要的模块:向导会联网创建Spring Boot项目:默认生成的Spring Boot项目: 主程序 ...