《游戏分发社区APP开发》-需求分析

羊嘲笑着猪 2021-12-27 17:51:30

1.系统概述

1.1 需求概述

MGTALK是一款能够实现游戏玩家与开发者面对面交流的软件。

通过首页推荐和社区功能,MGTalk让玩家能第一时间了解到游戏的详情资料、更新内容、攻略等信息,能进行正版游戏的购买和下载,也能对游戏进行评价打分、发帖子与其他玩家相互交流、向开发者提出建议;开发者能通过官方账号聆听玩家的声音、发布游戏新闻、推送游戏的更新。

1.2 需求分析

1.2.1 首页模块:

1)游戏排行榜

2)推荐内容(包括游戏与热门帖)

3)热门视频帖

1.2.2 社区模块:

1)热门社区

2)关注的社区

1.2.3 个人信息模块

1)收藏与浏览记录

2)个人信息设置

1.3 系统架构概述

本项目分为客户端和服务器端。

1.3.1 客户端

客户端采用Android studio软件,开发基于Android系统的app。其中主要采用Jetpack组件包,实现MVVM架构。

MVVM架构将“数据模型数据双向绑定”的思想作为核心,在View和Model之间没有直接联系,而是通过ViewModel进行交互,而且Model和ViewModel之间的交互是双向的,因此视图的数据的变化会同时修改数据源,而数据源数据的变化也会立即反应到View上。即,ViewModel 是一个 View 信息的存储结构,ViewModel 和 View 上的信息是一一映射关系。

采用MVVM架构的好处有:

1.低耦合。View可以独立于Model变化和修改,一个ViewModel可以绑定到不同的View上,当View变化的时候Model可以不变,当Model变化的时候View也可以不变。

2.可重用性。可以把一些视图的逻辑放在ViewModel里面,让很多View重用这段视图逻辑。

3.独立开发。开发人员可以专注与业务逻辑和数据的开发(ViewModel)。设计人员可以专注于界面(View)的设计。

Jetpack 是google官方提供的一个由多个库组成的套件,可帮助开发者遵循最佳做法,减少样板代码并编写可在各种 Android 版本和设备中一致运行的代码,让开发者精力集中编写重要的代码。本项目主要采用其中的LiveData、ViewModel、DataBinding组件。

LiveData具备感知数据变化的能力,可以动态更新UI数据;ViewModel有从始而终的生命周期,可感知App的生命周期;DataBinding实现数据与UI的绑定,真正实现了数据驱动UI。

在MVVM架构中,M代表数据层,主要负责数据的获取;V代表View层,主要就是XML布局以及Activity、Fragment;VM层就是ViewModel,用于存储UI的数据,承接View层和Model层的引用。

1.3.2 服务器端

服务器端采用Spring Boot+MySql实现。

Spring框架是Java平台上的一种开源应用框架,为开发提供了一系列的解决方案,比如利用控制反转的核心特性,并通过依赖注入实现控制反转来实现管理对象生命周期容器化,利用面向切面编程进行声明式的事务管理,整合多种持久化技术管理数据访问,提供大量优秀的Web框架方便开发等等。Spring的数据访问框架解决了开发人员在应用程序中使用数据库时遇到的常见困难。它不仅对Java:JDBC、iBATS/MyBATIs、Hibernate、Java数据对象(JDO)、ApacheOJB和ApacheCayne等所有流行的数据访问框架中提供支持,同时还可以与Spring的事务管理一起使用,为数据访问提供了灵活的抽象。

SpringBoot基于Spring4.0设计,不仅继承了Spring框架原有的优秀特性,而且还通过简化配置来进一步简化了Spring应用的整个搭建和开发过程。另外SpringBoot通过集成大量的框架使得依赖包的版本冲突,以及引用的不稳定性等问题得到了很好的解决。

2.功能模块

2.1 首页模块

首页主要包括排行榜、帖子推荐以及视频推荐等。分为三栏:排行榜、推荐和视频。

排行榜可以看到游戏热玩榜和游戏下载榜,玩家可以看到最新最热的游戏排名。

推荐中分为帖子推荐和游戏推荐,帖子推荐筛选出各个社区中热度较高的帖子,可以让玩家隐性的关注新游戏;游戏推荐可以看到游戏最新的评分,还可以查看游戏的具体内容。

视频分为游戏视频和帖子视频,帖子视频可以边观看视频边讨论视频内容,游戏视频播放的是游戏讲解相关的视频。

2.2 社区模块

社区模块中,每个游戏都有各自的一个独立社区,用户可以通过社区分类界面中通过热门社区推荐、社区分类或者搜索点击进入具体的某个社区。

游戏社区界面中,帖子分为三类:普通帖、精华帖(攻略帖)、官方帖。

其中普通帖任何用户可以发布;攻略帖只能由官方以及玩家自己发布(玩家自己发布的帖子必须由官方进行审核通过);官方帖由游戏官方发布,发布一些有关游戏的最新更新、咨询等。

社区活动图:浏览帖子

 

 

社区活动图:创建帖子

 

 

2.3 个人信息模块

个人信息模块中,用户可以通过提供的接口(eg: 微信/QQ)登录APP,登录以后,可以查看自己的个人信息,包括头像、浏览记录、关注列表等信息。用户可以选择对头像、昵称进行更改,浏览记录进行删除。

查看关注列表活动图:

 

 

查看浏览记录活动图:

 

 

学号116

...全文
269 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

571

社区成员

发帖
与我相关
我的任务
社区描述
软件工程教学新范式,强化专项技能训练+基于项目的学习PBL。Git仓库:https://gitee.com/mengning997/se
软件工程 高校
社区管理员
  • 码农孟宁
加入社区
  • 近7日
  • 近30日
  • 至今

试试用AI创作助手写篇文章吧