可能标题有点响亮,但这绝不是标题党。从本文开始,只要有时间,我都会陆续更新,目的是向想从事互联网App开发的同学传递一些知识,同时也是自我实践的积累,大家可以互相学习,共同进步。
如今,在很多场合或者互联网相关大会上,我们经常能听到“全栈工程师”这样的词,而且似乎很多人也在追求这样的能力。就我个人而言,未必每个人都适合全栈,因人而异,但有一点是我推崇的,全栈可以让你更深入的了解一款产品的来龙去脉,更好地完成团队协作,甚至有一天你想创业了,也会给你带来很多优势,有的时候确实需要一个人干几个人的活。
OK,进入正题。接下来的一段时间,我会从产品需求分析,产品原型设计,技术框架,代码编写,项目部署,用户统计及项目发布等多方面介绍一款互联网产品的完整细节。当然,有些东西不是我擅长的,我也是在学习的过程,有问题的地方,大家可以补充。今天我主要从产品、原型设计、技术框架谈起。
为了完善整个过程,我以运动类的App为例子记录项目的点点滴滴。项目是以学习为目的,与商业项目略有差别,项目的名称姑且定为“运动Demo”。
1.产品需求分析
言简意赅,项目就是要响应国家号召,全名健身,做一款方便大家健身的应用。初期的版本不会考虑过多的功能,进行最简化。在这里,我也是建议大家,做一款商业App,切记一下做很多功能,总觉得每个功能对用户都有价值。互联网产品追求的是快速迭代,要不断地在市场上检验,不断优化。做全做大,一方面增加产品的开发周期,另一方面在没有检验的过程,很难把握产品的重点,导致后期演进困难 。很多时候我们会存在一种自我心里,没有跳出自己的思维,真正思考用户的需求,几个人的需求不叫需求,大部分人的需求才是真需求。因此,第一版,我们只做三部分的功能。
(1)消息模块:主要用于用户之间,用户与运维之间(比如活动推送)的交流。
(2)运动模块:App的核心功能,记录用户的轨迹和其他辅助数据。
(3)我的:主要显示用户的排名以及个人信息的显示和修改等。
当然,注册、登录、App向导等也是项目的核心内容。
2.产品原型
产品的原型设计我采用的是Axure,原本是想简单的手绘几个草图的,正好学过一段时间的原型设计,简单展示一下效果,更加直观。后续有时间,我会专门写一篇Axure的使用分享。以下是简单的原型图:
3.技术架构
技术架构涉及到App客户端,Server前端、后端。前端涉及页面展示的采用Bootstrap实现,后端采用Spring Boot实现,数据库使用Mysql,缓存框架使用Redis,App客户端暂时以android为例。关于Bootstrap和Spring Boot,在后面的章节中会详细介绍。项目先实现用户的登录,同步进行服务端和客户端的开发。
如果您对我的文章感兴趣,请关注我的公众号,希望在互联网的道路上我们并肩前行。