LINUX.ORG.RU

Официально представлен релиз Qt 5.0

 


0

3

Ларс Нол (Lars Knoll), создатель движка KHTML, руководитель проекта Qt Project и директор по развитию фреймворка Qt в компании Digia, официально анонсировал Qt 5.0, первого значимого выпуска за последние семь лет. Фреймворк развивается компанией Digia при непосредственном участии сообщества в рамках нового полностью открытого процесса разработки и управления проектом.

В конце января планируется выпустить первый корректирующий релиз 5.0.1, а весной ожидается выход 5.1, в который будут включены некоторые компоненты не вошедшие в выпуск 5.0, такие как Qt 3D и Qt Sensors. Примерно в то же время будут опубликованы предварительные версии Qt для платформ Android и iOS. После этого значимые версии станут выпускаться в соответствии с фиксированным циклом подготовки релизов, два раза в год.

Qt 5 примечателен модульной структурой и смещением акцента в сторону использования средств декларативного описания интерфейса с определением логики на языке JavaScript, в то время как применение C++ позиционируется для реализации ресурсоёмких частей программы, а также для создания новых модульных бэкендов для Qt Quick. Несмотря на большое число существенных улучшений и изменений, Qt 5 сохраняет базовую обратную совместимость с прошлыми выпусками, поддерживает в полной мере средства для создания Qt-программ на языке C++ и содержит почти все компоненты Qt 4 (прекращена поддержка давно устаревших элементов), большинство модулей из бывшего Qt Mobility и некоторые экспериментальные элементы из Qt Labs.

>>> Подробности

★★★★★

Проверено: tazhate ()
Последнее исправление: Dendy (всего исправлений: 1)

Ответ на: комментарий от harper

