Previous Entry Share Next Entry
2016-01

javascript захватывает мир

> Node-Qt provides native bindings to the Qt library as a Node.js addon. The focus is on graphics and audio bindings; there is no need to duplicate the functionality of the Node API and its modules.



https://github.com/arturadib/node-qt

Надо будет попробовать.

This entry was originally posted at http://wizzard.dreamwidth.org/351516.html. It has comment count unavailable comments. Please comment there using OpenID.
Tags: , ,

  • 1
the__listener February 24th, 2014
Не разжигания флейма ради, а исключительно ради интереса интереса .

А какой кайф от этого? Я не видел ни одного приложения на Qt, которое было бы компактнее, быстрее и удобнее One Page WebApp. (Да, конечно, если использовать всякие jQuery, не говоря об энетерпрайз-ужасах типа Ext.js, можно сотворить и не такое).

В теории, я вижу две сферы применения: 1) вещи, для которых проблемой является latency; 2) показ очень больших объемов данных (гигабайт текста или что-то аналогичное). Какая-то это слишком узкая ниша получается.

PS. Последний раз, я писал что-то на Qt еще в прошлом тысячелетии.
PPS. О состоянии современного Qt я сужу по Ida Pro, которая не успевает обрабатывать хоткеи с той скростью, с которой я их ввожу (например, Alt-E, F, D, Y, E, Y - присоединение к функции куска после нее (типично, exception handler), который ошибочно распознался как отдельная функция).
Еще есть 010 editor, который, при всех своих уникальных достоинствах, также не блещет ни скростью, ни usability

wizzard0 February 24th, 2014
Я не писал конкретно на Qt ничего серьезного, но вообще, например, очень больная проблема веба - это как раз accessibility/event/focus handling.

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

Ну, точнее, сделать можно, но это очень быстро превращается в борьбу с браузером, а плюшки DOM/CSS быстро забываются.

Еще, например, rich text editing везде по-своему глючный...

Еще если это маленькая фигня которая сидит в трее то держать браузер как-то очень уж оверкилл.

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

Edited at 2014-02-24 01:33 pm (UTC)

the__listener February 24th, 2014
Ну, dragdrop делается без особых проблем (вернее, проблема не с том, чтобы его сделать, а в том, что постоянно dataTransfer курочат. У меня был чудный модуль, в который можно быть закинуть каталог и отпроцессить все, что в нем лежит (с подкаталогами). Так в 32-м хроме из dataTransfer больше нельзя получить Directory object).
И так у них все: сделать можно, даже не особо напрягаясь - но вот отслеживать что, где и когда сломали - это то еще удовольствие.

С хоткеями, кстати, проще. Акселераторы по Alt - надо будет попробовать, а остальное обрабатывалось без особых проблем.

Насчет "маленькой фигни" - да, если только ради нее, это перебор. Но обычно, браузер открыт всегда и невидимой вкладкой меньше - невидимой вкладкой больше...

А с написанием мелких оконных вещей - это та еще проблема. Qt - монструозен. WPF - в целом, позитивно, но есть определенные проблемы. WTL - быстро и компактно, но сделать что-то, выходящее за рамки стандартных контролов - требует ощутимых усилий. wxWindows - "здравствуйте 90-е".

Плюс к этому, я сформулировал, почему мне так тяжело стало писать десктопные приложения: webapp - это чистый лист. Любая его часть может, в любой момент и без малейших усилий, отобразить что угодно и стать любым контролом. В случае с любым тулкитом - на каждый вариант нужно делать форму/компонент, а контролы нужно придумывать и изготавливать отдельно.

wizzard0 February 24th, 2014
> В случае с любым тулкитом - на каждый вариант нужно делать форму/компонент, а контролы нужно придумывать и изготавливать отдельно.

Да, к этому кое-как подобрался только WPF.

justy_tylor February 24th, 2014
Исконная проблема браузеров - вся логика работы была заточена под статичные документы, и каждая новая фича (картинки, формы, интерактивность, ...) добавлялась в стандарты случайными хаками. До сих пор многие необходимые вещи недоступны или делаются криво, с неприятными артефактами для пользователей. В редакторах текста большая часть кода является хаками для компенсации браузерных хаков, но не все удаётся компенсировать. И если уже 20 лет в W3C/WHATWG всё "как всегда", то нет смысла надеяться на исправления.

Что касается десктопных фреймворков (qt, wxwidgets, ...), то со скоростью обработки событий ввода там всё ок. Могут быть проблемы в самом Ida Pro, если там какая-то тяжёлая логика не выведена в дополнительные треды.

wizzard0 February 24th, 2014
IDA, кстати, сложная конфигурируемая штука, и тормозить там есть много чему...

thedeemon February 24th, 2014
Первое правило JavaScript'a: любое мыслимое извращение непременно будет на нем реализовано. Это программистский аналог Rule 34.

wizzard0 February 24th, 2014
бгг

maxim February 24th, 2014
Истина.

wizzard0 February 25th, 2014
JS is the new LISP же.

vp February 24th, 2014
Но почему это просто не сделать на Qt???

wizzard0 February 24th, 2014
ну есть же PyQt, почему не быть node-qt?

kastaneda February 24th, 2014
Уже было в KDE 3.x нечто подобное. Но кривое.

permea_kra March 1st, 2014
Потому что есть qtscript ?

  • 1
?

Log in

No account? Create an account