Python 是近年倍受推崇的语言,这里介绍的是两个与教学相关的开源项目。一个是用于计算机教室管理的电子教室系统,第二个是与之关联的在线考试系统,当然,这个系统也可以单列出来。这两个项目还只是个雏形,只具有最基本的功能,但对于有兴趣开发这类软件的朋友还是极具参考价值的。
这两个系统都是基于 Qt 5.11.1 开发的,Qt 是一个跨平台的 C++ 图形用户界面应用程序框架。它提供给开发者建立图形用户界面所需的功能,广泛用于开发 GUI 程序,也可用于开发非 GUI 程序。Qt 是完全面向对象的,很容易扩展,并且允许真正地组件编程。值得注意的是,Qt 商业应用要授权,也就是说,商业应用是要收费的。
一、电子教室
项目名称:ScreenSharing FileTransfer in LAN
本项目基于 Qt 5.11.1 (MSVC 2015, 32bit)、Python 3.4.3。
程序包括 Master 端和 Slave 端。Slave 端没有界面,启动后会有一个托盘图标。Master 主界面如下图所示:
该电子教室主要功能有:
1、屏幕演示(延迟 1s 以内):采用的是局域网组播 + 分包传输 + 屏幕差异对比等技术。
2、屏幕监控:可同时监控 4 台学生机。
3、文件传输:这一功能是使用 Python 实现的,主要原理是在局域网内搭建 HTTP 服务器,Slave 端通过下载的方式下载,从而完成传输操作。理论上,速度可以达局