模仿头条项目记录
文章目录
1.需求分析
1.1app文章列表
思考需要哪些数据、以及如何存储、管理这些数据
一拿到需求,就要思考,数据存储应该如何组织?
首先,必须有一张表,存储文章本身的信息,这里称为ap_article
。
其次,还需要一张用户文章列表,这里称为ap_user_article_list_APP
。
还需要文章展现行为表,称为ap_show_behaviorAPP
最后,需要一张行为实体表,称为ap_behavior_entry_app
APP行为实体表,一个行为实体可能是用户或者设备,或者其它。
文章列表相关接口定义
通过需求分析,知道用户在首页的可能触发的行为有加载文章列表、刷新(上拉刷新、下拉刷新)等动作,这也就是我们后端需要对应的几个数据接口,其中还包含一个隐含的用户行为接口,即记录用户是否阅读某一个篇文章的行为接口,则可以分析出来后端需要的接口有:
(1)load接口
load接口,分为两种情况,一个是登录,一个是未登录,加载多条数据(有条数的限制,size),用户可以选择频道进行数据的切换
- 登录,从后台获取用户信息,作为条件查询
- 未登录,直接加载默认数据即可。
(2)load_more接口和load_new接口
当用户进行刷新的时候,我们的系统定义了两种操作,第一种是上拉刷新也就是load_more
,第二种是下拉刷新load_new
接口,两个接口的区别在于加载的内容的时间不同。
用户进入系统的时间TimeA
浏览了一会首次加载的数据之后到了TimeB
时间,这时候如果用户继续上拉看后面的内容则调用load_more
接口并把TimeB
时间传递到后端,后端根据TimeB
时间查找当前时间之前发布的内容;
用户下拉刷新则说明用户需要当前最新的内容则调用load_new
接口,将TimeA时间传到后端查找TimeA时间之后发布的内容,其请求参数接口设计和load_more
接口相同。