Я хочу написать настольное приложение для OSX или Windows на Javascript. Есть ли опыт?

Я хотел бы написать несколько небольших приложений для Windows и OSX.

Портативный — это хорошо. Например, простое решение TclKit для TCL могло бы работать хорошо, если бы я мог смотреть на Tcl в течение любого промежутка времени.

Я рассматриваю возможность использования расширений Javascript + — мне очень нравится Javascript — мне кажется, должен быть какой-то способ подключить механизм Javascript к WxWin или даже к набору инструментов Tk — это было сделано для Perl, Python, Ruby и т. д. Почему не JS?

Любые комментарии приветствуются.


person Community    schedule 21.10.2008    source источник
comment
Это дубликат следующего: stackoverflow.com/questions/109399/   -  person Chris Pietschmann    schedule 22.10.2008


Ответы (7)


Я бы скорее рекомендовал использовать исполняемый контейнер Adobe Air, он предлагает гораздо больше возможностей/функций интеграции с ОС по сравнению с в HTA от Microsoft или даже XULRunner от Mozilla.

person Sergey Ilinsky    schedule 21.10.2008

Если вы хотите написать настольное приложение на Javascript, ознакомьтесь с HTA: http://msdn.microsoft.com/en-us/library/ms536496(VS.85).aspx

Вот пример приложения, которое я написал давным-давно в HTA: http://www.boltbait.com/htmleditor/

Надеюсь это поможет.

person BoltBait    schedule 21.10.2008
comment
Почему отрицательный голос? Я ответил на вопрос и привел пример. Мне любопытно, почему вы не нашли мой ответ полезным. Пожалуйста, объясните, чтобы я не повторил ту же ошибку. Спасибо. - person BoltBait; 22.10.2008
comment
Истинный. Хорошо, что ОП написал ... или приложение для Windows. - person BoltBait; 25.11.2009

Если у вас есть опыт работы с веб-приложениями HTML+JS, я бы порекомендовал Mozilla XULRunner. Он предоставляет виджеты интерфейса, выглядящие как родные (каждая часть интерфейса Firefox является элементом XUL), и рабочий процесс, аналогичный созданию интерфейса на основе HTML.

Вы определяете интерфейс с помощью XUL, языка на основе XML, так что это почти то же самое, что писать HTML, за исключением несовместимости браузера и CSS (вы можете использовать CSS, но только если хотите). Вся логика приложения может быть написана на JavaScript, но в XULRunner вы можете делать гораздо больше на JS, чем в браузере (чтение/запись файлов, выполнение системных команд, создание междоменных XMLHTTPRequests и многое другое).

Подробнее: http://xulplanet.com/

Множество примеров приложений: http://code.google.com/p/xulapps/

person pawel    schedule 21.10.2008
comment
Также имеет смысл упомянуть XBL, одну из самых мощных базовых технологий, включенных в Gecko. XBL позволяет разработчику писать обязательные документы, которые могут реализовывать логику и определять макет для абстрактных компонентов, которые впоследствии могут быть привязаны к элементам на странице хостинга. - person Sergey Ilinsky; 22.10.2008

Пользователи Mac OS X, как правило, не любят приложения, которые не следуют рекомендациям по удобству использования платформы (меню должно быть в верхней части экрана, стандартные ярлыки и перетаскивание должны работать, «ОК» должно быть справа от окна предупреждений, отсутствие кнопки «Применить» в настройках и т. д.).

С универсальным набором инструментов этого может быть очень трудно достичь.

Хорошая новость заключается в том, что существует мост JavaScript‹>Cocoa, который можно использовать для создания автономных полнофункциональных компьютеров Mac. Приложение OS X в JS — просто держите внешний и внутренний интерфейс вашего приложения достаточно отдельными, чтобы иметь возможность подключать разные пользовательские интерфейсы для каждой ОС.

person Kornel    schedule 21.10.2008

Rhino, вероятно, даст вам доступ к свингу. Хотя я не знаю, сколько работы потребуется.

С другой стороны, создание Swing-приложения с помощью JRuby настолько просто, даже марионетка может сделать это, так что это не должно быть слишком сложным.

person Aaron Maenpaa    schedule 21.10.2008

Определенно, если вы хотите реализовать это с помощью JavaScript, Adobe Air — это то, что вам нужно. У вас даже будет поддержка в Linux.

person jaircazarin-old-account    schedule 21.10.2008

Взгляните на Titanium Appceletaror: http://www.appcelerator.com/.

person ravi    schedule 06.08.2010