计划实现的bonus: - 缓存 - 并发 有时间打算实现的bonus(按优先级次序排序): 1. GUI前端和完整部署方案 2. UTF-8中文支持 3. Validator # 模块划分 整个程序分为核心和前端两部分,核心即主体部分 ## 核心 核心只有一个可执行文件,书店实例通过配置文件夹来决定(默认为当前目录下`.bookstore`文件夹,亦可通过命令行参数指定)。当书店系统在运行时,有且仅有一个进程,分为interactive模式和server模式。 ### 数据库模块 维护相关数据,支持并发 ### 引擎模块 具体执行业务,支持并发 ### 通信模块 负责对外提供文本模式的交互,解析文本格式的命令,并把内部数据格式的响应翻译成文本格式,向引擎模块发送请求,并把响应返回给session进程。server模式下 支持并发 ## 前端 ~~不清楚有没有时间写~~。WebUI,采用`Node.JS`+`Socket.IO`,~~不打算弄得很好看,不打算支持响应式设计~~,支持图形操作和“云命令行”。