2009-02-24 2 views
8

Мне интересно создать конструктор макетов перетаскивания, используя только JavaScript, HTML и CSS. Дизайнер позволит пользователю перетаскивать элементы страницы из одного места в другое (что-то вроде конструктора макета Blogger) для создания макета сайта. Но я не хочу комментировать все в JavaScript, я бы предпочел написать свое приложение в .NET (желательно) или Java и полагаться на компилятор, чтобы скомпилировать его на JavaScript и HTML..NET, Java-компилятор JavaScript

Каковы компиляторы .NET или Java для JavaScript, которые у вас есть , и могут порекомендовать? Для Java на JavaScript я знаю, что есть GWT. Что относительно .NET для JavaScript? Microsoft выпустила Volta, но проект, похоже, больше не доступен.

+0

предлагаете его в качестве проекта Google Summer of Code? – GabrielC

ответ

9

Не смотрите дальше, вы уже упомянули GWT, выберите это!

У этого есть очень хороший API, и многие хорошие приложения используют их.

Даже фреймворки JavaScript, такие как http://extjs.com/, имеют поддержку GWT.

Я использую его для небольшого календаря JavaScript недавно.

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

С другой стороны, я очень хорошо знаком с языком программирования Java, и многие библиотеки (если не самые важные), такие как java.lang и java.util, были перенесены в GWT.

Плюс ко всему, парень, который написал соответствующие части java.util то же самое за GWT (Google Джошуа Блох.)

+0

GWT * может быть болью в заднице, в зависимости от того, как серверный сервер должен быть реализован. Но теперь он становится куче лучше в своей текущей итерации. – Chii

+0

ExtGWT - отдельный проект для ExtJS, и это * ужасно *. Во-первых, у парня нет никакого понятия, когда дело доходит до дженериков. Убегай. – cletus

4

Заканчивать проект Нихилу Khotari в Script#. Это позволяет вам писать код C# и компилировать его на JavaScript.

+0

На самом деле? Привод-на-downvoting? –

2

Также для Java существует J2S.

Java2Script (J2S) кардиостимулятор обеспечивает Затмение Java в JavaScript компилятор плагина и реализации версии JavaScript в Eclipse, Standard Widget Toolkit (SWT) с другими общими коммунальными услугами, такие как java.lang. * и java.util. *. Вы можете конвертировать платформу Rich Client Platform (RCP) в Rich Internet Application (RIA) с помощью Java2Script Pacemaker.

Это означает, что если вы используете SWT IDE (перетаскивание), вы можете преобразовать сгенерированный код в JS + HTML.

1

Я бы не написал ни одного Javascript для пользовательского интерфейса. Это может привести к аварийному обслуживанию. jQuery - это то, что я использую, но я все равно не буду использовать его для написания полного кода JavaScript Javascript. ExtJS - еще один хороший вариант, если вы планируете писать в Javascript. Вообще то, что я говорю здесь, заключается в том, что в Java/C# гораздо проще, чем в Javascript. Выезд cappuccino framework и Atlas. Никогда не использовал GWT. Script# похож на GWT, но для платформы ASP.NET. Также зависит от требования, если ваш сайт является публичным, тогда RIA не является хорошим вариантом.Это все о том, какой крайний конец вы преследуете (ручной и веб-стандарт, или RAD или библиотеки, такие как jQuery/ExtJS, как средний вариант).

4
  • Script# уже упоминалось. Он не обновлялся с августа 2008 года.
  • Milescript - это еще один, но также он видел очень мало за 6 месяцев.
  • Extsharp для библиотеки Ext. Добавлена ​​поддержка Ext для сценария #
  • Javascript compiler to Java (идя неправильный путь для вас)
  • Java to script Eclipse Plugin

Мои проблемы с Script # (известный выпуск) не поддерживает JQuery еще. Однако он поставляется с очень легкой библиотекой для привязки к платформе .NET, в файлах sscorlib.js от Nikhil и ssfx.core.js. А также поддерживает множество других Javascript API (в основном Microsoft, поскольку он находится в команде ASP.NET).

Мне бы хотелось увидеть расширение # сценария для jQuery (я думаю о его написании, если это достаточно просто). Как бы то ни было, большинство из них пока не дают полной компиляции, но они, безусловно, попадают туда.

Обновление: Я написал небольшое расширение, чтобы включить скрипт поддержки JQuery несколько месяцев назад. Проект можно найти here.

+0

В прошлый раз, когда я пошел на сайт Script #, я увидел, что jQuery находится в дорожной карте для следующей версии Script # (из-за некоторого времени в 2009 году). – Nosredna

1

Отъезд Axial, конвертер .NET в JavaScript, который хорошо работает в ASP.NET. Он поддерживает WebForms, jQuery и холст. Это не очень зрелый, но это стоит посмотреть.

3

Я собираюсь использовать GWT. Я использовал его для нескольких проектов и, когда он используется в сочетании с современным редактором, например Eclipse или IDEA, он действительно делает управление mess.

Важно отметить, что он не только позволяет вам писать на Java, но и преобразовывать его в оптимизированный и obfuscated Javascript, он также содержит substantial subset основного Java API. В дополнение к этому они предоставляют множество дополнительных классов для выполнения таких действий, как синтаксический анализ и работа с JSON и XML и связь с сервером через asynchronous HTTP. Вы можете проверить docs, чтобы узнать, что еще они предлагают.

Еще одна особенность, которая может представлять особый интерес для реализации функции перетаскивания, - это интеграция с библиотеками javascript, такими как Ext и scriptaculous. Либо через предварительно построенный interfaces, либо через JSNI

2

Проверить этот проект Java с открытым исходным кодом http://st-js.org он производит чистый код javascript, который является чистым, легко читаемым и легко отлаживается.

0

JscriptSuite предлагает еще один бесплатный компилятор .NET для Javascript. Существует большая разница с Saltarelle (jsc, SharpKit # и т. Д.). Разработчик записывает и отлаживает только код C# (или любой другой .NET langauge), как в GWT. Javascript будет создан только для развертывания.

Смежные вопросы