项目需求
- 用户功能:用户可以注册、登录、退出系统
- 发布博客:用户可以创建、修改、查看、删除自己的文章
- 评论功能:任何人都可以对博客进行评论
- 管理员功能:管理员拥有比普通用户更高的权限,可以管理所有用户以及他们的博客、查看每天的博客发布情况,还可以把某个用户设为管理员
里程碑1:搭环境
- 采用
JavaScript
相关技术栈,整体采用ES6
规范 - 构建工具使用
npm
- 数据库采用关系型数据库:
Mysql
- 前端框架
React+Redux
框架 - 后台使用
node.js
框架为express
- 使用
webpack
打包工具 README
文件,方便别人拿到代码后,能够成功快速在电脑上运行。- 代码小步提交到
github
的组织仓库上。
验收条件
- 其他人可以方便的获取你的代码
- 其他人可以通过你的说明文件,在本地将服务器快速的运行起来,看到页面
- 通过简单的页面可以证明你使用的技术栈和主要的库等已经配置正确
里程碑2:用户登录
- 显示未登录状态的首页
- 实现用户的注册,登陆,退出功能
- 对首页进行组建划分,显示相应的内容
- 使用数据库存储用户信息
验收条件
- 代码上传github仓库,更新README文件
- 首页展示文章列表,用户登录状态(未登录),登陆按钮等
- 数据库数据的状态正确
里程碑3:文章的增删改查
- 实现对文章的显示,添加,删除,修改。
- 显示采用
MarkDown
的形式,左边为输入的MarkDown
语法,右边显示对应的HTML
格式 - 点击发布按钮将文章信息发送到后台
- 发布成功后跳转到文章列表页
- 不用真实数据库,不用用户登录
- 可以将数据保存在
json
文件中
验收条件
- 从首页的写文章按钮可以进入编辑页面
- 编辑页面左边输入
MarkDown
语法,右边显示对应的HTML
格式 - 点击发布按钮将文章信息发送到后台,将该消息输出到控制台
- 点击文章列表中的一项,跳转到该文章对应的编辑页面
- 在该编辑页面中修改文章后点击保存,将更新的文章信息发送到后台,并输出到控制台
- 编辑页面中点击删除按钮,删除该文章,给出确认删除的提示,删除文章成功后,自动跳转回文章列表的首页面
里程碑4:使用真实的数据库存储文章信息
- 确定数据库表的结构
- 将之前的
json
文件替换为数据库
验收条件
- 前一个里程碑的功能没有被破坏
- 可以通过某种方式来初始化数据库结构和预置数据,并在
README
中说明步骤 - 代码以“小步”方式提交到
github
上,并且每个commit
都有清楚的描述
若干篇博客用来记录你的学习收获和疑问