В больших проектах количество слотов которые делают 1-3 простых операций(иногда просто преобразуют/переставляют аргументы) довольно велико, с помощью лямбд можно избавиться от этого мусора. Ну для элементарных UI обработчиков очень полезно, для асинхронной обработки сетевых потоков(логически связанный код не будет раскидан по сотне слотов). Это если с чисто прикладной точки зрения смотреть. Конечно, классические слоты(ну или хандлеры для bind'a) останутся.

bjorn
()

Qt 5 примечателен модульной структурой и смещением акцента в сторону использования средств декларативного описания интерфейса с определением логики на языке JavaScript

По тем докам/викам, что видел, получается, что QML «первичен», а «JS-логика» - по необходимости подключается. Может это и логично (для вебкодеров), но старый подход, когда «разметка морды» - лишь ресурс в проекте на каком-либо ЯП (в данном случае - JS) мне бы больше понравился.

yyk ★★★★★
()
Ответ на: комментарий от DarkEld3r

1. При чем тут вообще ИДЕ? Программы из без их использования писать можно как бы.

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

Или разработчики могут использовать разные ИДЕ.

Если твоя ИДЕ так не умеет то это проблема того, кто её выбрал.

2. Можно несколько примеров таких программ?

Лови. Разберёшься с этим, спрашивай ещё, ага.

Napilnik ★★★★★
()
Ответ на: комментарий от DarkEld3r

Лол. Значит в Qt ты нашел ужасные недостатки, а «точно такой же» паскалевский фреймфорк (LCL) совсем другое дело?

Сначала запусти кутикреатор а потом сравнивай это узкоспециальное ПО с тем что предлагает LCL.

Сам не видишь противоречий? Кроссплатформенно - да, но не за счёт ИДЕ, а тоже кросплатформенного фреймворка.

Именно за счёт ИДЕ, оно делает огромную обезьянью работу. Когда скачаешь архив, обрати внимание на большие автоматически генерируемые файлы в которых хранятся параметры натыканные по кнопкам - в коде большей части этой информации нет.

Легко перейти от использования LCL на другие фреймворки не получится. Если получится вообще.

А зачём надо переходить на худшее?

Napilnik ★★★★★
()
Ответ на: комментарий от Napilnik

Предпочитаешь читать корявые простыни для каждого нового тулкита а потом заниматься ручным сексом с биндингами?

Предпочитаю использовать фреймворк с нормальной документацией, который сделает эту ерунду за меня.

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

Ну и вот главный вопрос. Для лазаруса значит такую прослойку писать тоже надо самому, так?

Если да, то получается, что никакой мега помощи от этой «чудо ИДЕ» нет.

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

Если твоя ИДЕ так не умеет то это проблема того, кто её выбрал.

Чего? Можешь нормально ответить, вдруг я и правда чего-то не понимаю, зачем сразу огрызаться?

Qt не навязывает ИДЕ вообще, пиши где хочешь. Плюс определённые возможности для других языков есть - биндинги к питону, например. Или продвигаемый джаваскрипт.

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

DarkEld3r ★★★★★
()
Ответ на: комментарий от Napilnik

Сначала запусти кутикреатор а потом сравнивай это узкоспециальное ПО с тем что предлагает LCL.

Креатор - это ИДЕ, LCL - фреймворк (набор GUI библиотек (даже скорее набор обёрток над обертками), по сути сравним с частью Qt). Я вообще не понимаю как и зачем их сравнивать.

Вот Qt + креатор можно сравнить с Лазарусом + LCL. Кстати, любопытства ради - использовать LCL без лазаруса так же легко как Qt без креатора?

А зачём надо переходить на худшее?

Так бы и сразу сказал, что тебе не нравится именно Qt и ты предлагаешь замену «получше». Вначале ведь говорил о «принципиально другом подходе».

Но я не вижу принципиальной разницы. Вот напишу я какую-то фигню на с++ с использованием Qt, а ты на фри паскале с лазарусом/LCL. И то и другое будет кроссплатформенным. Я буду полагаться на кросплатформенность Qt, ты на то, что лазарус тебе «нагенерит файлы». Чем твой подход лучше? Документацию ведь обоим читать придётся.

DarkEld3r ★★★★★
()
Ответ на: комментарий от DarkEld3r

Предпочитаю использовать фреймворк с нормальной документацией, который сделает эту ерунду за меня.

В нашей вселенной таких не существует.

Ну и вот главный вопрос. Для лазаруса значит такую прослойку писать тоже надо самому, так?

Зачем? Он и так на нормальном языке кодит, но если ты используешь языки для которых сообщество неосилило нормальный инструментарий, то при чём здесь лазарус?

достаточно взять кроссплатформенный фреймворк типа Qt и сьекономить время.

Ага, кроссплатформенный - корявоплатформенный - после каждой новой версии, которые сыпятся как снег на голову, читай заново документацию и переписывай ПО. Ничего не имею против Qt, но для нормального его использования над ним нужна удобная прослойка.

В общем я не понимаю, что ты хочешь доказать.

Это тебе нужны какие-то доказательства а мне и так неплохо.

Napilnik ★★★★★
()
Ответ на: комментарий от DarkEld3r

Вот Qt + креатор можно сравнить с Лазарусом + LCL. Кстати, любопытства ради - использовать LCL без лазаруса так же легко как Qt без креатора?

Однажды написанную в нём гуйню можно собирать и из коммандной строки, прочие процедуры/классы дёргай откуда сможешь, только путь к модулям пропиши и пользуйся. Плюс никакой жёсткой привязки к autotols и cmake, очень универсально и удобно в отличии от.

Так бы и сразу сказал, что тебе не нравится именно Qt и ты предлагаешь замену «получше».

Qt так тулкит не удобнее гтк но на нём написаны почти няшные кеды - за что его не любить? Но употреблять его без обёртки - спасибо, не надо.

Вначале ведь говорил о «принципиально другом подходе».

Он и есть - прослойка используя которую тулкиты можно менять как перчатки не переписывая программы. При этом конечно пропадает налёт илитарности, документацию ведь придётся читать только нужную а не всю подряд.

И то и другое будет кроссплатформенным. Я буду полагаться на кросплатформенность Qt, ты на то, что лазарус тебе «нагенерит файлы». Чем твой подход лучше?

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

Документацию ведь обоим читать придётся.

Документацию гтк2 и виндового тулкита (хз как он там точно называется) не читал, когда в редактор всобачат гтк3 и Qt5, тоже планирую не читать - этим должны заниматься изготовители биндингов.

Napilnik ★★★★★
()
Ответ на: комментарий от Deleted

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

Thero ★★★★★
()
Ответ на: комментарий от yyk

так всё какраз так(если я правильно тебя понял) разметка морды(и простая логика обработки событий на кнопках, етц какраз то что рекомендуют делать на яваскрипте) абстрагированна от собственно кода. и можно(и даже нужно) вполне себе держать разметку морды отдельным файлом на QML+JS.

Thero ★★★★★
()
Ответ на: комментарий от Deleted

не угадал. впрочем вижу тебе тоже не интересно, такчто перестаём флудить.

Thero ★★★★★
()
Ответ на: комментарий от Napilnik

Предпочитаю использовать фреймворк с нормальной документацией, который сделает эту ерунду за меня.

В нашей вселенной таких не существует.

вот не надо пиздеть! Qt докуметировна так, что большинство коммерческих фреймворков тонут в негодующе-завистливой слюне.

после каждой новой версии, которые сыпятся как снег на голову, читай заново документацию и переписывай ПО.

и снова пиздёж. между минорками совместимость не ломается. а мажорки выходят в среднем раз в 5-8 лет.

rtk
()
Ответ на: комментарий от rtk

уж извините за брань, но такие выступления откровенно заебали.

rtk
()
Ответ на: комментарий от m0rph

Интерфейс так или иначе нужно как-то описывать. Использовать при этом DSL по-моему хорошая идея, т.к. «универсальный язык» нужен скорее алгоритмам, а гуйня - более-менее статическая иерархия, под неё лучше создать отдельный язык. WPF хоть и не лучший экземпляр, но вполне одобренный сообществом путь.

matumba ★★★★★
()
Ответ на: комментарий от Napilnik

Когда вы говорите, такое впечатление, что вы бредите(c) Предлагаю для начала закончить школу, а потом уже вступать в споры.

bjorn
()

rtk И полный перевод есть;) И учитывая как болезненно и быстро происходит переезд на новые мажорные версии ~5 лет не много.

