Go语言上手-工程实践-课后作业丨青训营笔记

137 阅读1分钟

这是我参与「第三届青训营 -后端场」笔记创作活动的的第2篇笔记。

需求描述

  • 展示话题(标题,文字描述)和回帖列表
  • 暂不考虑前端页面实现,仅仅实现一个本地web服务
  • 话题和回帖数据用文件存储

需求用例

image.png

用例图

定义:由参与者、用例、边界以及他们之间的关系构成的用于描述系统功能的视图。用来表示系统角色与系统功能发生交互的图。

参与者:不特指人,是指在使用系统或与系统交互中锁扮演的角色。

用例:是对包括变量在内的一组动作序列的描述

边界:用于区别开系统内外,一般画图可省略。

箭头:表示参与者和系统发送消息进行交互的关联关系。箭头尾部用来表示启动交互的一方,箭头头部用来表示被启动的一方,其中用例总是要由参与者来启动。

ER图

image.png

分层结构

image.png

Repository

  • 如何实现查询?

    • QueryTopicById

    • QueryPostsByParentId

Repository-index

元数据->索引

数据行->内存Map

var(
    topicIndexMap map[int64]*Topic
    postIndexMap  map[int64][]*Post
)