目录
项目简述
模拟实现牛客网、leetcode题目管理和在线编译等功能
项目核心功能
- 在线编译
- 题目管理
核心功能介绍
- 在线编译
- 获取要编译的代码临时文件
- 调用g++进行编译,记录编译结果到临时文件
- 运行可执行程序,执行测试用例,记录执行结果
- 将临时文件结果打包,响应用户
- 题目管理(通过文件管理,后续MySQL管理)
- 采用MVC模式实现题目管理模块
M(model) | 结构体定义题目的模型框架 |
V(view) | 通过Google的ctemplate填空方式搭建html网页 |
C(controller) | 实现题目结构的控制 |
项目改进
- 通过MySQL对题目的存储(以解决)
- 实现动态式编译器:支持python、java等
- 解决安全性问题:使用黑名单保护机制(已解决)
- 分布式存储解决安全问题
- cookie技术
- 支持用户管理功能:手机号注册(已解决)、登录(已解决)、历史题目管理、评论等。
- 运行内存和时间限制等。(已解决)