Язык обработки против JavaScript? - PullRequest
3 голосов
/ 24 апреля 2009

Я собираюсь разработать комплексное образовательное программное обеспечение, которое работает в браузере и имеет множество работ по визуализации и симуляции (электростатическая и электромагнитная визуализация, 2D и 3D).

Какой язык ( Обработка , JavaScript или что-то еще) лучше всего подходит для моей цели?

Ответы [ 10 ]

6 голосов
/ 24 апреля 2009

Вопрос действительно широкий, но я отвечу на опыте, который у меня был.

Javascript на самом деле не предназначен для выполнения математических вычислений, что может быть необходимо для быстрого расчета большого количества явлений E & M (особенно, если они не представлены в виде решения в закрытой форме). Это действительно касается того, сколько деталей вы хотите видеть в своих графиках (больше шагов = больше вычислений). Возможно, вам понадобится сделать больше оптимизаций, чтобы компенсировать разницу в производительности.

Я сделал несколько визуализаций антенных решеток (у них были решения с закрытыми формами, только простые массивы) во Flash, и все получилось нормально. Javascript определенно не будет соответствовать любым 3D-симуляциям, которые вы, возможно, захотите сделать.

Интересно, может ли Silverlight быть лучшим решением, потому что вы можете найти больше математических библиотек для .NET, чем для Actionscript, которые могли бы сэкономить вам массу труда при написании математики самостоятельно (но вы можете в конечном итоге сделать это в любом случае из-за проблем с производительностью).

4 голосов
/ 24 апреля 2009

Как и предполагали другие, javascript не настолько силен в языке, когда дело доходит до визуализации.

Обработка - это действительно хороший язык для того, что вы пытаетесь сделать, он прост в изучении и основан на Java. Визуализация данных встроена непосредственно в язык, а также во временное пространство (т. Е. Сдвиг во времени на «1 такт» и реакция реагирования на это.)

Также, если вы заинтересованы в том, чтобы идти по этому пути, я бы предложил взять Визуализация данных , которая в значительной степени является учебником для начинающих.

2 голосов
/ 25 апреля 2009

Я немного опоздал на шоу, но то, что вы хотите, было реализовано в JavaScript, и вы найдете это невероятно полезным. Я рекомендую запускать его под Chrome, так как процессор JS работает очень быстро. (Вы можете даже попробовать Chrome 2, который еще быстрее)

Смотри также: http://www.chromeexperiments.com/

2 голосов
/ 24 апреля 2009

Я бы пошел Flex или Silverlight сам

  1. Множество повторно используемых библиотек
  2. Встроенная поддержка мультимедиа
  3. Встроенная поддержка графики и анимации
2 голосов
/ 24 апреля 2009

Flash сейчас может быть более распространенным стеком приложений для того, что вы ищете, но Silverlight выглядит готовым взять у них название, основываясь на мощных функциях, которые он содержит.

1 голос
/ 24 апреля 2009

Я второе мнение LFSR Consulting: обработка часто используется в образовательных целях, она бесплатна и быстра (Java быстрее, чем Flash в целом) и проста в освоении, поэтому вы получаете более быстрые результаты. Он поддерживает 3D, вы можете использовать Java-библиотеки для симуляции, вычислений и т. Д. И у него отличное сообщество! : -)

JavaScript немного легок для такого использования. JavaFX - шумиха, но на самом деле у нее нет 3D (хотя один использовал Java3D с ней), и она все еще немного молода.
Flash и Silverlight: без комментариев, мало опыта в этой области. OpenLazlo может быть альтернативой ...

0 голосов
/ 07 ноября 2013

Возможно, вам стоит попробовать Python. Это действительно хороший язык для образовательных и вычислительных целей, у него довольно приличное сообщество, и его синтаксис не такой сложный. Несмотря на то, что он был разработан для командной строки, вы можете создавать интерфейсные интерфейсы для него, используя некоторый внешний пакет, и он также предоставляет пакеты, такие как Scipy , Numpy и Matplotlib для расширенного построения и визуализации данных.

0 голосов
/ 04 марта 2012

Проверьте processing.js, xcode и iprocessing! ProcessingJS отлично подходит для визуализации данных, но ему не хватает интерактивности.

0 голосов
/ 24 апреля 2009

Вы можете разделить задачу на две части: часть взаимодействия с пользователем и отображения и часть сложных вычислений.

Если вы можете перенести тяжелые вычисления на сервер, вы все равно можете показать все в javascript.

Одна из сложностей, связанных с javascript, заключается в том, что он интерпретируется, и вам нужно будет самостоятельно написать больше уравнений, так что это приведет к снижению производительности и времени разработки, но он будет работать без каких-либо плагинов, если только вы этого не хотите. 3D в тэге Canvas.

Flash и Silverlight могут иметь лучшие варианты, но тогда вы изучаете новые языки и нуждаетесь в плагинах, в зависимости от того, какую версию Flash вы хотите использовать.

0 голосов
/ 24 апреля 2009

У вас действительно есть два варианта ActionScript во Flash или VB.NET/C#/other в Silverlight.

Итак, сначала вам нужно решить, на какую из этих платформ вы будете ориентироваться.

...