需求分析

一、项目概述

  1. 项目名称:TechDevHub
  2. 目标用户:计算机专业学生
  3. 项目目的:学校课程技术落后,培养体系脱离就业实际,为了帮助学生分享技术经验、学习路线和职业规划而做的技术社区和成长交流平台
  4. 核心功能:用户注册与登录、发帖、评论、点赞、关注、管理员管理文章分类和用户

二、功能需求

1 用户模块

  1. 注册
  2. 登录
  3. 修改个人信息
  4. 修改密码
  5. 删除账号
  6. 关注/取消关注

2 帖子模块

  1. 发布帖子
  2. 修改帖子
  3. 删除帖子
  4. 点赞/取消点赞
  5. 查询帖子

3 评论模块

  1. 发布评论
  2. 删除评论
  3. 点赞/取消点赞评论
  4. 查询评论

4 管理员模块

  1. 添加/删除/修改模块
  2. 查看所有用户
  3. 封禁用户

三、非功能需求

系统安全、可靠、性能高

1 性能

2 安全

  1. 密码加密存储
  2. JWT登录验证
  3. 管理员权限控制

四、用户角色与权限

  1. 普通用户:
    用户模块、帖子模块、评论模块
  2. 管理员:
    管理员模块、所有用户模块功能

五、系统数据设计概述

  1. 用户表(user)、文章表(post)、分类表(categoty)、评论表(comment)、点赞映射表、关注映射表
  2. 用户:文章(1:N)
    文章:评论(1:N)
    用户:点赞(N:N)
    用户:关注(N:N)

六、页面交互概述:

首页:帖子列表、分类过滤、搜索框
帖子详情页:查看内容、评论、点赞数
用户中心:修改资料、修改密码、查看关注/粉丝
管理员页面:帖子分类管理、用户管理