虽然这是一个范围更广的问题,但我想为我的公司编写一个在线测试代码,人们可以在java / php / c等中编写代码并运行代码并在线编译。我在网站上看到过这种情况,比如codeacademy,Udacity等。只是想了解它背后的架构。我在Google上搜索过很多类似的东西,但却找不到具体的答案。虽然在这里和那里阅读了点点滴滴之后,我知道代码被发送到服务器上的编译器,然后结果被发回。不知道究竟是怎么回事。有人能指出我的起点。
答案 0 :(得分:6)
根据应用于Web架构的MVC模式,您基本上可以拥有的是这样的:
操作顺序可以是:
然而,更一般地说,重点是编译器和解释器是基础软件。它们不适用于一般用户,只能轻松使用操作系统。因此,据我所知,"在线编译"与发布代码,让它在服务器上执行以及可视化答案相关的东西是不同的。在线编译意味着分配整个网络编译的责任,这是有道理的,但在我看来,它并不意味着用于示范目的(就像你提到的那样)。
答案 1 :(得分:2)
我将domjudge用于我的公司并根据我的需要进行了自定义。
PHP代码编写得很好。它非常模块化,易于满足您的要求。