目录:(点击可跳转)一 、功能架构 二 、移动端架构概述 三、服务端架构概述 一、功能架构公共部分
用户管理
帖子模块
文章模块
我的模块(用户信息)
搜索模块
二、移动端架构概述1,框架层
2,线程层 由于我网络请求这块没使用框架,所以线程的选用时
3,缓存层Android 的数据存储方式有5种,分别是 SharedPrefrences、File、SQLite、ContentProvider、NetWork。我采用的是 SharedPrefrences 和 File即是文件存储,其中
4,网络层
5,实现层帖子分享,我采用的 OneKeyShare SDK,之所以使用它,是因为它把绝大部分的平台的SDK分享接口都集成了,例如微信、QQ、QQ空间、新浪微博、知乎等等等等。 1) 注册与登录
2) 发表帖子功能的实现
3) 帖子列表的显示
选用了安卓5.0 的 SwipeRefreshLayout + RecyclerView,原因是 SwipeRefreshLayout 自身带有下拉刷新,最早的时候使用的是 PullToRefresh 开源项目。RecyclerView 重写onScroll() 就可以搞定加载更多,还有一个原因,RecyclerView 自带有瀑布流布局属性。
4) 帖子详情页的显示
采用的布局是 HeaderView + CommentView,HeaderView 用于显示帖子的所有内容含帖子点赞,CommentView 用来显示用户的评论
5) 消息提醒消息提醒采用了极光推送的SDK实现
6) 表情模块
7) 其他部分收藏、删除、举报,这些操作进行一次get操作,传递帖子的id给服务器,服务器处理完毕后,就做对应操作
其他功能能的实现基本同上述。 8) 优化
9) 使用的库第三方 自己派生
三、服务端架构概述
1,服务器
2,数据库引擎 最初的我并没有采用 InnoDB,而是所有表都是全部是 MyISAM 。改用的原因是MyISAM 不支持事务InnoDB支持事务,而且社交类APP的数据库操作过多偏向于
3,数据库设计 对于数据库设计,不应该过多依赖范式, 常被
4,接口
|
|