ЗЫ. Твой пост, и тех кто на него ответил, рано или поздно почикают, найди английский перевод и почитай документацию лора что-ли.

Napilnik ★★★★★
()

Печально что выбрано именно такое направление развития. Лучше бы добавили полноценные возможности вывода изображения и работы с сетью из других потоков например. Ну хотя пока qt4 никто не отнял еще.

FreeLiver ★★★
()
Ответ на: комментарий от FreeLiver

Печально что выбрано именно такое направление развития. Лучше бы добавили полноценные возможности вывода изображения и работы с сетью из других потоков например. Ну хотя пока qt4 никто не отнял еще.

всё это уже есть, давно (qdoc QImage, qdoc Q*Socket).

rtk
()
Ответ на: комментарий от rtk

Ты так хвалил буржуйскую документацию и проявлял пониженные знания русской что закрались некоторые подозрения.

Napilnik ★★★★★
()
Ответ на: комментарий от Napilnik

безотносительно классовой принадлежности. просто у Qt одна из лучших документаций. и спорить с этим попросту глупо.

и я так и не понял зачем мне повышать уровень знания перевода (или даже оригинала) документации лора. какое отношение к теме, поднятой выше?

rtk
()
Ответ на: комментарий от rtk

и я так и не понял зачем мне повышать уровень знания перевода (или даже оригинала) документации лора.

Ну ты же им пользуешься, наверно и регился не в пьяном виде, тыкал галочку что прочёл.

какое отношение к теме, поднятой выше?

Из всей темы остался только этот вопрос, с остальными вроде разобрались.

Napilnik ★★★★★
()
Ответ на: комментарий от Napilnik

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

rtk
()
Ответ на: комментарий от rtk

Допустим. А за предложения не с заглавной буквы Марь Ванна линейкой по рукам не била?

Napilnik ★★★★★
()

Они в венде прокрутку в режиме постраничной прокрутки починили?

anonymous
()
Ответ на: комментарий от rtk

«я русский учил при советах»

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

anonymous
()
Ответ на: комментарий от anonymous

а до советов письменность крестьянину вообще не особо и нужна была.

rtk
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.