处理语言vs javascript?

问题描述:

我打算开发一个在浏览器上运行的综合教育软件,它有许多可视化和模拟工作(静电和电磁可视化,2D和3D)。处理语言vs javascript?

哪种语言(Processing,javascript或其他)最适合我的目的?

+1

这个问题真的太广泛了......你能更具体吗? – 2009-04-24 16:12:44

+0

我指定了我的问题! – 2009-04-24 16:20:45

在Flash或Silverlight中,您确实有两种选择ActionScript或VB.NET/C#/other的ActionScript。

因此,首先您需要确定您将要定位的平台中的哪一个。

+1

Java/JSP和applets怎么样? – Cerebrus 2009-04-24 16:24:14

+0

@Cerebrus:从技术上讲,这是另一种选择。 – AnthonyWJones 2009-04-24 16:31:47

这个问题确实很广泛,但我会从我的经验中回答。使用Javascript并不是真正意义上的数学计算,这可能需要很快计算大量的E现象(特别是如果它们没有被表示为封闭式解决方案)。它真的会在图表中显示出多少细节(更多步骤=更多计算)。您可能会发现自己需要进行更多优化才能弥补性能差异。

我做了一些可视化的天线阵列(他们有封闭的形式的解决方案,只有简单的数组)在Flash中,它运作良好。 JavaScript绝对不会与你想要做的任何3D模拟相提并论。

我不知道Silverlight是否可能是一个更好的解决方案,因为您可能会发现更多的.NET数学库比ActionScript,这可以为您节省大量的自己写数学的工作(但您可能最终会这样做无论如何因为性能问题)。

目前,Flash可能是更常见的应用程序堆栈,但您正在寻找的东西,但Silverlight正在根据其中包含的强大功能,从它们中获取标题。

您可能能够将问题分为两部分,用户交互和显示部分以及繁重的计算部分。

如果您可以将繁重的计算移动到服务器,那么您仍然可以在JavaScript中显示所有内容。

JavaScript的一个难点是它的解释,你将需要自己写更多的方程,所以有一个性能打击和开发时间,但它将工作没有任何插件,除非你不想在画布标签中做3D。

Flash和Silverlight可能有更好的选择,但是您正在学习新的语言并需要插件,具体取决于您要使用的Flash版本。

正如其他人所建议的那样,javascript在可视化方面并不强大。

Processing对于您要做的事情来说,它是一种非常好的语言,它很容易学习并且基于Java。数据可视化直接建立在语言以及时间空间中(即在时间上提前“1 tick”,并且可视化对此作出反应)。

另外,如果你有兴趣去那条路线,我会建议拿起Visualizing Data这几乎是一个处理引物。

我会去的Flex或Silverlight自己

  1. 大量可重复使用的库
  2. 多媒体
  3. 图形和动画

原生支持我第二LFSR咨询的意见,原生支持:处理用于教育目的很多,它是免费的,并且速度快(Java比Flash快一般)并且易于学习,所以您的结果更快。它支持3D,您可以处理Java库以进行模拟和计算等,并且它拥有一个伟大的社区! :-)

对于这种用法,JavaScript有点轻松。 JavaFX是炒作,但它并没有真正的3D(虽然有人用Java3D),它仍然有点年轻。
Flash和Silverlight:没有评论,在该领域没有太多的经验。 OpenLazlo可以替代...

我有点迟到了,但是你想要什么,已经在JavaScript中实现了,你会发现这非常有用。我建议在Chrome下运行它,因为JS处理引擎速度非常快。 (您可能甚至想尝试的Chrome 2这甚至更快)

参见:http://www.chromeexperiments.com/

查看processing.js,xcode和iprocessing! ProcessingJS非常适合数据可视化,但缺乏交互性。

你应该试试python。这对于教育和计算的目的来说是一个非常好的语言,它有一个相当不错的社区,语法并不那么艰难。即使它被设计为命令行,你可以创建一个使用一些外部包前端贵的,此事还提供包,比如SciPy的numpy的Matplotlib先进的绘图和数据可视化。