@ValenW
2016-06-30T12:01:19.000000Z
字数 1003
阅读 1704
博客
教程
嗯,给的标题是移动应用开发,首先说说移动应用的总体设计和组织的方式。
如同网页以URL为组织结构,现在的许多应用都是以页面来组织应用的,以微信为例,用户登陆后微信可以分为四个页面,也即底部导航栏的聊天,联系人,发现和我:
用户可以通过左右滑动或点击底部来在这些页面中进行切换,然后在这四个页面中再通过点击操作,进入某个子页面或触发某些功能,像是点击“发现-朋友圈”就进入朋友圈页面,点击“我-[二维码图标]”就会弹出自己的微信二维码。
总的组织像是:
当然也有其他的组织方式,比如知乎的通知页面会有个顶部的二级导航栏:
也有的应用会以侧边栏的形式对页面进行组织,如滴答清单:
点击左上角菜单栏:
但大多数的移动应用都是以页面的方式进行组织,也就可以用类似的方法进行分析,设计。
首先上个图
这是一般应用开发的流程,当然省略了很多细节,也没有考虑迭代开发什么的,但总体流程是一样的。
首先是有个idea,也就是你得大概知道自己要做个什么东西出来,或者你的核心功能得明确。比如“做个计算器”,“能够整合用户各个社交平台的信息”酱紫,而“做个背单词的应用”可能就太模糊。
然后就是做个调研,对目标用户群做调查,分析市场有多大,用户接受程度怎么样,主要目标用户应该定位在哪等等。之后再看看市场上有没有同类产品,有的话做竞品分析,找出其他产品的特点,优势,不足都有哪些,做个 SWOT分析,评判下是否要投入到其中。当然一些小的以学习为目的的项目这步可以忽略。
确定要做之后就要把空中的idea具体落实到设计中,包括
1. 功能设计:明确要实现的多个功能,比如背单词的话就应该有 创建/导入单词本,生成每日计划,背单词,根据遗忘曲线复习单词 等等这些。
2. UI界面设计:这不是指UI界面的风格设计,而是像前一章所说的做个页面的组织层次设计,底部导航拦/主页面要有多少个,各个子页面放在哪blabla。
3. 数据结构设计:应用大多需要存储一些数据,这些数据的组织,如何在数据库中存放都需要仔细设计,同时考虑效率,权限设置,可扩展性等等。
4. 动态设计:这是由MVC设计模式衍伸出来的一个东东。简单来说,就是界面有了,数据也有了,现在得设计如何将它们整合在一起,即用什么界面,如何展示什么数据的一个设计步骤。
设计做好后,就是根据设计进行具体编码了,需要具体问题具体分析。
嗯,总的流程就像是酱紫了,最后来幅图: