Представлен (http://akreuzkamp.de/2013/07/10/webapps-written-in-qml-not-f... новый проект сообщества KDE - QmlWeb (https://projects.kde.org/projects/playground/www/qmlweb), в рамках которого развивается JavaScript-библиотека, осуществляющая разбор и выполнения конструкций на языке QML (http://ru.wikipedia.org/wiki/QML) (Qt Meta-Object Language), позволяя использовать данный язык вместо JavaScript для создания динамических сайтов. QML является центральным звеном среды Qt Quick, ориентированной на разработку интерфейса пользователя. По мнению авторов QmlWeb, если QML прекрасно справляется с созданием графических интерфейсов, то им также будет удобно пользоваться и для создания интерактивных web-интерфейсов.
Текущая реализация не поддерживает все возможности QML, присутствующие в Qt. Тем не менее, поддерживается базовый синтаксис и элементы Item, Rectangle, Text, Image, BorderImage, MouseArea, Repeater, ListModel, NumberAnimation, SequentialAnimation. Кроме того, добавлена поддержка специфичных для web-элементов, таких как Button, TextInput и TextArea.<center><a href="http://akreuzkamp.de/files/2013/07/QmlWeb-Demopage.png"... src="http://www.opennet.me/opennews/pics_base/0_1373563553.png" style="border-style: solid; border-color: #e9ead6; border-width: 15px;" title="" border=0></a></center>
URL: http://akreuzkamp.de/2013/07/10/webapps-written-in-qml-not-f.../
Новость: http://www.opennet.me/opennews/art.shtml?num=37402
лишняя прослойка, тормозившая выполнение веб-приложений...
> лишняя прослойка, тормозившая выполнение веб-приложений...Разве это плохо? Скорость же не главное.
Ага, вот поэтому жаву и имеем.
Яву имеет Oracle, а через неё и всех остальных
А если серьёзно, то на ней, в своё время целые ОС работали ощутимо шустро... Просто идёт время, у новых разрабов руки чешутся, а помыться им лень... Тьфу, вот и получаем решения, которые для себя делать не будешь, а деньги не пахнут...
>>Kai Mast July 11, 2013 at 10:56 am
>>How is this rendered? Does it use WebGL?
> Anton Kreuzkamp Post authorJuly 11, 2013 at 7:18 pm
> QmlWeb creates a DOM element for each QML element and does the positioning using position: absolute. All QML properties are translated into CSS properties. (Also edited the post, accordingly)
> WebGL would be possible for opengl-animations in the context of css shaders (http://www.adobe.com/devnet/html5/articles/css-shaders.html) but definitely not needed.
> So the webbrowser doesn’t need any HTML5 (it currently needs ECMAScript 5, though).
>> and does the positioning using position: absoluteНу я даже не знаю. Это ведь делать за браузер его работу.
> Ну я даже не знаю. Это ведь делать за браузер его работу.Браузер, все-таки, заточен под верстку веб-страниц, а не окон приложений.
Есть нюансы.
Нюансы - это очень мягко сказано.
> Нюансы - это очень мягко сказано.Ну знаешь, таки когда у тебя заложена группировка объектов в сам язык разметки интефрейса и подразумевается, что объекты будут подстраиваться под размер формы, на которую выводятся, и будут менять свой размер вместе с ней, то делать position:absolute как-то глупо. Это ж за положением всех объектов и их размером либе придётся следить лично. Ну ладно бы ещё relative относительно контейнеров, но не топором же по яйцам.
А по-другому у тебя возникает масса других поблем. Здесь ты хотя бы точно контролируешь происходящее. И, кстати, в 99% случаев возможность подстройки элементов под размер формы нафиг не нужна. Максимум - нужен ОДИН элемент, который будет менять размер. Но никак не все пропорционально.
Да, собственно, так обычно и делают. Но нормальные люди ведь обозначают для этого layout в той или иной форме, и в нужных местах вставляют либо распорки, чтоб всё остальное не тянуло, либо контент (который как-раз таки нужно растянуть обычно). Но нафига при этом нужно абсолютное позиционирование для всего?
Ура. Наконец за интерфейсы веб-приложений возьмется хоть кто-то, кто понимает, что такое интерфейс приложения.P.S. Веб-приложения - все равно уродство, но может они хотя бы будут чуть меньшим уродством, чем сейчас
Далеко не каждый писатель интерфейсов приложений знает, как их надо писать. Пример: разработчики gnome.
Чем вам гном то не угодил?
> Чем вам гном то не угодил?Он просто кедорас.
Если разработчик не понимает что пользователь в действительности будет пытаться сделать с его приложением, то у него в любом случае получится кривой кусок говна, а не удобный интерфейс. И не важно сделает он его в вебе на HTML или QtCreator'е на QML.Кстати, пример удивительно правильный. По крайней мере отчасти правильный. Всё-таки я нахожу Gnome Shell довольно удобным (после того, как поставил около 20 расширений), вот только некоторые моменты меня всё равно вымораживают. Клацаю я на торрент в браузере, чтоб открыть его для закачки. Что я ожидаю? Что Transmission всплывёт на передний план с открытым окном торрента. Что я получаю? Сраное уведомление о том, что он к чему-то готов! Если по нему успеть клацнуть, то он таки всплывёт. Вот четно, очень хочется посмотреть в эти критсально чистые, незамутнённые разумом глаза того идиота, который это придумал.
Ну или скрывающуюся область уведомлений. На Full HD мониторе, мать их так, на котором место девать некуда. Хорошо хоть расширения на это есть. Плохо, что у них есть идеи на счёт блокировки возможности модификации верхней панели.
Зато писатели тулкитов имеют массу опыта на тему "как должен работать тулкит". В частности - как должен работать лайаут формы, а не страницы.
> Зато писатели тулкитов имеют массу опыта на тему "как должен работать тулкит".
> В частности - как должен работать лайаут формы, а не страницы.Огласи, пожалуйста, в чём заключаются кардинальные различия, которые положительно скажутся на удобстве веб-форм. А то я много интерфейсов видел разных и хорошие я видел и там, и там. И запредельно неудобные тоже (одна только винда какого количества матов стоит).
В удобстве их клепания в основном. В частности - не дурной HTML-поток, который формам сто лет не нужен, и нормальные компоненты, которые не надо каждый раз делать руками и которые выглядят и работают так, как пользователь привык на десктопе. Мне тут надысь понадобилась утилитка - для себя, ничего сложного ToDo с небольшими приколами. Я как подумал, что это надо будет бекбон цеплять, да компоненты свои делать, да то, да се... и забил. А на дельфях или QtCreator такое лепится за пол-часа - раскидал, обработчики сунул, и готово. И для большинства случаев ничего большего и не нужно.
HTML-поток - вообще не аргумент ни за, ни против. Специально для веб-интерфейсов уже придумали flex-модель. Или берём, например, GWT (http://www.gwtproject.org/examples.html) в качестве тулкита готовых компонент и пользуемся.> и нормальные компоненты, которые не надо каждый раз делать руками и которые выглядят и работают так, как пользователь привык на десктопе.
IDE с визуальным редактором и горами компонентов для веб-приложений ты, я так понимаю, ни разу не видел? Так их есть в достатке. Хочешь визуальный редактор, который всё за тебя сделает,— пользуешься. Не хочешь — не пользуешься.
QML, кстати, и вовсе придумывался для упрощения описания интерфейса без применения визуального редактора.
Кстати, на счёт готовых компонентов. Сколько ты их ни напихай готовых в IDE, а всё одно рано или поздно приходится создавать свои собственные, расширяя существующие или создавая с нуля.
я так и не понял - а где поглядеть демку сего чуда не в png, а в реале?
Кровавая гэбня трёт беобидные комментарии анончиков, голактеко опасносте!11
> Кровавая гэбня трёт беобидные комментарии анончиков, голактеко опасносте!11Ой вей!
Интерфейс на QML делать очень удобно. На мой взгляд, один QML гораздо лучше мешанины из HTML, CSS и JS.