名称/定义
knowledge management【KM】 知识管理系统
包括:
博客【参考开源中国博客】
多媒体【在线UML图 思维导图等制作】
文档【参考百度文库,看云,gitbook】
云盘【参考百度网盘】
项目管理【参考github】
论坛【待考虑】
目的
1. 解决软件开发中笔记、资料、文档、项目管理、文件管理【如PDF文件】等没有完整统一平台的问题
2. 技术练习场
模块功能
博客:
开源中国博客有什么我就做什么。除此之外,还需要有在线浏览和编辑demo的功能。比如一篇关于CSS下拉菜单的博客,不仅要看到代码,还要看到运行效果,并且能够在原代码基础上进行修改和运行。而这一切要在不脱离原博客页面的基础上进行。
多媒体:
思维导图:
模仿百度脑图
UML:
在线UML图制作
E-R图:
在线E-R图制作
文档:
参考gitbook
云盘:
模仿百度云盘
项目管理:
github有什么我就做什么
衍生产品
git GUI 管理工具
可复用的博客爬虫
类似百度云盘客户端的工具
系统架构
说明:
所有子系统都需要单点登录
博客、多媒体、文档 需要缓存
博客、多媒体、文档、云盘 需要数据库支持
项目管理目前为单独的系统,但是后期会在文档中加入版本控制功能
所有子系统都需要支持搜索功能
开发顺序
1. 后台管理系统
2. 博客系统
3. 搜索系统
4. 文档
5. 云盘
6. 多媒体
7. 项目管理
第一阶段
开发目标
包括后台管理系统、博客系统、搜索系统。
博客系统:
匿名用户可搜索、查看博客
已登录用户可对个人博客进行CRUD操作,分类管理,标签管理,收藏博客,博客导入与导出,建立专栏博客【参考CSDN】,自动生成目录【参考CSDN】
搜索系统:
可搜索全部内容,可以添加时间条件、分类条件、以及分类明细条件【参考百度搜索工具】
技术选型
前端技术:
jQuery、jQuery plugin、EasyUI、extjs、ckeditor、HTML5+CSS3
后台技术:
Spring、SpringMVC、Mybatis
Redis(缓存服务器)
dubbo ( 服务管理 )
Solr(搜索)
httpclient(调用系统服务)
Mysql
Nginx(web服务器)
tomcat
开发工具
JAVA IDE:springspring tool suite
前端编辑器:brackets
源码与文档管理:git@osc
文档编辑:typora
阅读资料
mysql
MySQL技术内幕:InnoDB存储引擎
java
1. Java 8编程参考官方教程
java编程思想
effective java
前端
1. 图解CSS3:核心技术与案例实战
2. JavsScript高级程序设计(第三版)
3. es6 标准入门第三版
犀牛书
JavaScript设计模式与开发实践
高性能JavaScript
你不知道的JavaScript
extjs 权威指南
extjs 6 by example
javascript 框架设计