红孩儿编辑器的概要设计第二部分

红孩儿编辑器的概要设计第二部分

技术决策
1编程语言的选择
 html,javascript
2 在1的基础上图像库的选择
   使用HTML5的画布(canvas)api
3 持久化技术选择
   使用WEB浏览器的客户端存储,以后考虑使用数据库例如redis.

以上的决策是为了实现编辑的在线的web版本。

1输入子系统
处理对键盘和鼠标的响应
模块有键值映射模块
主要实现的有如下的函数功能
setconfig
input
key_operation
key_up

2核心控制子系统
二级控制逻辑
第一级根据配置信息执行不同的逻辑分支
第二级是根据字符分类的不同的逻辑分支

除此之外还有两个功能模块
一个是配置模块(以后开发成熟后会独立成新的子系统)
一个是输入法的模块(以后的开发中,形成接口规范,
做成插件模式,保证可以在五笔,拼音等多个输入法间切换)
一个是光标控制模块

3缓存子系统
为了读取文件数据的临时保存区域,为了编辑的前时与撤销等操作而设计
功能接口有
write_buffer
read_buffer
除此之外
还有持久化的模块 (以后开发成熟后会独立成新的子系统)

4渲染子系统有
子库的模块(以后的开发中,形成接口规范,
做成插件模式,保存可以实现多种字体的切换)
状态栏的显示模块
编辑主区域的显示模块

你可能感兴趣的:(红孩儿编辑器开发)