Я должен изучить XUL?

Я знаком с веб-программированием, и сторона клиента и сервера, и я хотел бы развернуть немного своего знания, чтобы смочь записать некоторые настольные программы.

Моя проблема состоит в том, что я не действительно знаком с настольным способом управлять виджетами. Насколько я понимаю, в типичные настольные программы, виджеты имеют свою собственную жизнь, отправляя сигналы друг другу и реагируя на сигналы с обратными вызовами. Таким образом, каждый виджет является объектом с большим количеством методов. Это добавляет дальнейшую сложность относительно того, что я знаю теперь, и я не уверен, что хочу изучить это в данный момент.

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

Проблема состоит в том, что документация, которую я могу найти о XUL, кажется немного устаревшей. Действительно ли изучение XUL является хорошей идеей? Я могу ожидать все еще использовать его несколько лет с этого времени? Или это уже становится старой технологией?

В случае, если XUL не является хорошей идеей, каковы альтернативы? Для большинства простых приложений, где статичные виджеты, или незначительно изменяются, существует некоторый легкий инструменты, но что относительно более сложной программы?

Править: Я должен упомянуть, что главным образом использую Ubuntu, таким образом, мне нужны Linux или независимый от операционной системы инструмент.

8
задан Andrea 20 June 2010 в 03:18
поделиться

5 ответов

Возможно, вы захотите ознакомиться с технологией AIR от Adobe. Она позволяет описывать пользовательский интерфейс с помощью языка разметки MXML (похож на HTML, но синтаксис строже) и определять функции с помощью ActionScript, языка сценариев, похожего на JavaScript. Приложения AIR не зависят от платформы, поскольку они работают на платформе AIR, которая абстрагирует для вас специфические вещи, связанные с ОС. По той же причине они могут быть относительно медленнее, чем родные приложения, но для небольших приложений это не является проблемой. Это зависит от того, что для вас важнее - скорость работы или скорость разработки.

Основным недостатком AIR является то, что для установки и запуска приложений AIR пользователям необходимо установить платформу AIR на свою машину, точно так же, как вам необходимо установить Java, прежде чем вы сможете запустить любое приложение, написанное на Java. Большинство платформ сегодня поставляются с Java из коробки, но AIR еще не настолько вездесущ.

Что касается XUL, кто-нибудь, пожалуйста, поправьте меня, если я ошибаюсь, но, по-видимому, это язык разметки для описания пользовательского интерфейса в приложениях Mozilla, таких как Firefox, Thunderbird и т.д., и используется для разработки расширений для этих приложений. Я не смог найти никаких ссылок на использование XUL для реальных настольных приложений.

1
ответ дан 5 December 2019 в 17:34
поделиться

XUL предоставляет по существу то, что вы просили. Он похож на HTML в том, что вы используете язык на основе тегов для описания интерфейса, и вы можете использовать JavaScript для кодирования. Он, безусловно, используется для разработки настольных компьютеров, включая такие продукты, как Firefox, Thunderbird, Songbird и Komodo Edit / IDE.

При работе на рабочем столе у ​​вас будет больше свободы, чем при работе в качестве веб-приложения, чтении и записи файлов, а через XPCOM даже выполнении кода, отличного от JavaScript.

В Центре разработчиков Mozilla имеется огромное количество довольно свежей документации. В частности, вы ищете способ создания приложения xulrunner - это среда, которая позволит вам создавать настольные приложения с использованием XUL.

Конечно, можно создавать хорошие настольные приложения, используя XUL. Обратной стороной является то, что нет большого сообщества разработчиков (за исключением Mozilla, Songbird и разработчиков расширений), и в итоге люди, которые приходят в сообщество для создания приложений, не получают большой поддержки. Есть список рассылки и есть канал IRC. Проблема в том, что при использовании xulrunner будут возникать причуды, а при работе над ними будет ограниченная поддержка. Я думаю, это своего рода проблема «курицы и яйца» - разнообразное и большое сообщество разработчиков окажет больше поддержки - и больше поддержки будет способствовать росту сообщества.

Я использую XUL для разработки продукта последние два года и до сих пор спорю, выберу ли я тот же путь снова или нет.

Я не думаю, что у нас достаточно информации, чтобы сказать вам: «Следует [вам] изучить XUL?» - но если вам нужен высокий уровень поддержки со стороны большого сообщества, то вам, вероятно, следует поискать @ какой-нибудь другой фреймворк, который другие упомянули. Если вы умеете усердно работать и чувствуете себя комфортно, работая со своим шрифтом, это может быть хорошим ресурсом, а ваш веб-фон может помочь вам взяться за дело. Если у вас есть хоть какой-то интерес к расширениям Firefox, эти навыки передаются напрямую.

Не имея сильного веб-опыта, когда я пытаюсь переключиться на работу с HTML-приложениями, я скучаю по тому, как легко создать интерфейс в XUL. Если вы хотите немного повозиться, взгляните на XUL Explorer и XUL Periodic Table .

8
ответ дан 5 December 2019 в 17:34
поделиться

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

Если вы используете Ubuntu, вы можете взглянуть на платформу Mono, которая является C # в системах Linux. Существует форма XAML, называемая Moonlight, которая может быть вам полезна. По крайней мере, вариант можно изучить!

0
ответ дан 5 December 2019 в 17:34
поделиться

Если вам так не хочется изучать что-то вроде C#, вы можете писать AIR-приложения с помощью Flex. В нем есть язык разметки, но также используется реальное программирование с помощью ActionScript. Для меня это было хорошим введением в написание настольных приложений.

1
ответ дан 5 December 2019 в 17:34
поделиться

Я нахожусь в одном положении с вами. пока я смотрел

и пропустил XUL ... хмм ... 1 преимущество XUL в том, что я могу использовать его для дополнений Firefox :) открывается возможности.

Я считаю, что как для титана, так и для воздуха документация отсутствует, поэтому мне труднее начать. Я действительно начал с Silverlight, но я сделал это с WPF. для воздуха я обнаружил, что его webkit изменен, чтобы отключить некоторые функции css3 , я бы хотел использовать, например, @ font-face и тени :( разочарован

есть привлекательные преимущества если я использую «родной» настольный язык программирования

  • WPF / C # имеет отличную интеграцию с Windows 7 (например, списки переходов, эскизы панели задач и т. д.), что может повысить продуктивность пользователей
0
ответ дан 5 December 2019 в 17:34
поделиться
Другие вопросы по тегам:

Похожие вопросы: