可汗学院计算机科学课程使用的是哪种编程语言?

5

我的儿子正在玩可汗学院计算机科学,并且学到了很多。

该应用程序在浏览器中运行JavaScript,但语言不完全符合JavaScript约定。例如 random(low, high) 而不是JavaScript的 Math.random()

有人知道他们使用的确切语言是什么吗?

网站链接上的内容外,是否有更完整的文档,因为这看起来只是函数和方法的不完整列表。


这就是我说的。 那么Khan Academy使用的是什么编程语言,完整文档在哪里? - Transistor
我想指出的是,这并不重要。他们使用的语法是C或Java风格的语法,这是最常用的语法,也适用于许多其他语言,如C#。 - Mathias Lykkegaard Lorenzen
6个回答

7
我认为他们只是将其包装起来,并在其下开发自己的功能,这些功能是使用JavaScript编写的。
如所述:
Khan Academy计算机科学平台中的所有代码都是使用JavaScript和Processing.js编写的。

https://www.khanacademy.org/cs/docs


5
这篇文章可能对于原问题来说有点晚了,但祝愿任何人都能从中受益。:)
我是一名计算机科学专业的大学生,经常使用KACS。
原始的Processing语言是Java的一个子集,但是也有一个称为processing.js的javascript版本。Khan Academy CS沙盒使用processing.js库,但沙盒本身则使用纯老式javascript - 尽管代码在呈现在右侧的输出窗口之前需要经历几个步骤。
换句话说,代码以文本形式从左侧的文档编辑器中提取,然后通过注入到沙盒运行环境中进行处理。沙盒会筛选环境,组合一些原生javascript和processing.js函数(这些函数本身以javascript形式来自processing.js库)。 random(a, b)不是Math.random(),而是一个processing.js辅助函数,它本身使用Math.random来给出a和b之间的结果。
还有更多的细节(特别是lint,KACS运行环境的一些次要技术细节以及一些专门针对KACS环境的辅助函数,而不是processing.js的一部分),但如果您想建立自己的沙盒,使其类似于KA沙盒,您可以在此处下载processing.js的库。我使用以下代码在一个名为sandbox.html的纯文本文件中快速创建了一个简单的沙盒。
<html><head><script src="processing.min.js"></script></head><body><canvas id="output-canvas"></canvas><script>var sketch = function (processing){with(processing){size(400, 400);background(255);

// example
// fill(255, 0, 0);
// ellipse(0.5*width, 0.5*height, 100, 50);
// your code here

}};var p = new Processing(document.getElementById("output-canvas"), sketch);</script></body></html>

将上述文件放在与processing.min.js相同的文件夹中,只需在// your code here处输入您的代码,保存并打开该文件。

完整的Procesing函数列表文档在这里

享受吧!


1

> 使用普通的 JavaScript、Processing JavaScript 和一些编辑,Khan Academy 创建了自己的 JavaScript 版本,称为 KAPJS。

>


1

Khan Academy使用JavaScript编程语言,使用Processing JS库进行绘图。 Processing JS是Processing编程语言的JavaScript版本:

Processing是一种开放的可视化编程语言,由Ben Fry和Casey Reas开发,最初由John Resig移植到JavaScript。Processing.js由Processing.js团队维护。


0

-1
Khanacademy使用PJS(processing Java Script)作为JS库。

这只是重复现有的答案。 - Baum mit Augen

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接