需要一些帮助来建立编程竞赛评委系统



我有一个计划,创建一个像PC^2,Domjudger一样的现场编程竞赛评委。

我想构建基于web(localhost)的法官系统,而不是桌面应用程序。

以下是我的目标:

  1. 判断系统应该是像PC2那样的跨平台系统[与JRE一起运行]
  2. 使用Ruby、Python、PHP或Node.JS

现在的问题是使系统跨平台,哪种语言最可取?

Ruby、Python、PHP或Node.JS可以处理系统命令吗?[例如编译C++/Java源代码并运行程序]它们如何处理进程的时间限制?

有人能给我一些有用的链接吗?我在谷歌上搜索了很多,但没有发现任何关于跨平台系统的信息。

如果你正在计划一个基于网络的编程竞赛评委系统,它将是跨平台的,因为它是在网络上的,至少从用户的角度来看是这样。但是,如果您从服务器的角度来看是跨平台的,那么您将需要一个跨平台的流程管理库,例如:

助推过程(www.highscore.de/Boost/Process/)

PoCo(pocoproject.org/)(进程命名空间,在Foundation中)

Psutil(code.google.com/p/Psutil/)(对于Python)如果您选择Python,我建议将Web.py作为Web框架

Qt(qtproject.org/)您可以使用Qt,它以独立于平台的方式实现许多操作系统实用程序,例如进程、线程、网络、GUI。。。

wxWidgets还包含一个跨平台进程控制库,用于通过wxProcess类生成子进程。

应该有更多的图书馆。。。

使用Node.js可以创建子进程,但我不确定它能走多远,例如,我不知道你是否可以继续限制进程的内存。

但是,如果您出于任何原因决定为特定平台开发软件,如GNU/Linux,您可以从了解流程管理如何为该特定平台工作开始(Linux(POXIS)Windows(Win32 API)

最新更新