LINUX.ORG.RU

Релиз Qt 4.5 и Qt Creator 1.0

 , ,


0

0

Разработчики из QtSoftware (ранее Trolltech, а ныне подразделение компании Nokia) выпустили новую версию кросс-платформенного GUI (и не только) фреймворка Qt, а также первую стабильную версию Qt Creator IDE.

======== Qt ========

В Qt 4.5 было добавлено несколько новых возможностей, также значительно увеличилась скорость работы графической подсистемы и подсистемы обработки данных. Улучшена интеграция с WebKit, в том числе:

  • Поддержка API плагинов Netscape, позволяющая загружать флеш (и другие плагины) в программах на Qt.
  • Сложные эффекты пользовательского интерфейса, включая анимацию, трансформации и масштабирование.
  • Новый движок JavaScript для улучшения производительности.

Также Qt был портирован на фреймворк Cocoa от Apple. Предыдущие версии поддерживали только Carbon. Это означает, что разработчики теперь могут создавать приложения, которые поддерживают одновременно и 32, и 64 бита, и на Intel, и на PowerPC под Mac, и при этом остаются полностью кросс-платформенными.

И одно из важных новшеств — Qt теперь можно использовать по условиям лицензии LGPL (ранее только GPL и коммерческая).

======== Qt Creator ========

Qt Creator — это легковесная кросс-платформенная среда разработки, заточенная для разработки под C++ и Qt. Разработка Qt Creator велась с прицелом на две вещи: полностью кросс-платформенная разработка; и простота использования для тех, кто только начинает знакомиться с Qt.

Среда Qt Creator включает эффективный набор средств для создания и тестирования программ на Qt:

  • Продвинутый редактор кода на языке C++
  • Контекстная помощь
  • Визуальный отладчик
  • Управление исходным кодом
  • Средства управления проектом и сборкой

Qt Creator также распространяется под лицензией LGPL 2.1. На данный момент для разработки поддерживаются только десктопные операционные системы (Windows, Linux и Mac OS), но поддержка платформ для встраиваемых устройств возможно будет добавлена в следующие несколько месяцев.

Скачать исходники: Qt 4.5, Qt Creator 1.0.

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

Deleted

Проверено: maxcom ()
Ответ на: комментарий от Klizmoid

А, еще немаловажно, завтра буду тестить, как сабж работает на XDMCP-терминалках. 4.4 что-то подлагивал. Если будет летать - то достигну полного дзена. И свой проект с тонкими клиентами на Linux буду считать защитаным.

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

> Это противоречит словам "gold это такой экспериментальный проект.
> Которые делают люди с особенным шилом в заднице".


ЧТО мешает использовать экпериментальные проекты внутри компании ? Вот написали мы какой нибудь хитрый вебсервер для наших гуловских кластеров. Он лучьше того что есть сейчас. Следущая фаза - постепенное внедрение своих разработок в своей же компании.

>> Им же ничего не мешает использовать линкер на Схеме, например , правда ? :)

> Неправда.


Что им мешает ?

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

Да вы просто пишите, что "перепишут на haskell/...c++.../" - переписывают, если видят реальную выгоду от переписывания. не забесплатоно же в гугле переписывают. Кстати прототипирование на с++ - это нонсенс ;)

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

>> Это противоречит словам "gold это такой экспериментальный проект.

>> Которые делают люди с особенным шилом в заднице".

> ЧТО мешает использовать экпериментальные проекты внутри компании ?

Определение "экспериментального проекта". Такой проект создается для проверки идей. Если идеи выдерживают проверку, они используются/реализуются в других проектах. Линковщик - это просто не та вещь, которой нужны эксперименты.

Да, и написали его не "люди с шилом в заднице", а инженеры по заданию начальства.

>>> Им же ничего не мешает использовать линкер на Схеме, например , правда ? :)

>> Неправда.

> Что им мешает ?

Отсуствие такого линкера в природе. А почему он отсуствует? Потому что никто не станет писать линкер "на выброс", для проверки каких-то идей.

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

> Кстати прототипирование на с++ - это нонсенс ;)

C++(точнее его фанаты) всегда кичился своей полной универсальностью и тем что он каждой бочке затычка. Даже ява тут с попытками написать на ней ОС общего назначения до C++ по ЧСВ не доросла. Ну так вот - затыкайте :)

Если у вас наполовину исследовательский проект то делать его на C++ вполне разумный вариант. Особенно если ваша группа состоите из его фанатов в заметной степени :) Опять же, прототипируем не чегото там - а линкер, вещь достаточно низкоуровневую.

kernel ★★☆
()

Кстати - чтобы подлить масла в огон угасающего флейма. Говорят про легкость клепания байндингов к ГТК, а так же куча их. Так вот. чтобы развеять этот миф - достаточно посмотреть на полноту этих самых байндингов. Например, к токой беззвестной платформе как джава, байндинг более чем на половину состоит из заглушек, ничего сложнее формочки "три кнопки" не напишешь. Аналогично с байндингами к окамлю. И того, нормальный байндинг к с++, python, ruby, perl. Это меньше, чем у Qt.

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

> это Вы погорячились... чем он так уж лучше std::string? ;)

хоть тут и не принято по ссылкам ходить и доки читать, но я запалюсь...

QT на этот вопрос отвечают, что их QString понимает UTF8

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

>C++(точнее его фанаты) всегда кичился своей полной универсальностью и тем что он каждой бочке затычка. Даже ява тут с попытками написать на ней ОС общего назначения до C++ по ЧСВ не доросла. Ну так вот - затыкайте :)

"Кто вам это сказал"? язык с++ не был средством быстрой разработки, а я - фанатом с++.

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

> Определение "экспериментального проекта". Такой проект создается для
> проверки идей. Если идеи выдерживают проверку, они

> используются/реализуются в других проектах. Линковщик - это просто не

> та вещь, которой нужны эксперименты.


> Да, и написали его не "люди с шилом в заднице", а инженеры по заданию

> начальства.


Вы же в курсе как работает распределение рабочего времени внутри гугла, да ? "заданием начальства" там могло не пахнуть огого сколько времени, а было только шило. А пока его отлаживали и продвигали внутри гугла, рос и его приоритет. Так что может и в конце он и стал "заданием начальства".

>Отсуствие такого линкера в природе. А почему он отсуствует? Потому что

> никто не станет писать линкер "на выброс", для проверки каких-то

>идей.


Я не специалист в области написание тулчейнов для компиляции. Но то что такие линкеры отсутствуют, это ваше ИМХО. Всякие же полуэкспериментальные компилаторы-тулчейны есть же ? Есть. tcc например. Которые пишут потому что они могут принести пользу(а могут и не принести). Значит и линкеры такие есть. Как часть подбных пакетов.


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

> "Кто вам это сказал"? язык с++ не был средством быстрой разработки,

Неужели. Одним из достоинств ооп всегда считался реюзабельность кода - отсюда богатые библиотеки - отсюда RAD. C++ ,особенно у нас, достаточно долго конкурировал с дельфи. Дельфи это не средство быстрой разработки
?

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

> а я - фанатом с++.


Могло из моего поста показатся что я вас в этом обвиняю. Так вот это не так :)

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

> Хорошо, давайте с этой точки зрения: предположим, что написали GIMP на Qt... и что изменилось бы?

GTK не появился бы. 
Все писали бы на QT. 
Винда сдохла бы еще до появления C#. 
Патенты на софт в штатах отменили бы... 
09.11 небоскребы не упали бы... 
войны в Ираке не было бы... 
Кризис не начался.

Примерно так.

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

> Кстати, где можно посмотреть сравнение производительности Qt и GTK, желательно посвежее ?

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

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

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

Богатые библетоеки - это просто необходимая вещь при разработки софта, для РАД - нужно, помимо этого, ещё и маленький цикл "изменил код-запустил" и выразительность и локаничность языка. И оба не про с++.

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

> Вы же в курсе как работает распределение рабочего времени внутри гугла, да ? "заданием начальства" там могло не пахнуть огого сколько времени, а было только шило.

Я читал сообщение в списке рассылки, и понял его так, что это была инициатива Гугла как фирмы.

> Но то что такие линкеры отсутствуют, это ваше ИМХО.

Ты можешь его легко опровергнуть %)

> Всякие же полуэкспериментальные компилаторы-тулчейны есть же ? Есть. tcc например. [...] Значит и линкеры такие есть. Как часть подбных пакетов.

Как раз нет :D Компилятор - это может быть наукоемко, круто и прочее, но линкер - никогда, по крайней мере, со времен первых динамических линковщиков. Впрочем, мою точку зрения легко опровергнуть хотя бы одной ссылкой на линкер на Схеме или чем-то подобном ;)

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

> Торжественно пристреливаю. Тех, кто ведется на такие провокации даже в моей клинике не лечат.

Тебя переименовали давно в Им. Алексеева.

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

Кстати - про реюзабильность - в с++ как раз она низкая, это уже можно судить по тому, что каждая большая либа городит свою реализацию строк (stl, wxWidgets, Qt, etc)

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

>> За один только QString любой сиплюплюспроггер должен троллей в жопу расцеловать.

> это Вы погорячились... чем он так уж лучше std::string? ;)


Как минимум, человеческой и внятной работой со всеми мысленными одно и многобайтовыми кодировками. Ну и да, всякие split/join/toInt/number весьма помогают чтоб не плодить велосипеды.

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

> Я читал сообщение в списке рассылки, и понял его так, что это была
> инициатива Гугла как фирмы.


Мне показалось ровно из тех же данных, что _релиз_ этого линкера под GPL(?) в общее пользвание было инициативой Гугла как фирмы. It makes perfect sense. То есть написали, внедрили у себя, поняли что получился не просто проект гугла, а линкер в чем то даже общего назначения. Значит это профит, нужно релизить.

>Как раз нет :D Компилятор - это может быть наукоемко, круто и прочее,

>но линкер - никогда, по крайней мере, со времен первых динамических

>линковщиков.


Но ведь на проблемы с ld + c++ жаловались ? Жаловались. вот и предмет исследования, для любителей подобного. Я не имею в виду бородатых ученых - я имею в виду людей с шилом в заднице, на вашем языке это будет "инженер-исследователь" :)

>Впрочем, мою точку зрения легко опровергнуть хотя бы

>одной ссылкой на линкер на Схеме или чем-то подобном ;)


Найду - создам отдельную тему :p. А чем вам линкер в tcc не нравится? Раз tcc сразу из C делает бинарь, там есть нечто выполняющее функции линкера, не так ли ? Задачей проекта была быстрая компиляция. Значит вполнее вероятно что и линкер писался исходя из этого ?


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

>Ага, его только сегодня выпустили, а тебе сразу сравнения подавай...

Не обязательно в сравнении с 4.5. Хотя бы примерно хотелось бы прикинуть производительность.

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

> А чем вам линкер в tcc не нравится?

Я о нем ничего не знаю.

> Раз tcc сразу из C делает бинарь, там есть нечто выполняющее функции линкера, не так ли ?

Это скорее намекает на то, что линковщика в традиционном понимании там просто нет.

> Задачей проекта была быстрая компиляция. Значит вполнее вероятно что и линкер писался исходя из этого ?

Это может значить, что там нестандартное промежуточное представление, или в коде куча хаков для ускорения работы, что не поддерживаются привычные стандарты типа ELF, и еще много всего, что умеют ld и даже gold.

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

> Кстати - про реюзабильность - в с++ как раз она низкая, это уже можно
> судить по тому, что каждая большая либа городит свою реализацию строк

> (stl, wxWidgets, Qt, etc)


Скажите это местным фанатам в лицо, не мне :p

То что язык делали каждой бочке затычкой, не значит что все затычки получились одинаково хорошими. Во времена дейльфей борландовый C++ с их компонентами использовался как RAD и был конкурентом дельфей(и MSVC). Я считаю что это происходило во многом вследствие тупости среднего программера которой в то время слышал о двух языках, C и дельфи. Под c он конечно имел в виду c++.

Потом основная масса "их" мигрировала на яву, потом часть на дотнет и мы имеем текущий флеймвар среди масс "ява" vs "дотнет"(под которым имеют в виду сишарп).
То что и тогда и сейчас отделльные умники использовали и все остальные языки, особенно в специальных нишах, не мешает общей картине.

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


>Богатые библетоеки - это просто необходимая вещь при разработки софта,

> для РАД - нужно, помимо этого, ещё и маленький цикл "изменил

>код-запустил" и выразительность и локаничность языка. И оба не про

>с++.


Быстрота и лаконичность понятия относительные. В то время тупой кодообезьяне вообще выбирать было не из чего. А прототипы нужно было писать и кодеобезьянам. Так что кололись и жрали кактус.


А вот это: "выразительность и локаничность языка. И оба не про с++.", опять же, скажите в лицо местным фанатам. Будет холивар где они вам попытаются засунуть это высказыввание .... Ну вы поняли. :) "Ламер" будет самым мягким :)

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

> Это может значить, что там нестандартное промежуточное представление,
> или в коде куча хаков для ускорения работы, что не поддерживаются

>привычные стандарты типа ELF, и еще много всего, что умеют ld и даже

> gold


ЭЭЭ. В случае tcc это именно это и значит. (Там он ИМХО вообще встроен в один бинарь с компилятором.) Чем это мешает назвать его существующим в природе экспериментальным линкером ? как раз наличие этих фич как бы хзарактерно для слова "экспериментальный", нет ?

Вообще говоря и ld скорее всего извернувшись можно скрутить в один бинарь с gcc или другим компилятором.

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

>Мне напомнить историю с инталлятором соляриса, которому для работы не хватало гига памяти?

Мхахаха. Спасибо, а я то думал, что это у меня соляра в виртуалбокс никак не ставится))

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

Эээ вопрос такой, а собственно система в которой программа имеет ядро на которое навешиваются плагины не является Unix Way'ем? Мне всегда казалось, что Юникс вей это просто модульное построение ПО, а вовсе не куча отдельных прог

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

> Эээ вопрос такой, а собственно система в которой программа имеет ядро
> на которое навешиваются плагины не является Unix Way'ем? Мне всегда

> казалось, что Юникс вей это просто модульное построение ПО, а вовсе

> не куча отдельных прог


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

PS
Имхо вот если все как в классическом юниксвей, но некие изменения все же есть, то это тоже юниксвей. Например для гимпа: есть некий процесс который хранит шареную память с загруженым файлом, и каждый инструмент гимпа это утилита вызываемая в отдельном процессе которая работает с этим основным процессом с данными, это было бы ближе. А утилиты работали бы не только с таким процессом но и с файлом его представляющим, сразу на диске. Сразу тогда можно было бы подумать о том что способы внутренного представления могут быть разными и сосотвественно переход ко всяким gegl был бы проще. И можно было бы пакет утилит использовать для пакетной обработки как imagemagick. А для юзера были бы те же инструменты. Сообщения отправлять аналогом dbus. Както так.

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

> И можно было бы пакет утилит использовать для пакетной обработки как imagemagick. А для юзера были бы те же инструменты.

Оно и так есть. Почитай документацию к GIMP'у. Только работает не как куча отдельных утилиток, а одной программой (фактически это gimp cli).

> Сообщения отправлять аналогом dbus.


Эээээ О_О...

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

> А чье ООП нормальное?

Ruby. В какой-то мере Python.

> Смоллтолк - тормозное поделие.

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

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

> Надо было назвать Qt Kreator. :)

Нет :-) Qt Qreator. А Kreator потом сделают KDE-шники, взяв за основу Qreator и плотно привязав его к KDElibs.

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

>А ведь жалко, блин. Что культура, созданная седовласыми хакерами оказалась осквернена пришедшей с венды красноглазой пионерией. Впрочем, верно это только для недолинукса, бзди и прочих GNU.

1) Ты сам пришёл с винды, и даю гарантию в 90%, была такая ситуация когда снести винду тебе не разрешали родители. 2) По возрасту ты на застал IRIX в лучшем виде, а по достатку - не сидел за СиликонГраффиксом. Cам SGI стал полным г в начале 2000-х, грелся и вис и наша контора от них в конце концов избавилась. Поменяв на HP с линуксом, ага. На следующий день мы всей компанией стали плеваться семечками в монитор - мы ж теперь "GNUтое быдло", ага. 3) CDE зачем нужен? Создан он был не седовласыми хакерами, а кодерами по поручению менеджеров. Менеджеры сказали "а какого на наших мегаворкстейшенах нет окошек?", кодеры быстро сделали что-то по мотивам Windows 2.0. 4) Меня лично тошнит что ты пытаешься "спасти честь" того, к чему не имеешь никакого отношения. "Седовласые хакеры 80-хх" это фэнтези. Но если бы они существовали, то ты был бы им противен.

Place-des-Arts
()
Ответ на: Вопрос знатокам QT от Bioreactor

> Вот это в новой версии работать будет? В Fedora 10 RU работает под Mozilla, под поделиями от Qt глючит.
> http://bassistance.de/jquery-plugins/jquery-plugin-accordion/


Потыкался в деме под konqueror/khtml и konqueror/qtwebkit - работает так же как в firefox'е.

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

> для моих задач лисп не подходит, изучать его времени нет. Да я и не говорил какое ООП лучше какое хуже. Я говорил какое наиболее популярное и наиболее применяемое.

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

даже если нет прямого применения, нужно все равно знать про другие подходы к тем же технологиям. Изучение Smalltalk & CLOS помогает сформировать правильный взгляд на ООП

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

Правильный взгляд на ООП даёт и XSD. И это почему то тоже многие забывают.

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

> Не совсем так, рисует сам Qt, но подхватывает GTKшную тему.

Почему тогда на всех ресурсах в инете пишут что: "В отличии от ранее имевшихся решений, в QGtkStyle сделан новый шаг - полная трансляция (рендеринг) вывода через библиотеку GTK2"?.. Кому верить - им или величайшим лоровским аналитикам?

I-Love-Microsoft ★★★★★
()
Ответ на: комментарий от I-Love-Microsoft

>> Не совсем так, рисует сам Qt, но подхватывает GTKшную тему.
> Почему тогда на всех ресурсах в инете пишут что: "В отличии от ранее имевшихся решений, в QGtkStyle сделан новый шаг - полная трансляция (рендеринг) вывода через библиотеку GTK2"?.. Кому верить - им или величайшим лоровским аналитикам?


Правы и те и те. QGtkStyle загружает библиотеку с GTK'шным движком темы, которая в свою очередь загружает тему GTK и рисует.

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

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

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

Vitaly-KF
()
Ответ на: комментарий от Vitaly-KF

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

Если прочитать предыдущие страницы темы, то окажется, что этот тезис был пережёван как минимум дважды =).

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

>> Отрисовка через GTK+???? Нафиг надо? Взять нетормозной тулкит и сделать отрисовку через GTK+

> Не совсем так, рисует сам Qt, но подхватывает GTKшную тему.

Ммм, а разве он не дёргает стандартные ~20 функций движка GTK+? Что значит, рисует Qt, но подхватывает GTK-ную тему?

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

> Нет :-) Qt Qreator. А Kreator потом сделают KDE-шники, взяв за основу Qreator и плотно привязав его к KDElibs.

Тоже вариант, но я как бы намекал на замечательный одноимённый музыкальный коллектив. ;-)

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

> Ммм, а разве он не дёргает стандартные ~20 функций движка GTK+? Что значит, рисует Qt, но подхватывает GTK-ную тему?

QSuperMegaProga -> libQtGui.so -> libQGtkStyle.so (-> libgtk+.so -> libglib.so) -> libsomecoolgtkengine.so (-> libgtk+.so -> libglib.so)

Как-то так...

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

> QSuperMegaProga -> libQtGui.so -> libQGtkStyle.so (-> libgtk+.so -> libglib.so) -> libsomecoolgtkengine.so (-> libgtk+.so -> libglib.so)

Ну то есть рисует всё-таки движёк гтк, которому передаётся графический контекст. Вроде так?

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

>> Может быть его отсутствие? >Отсутсвие ЧЕГО ? Линкера на c++ тоже не было пока они его не написали.

Забавные вы все-таки... Ну напишите же наконец хоть одно реальное толковое полезное приложение на вашем любимом лиспе/хаскеле/схеме/etc, чтобы люди смогли это оценить. А то живете в какой-то альтернативной реальности под именем "Если бы", потихоньку впадая в академический маразм

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

>> а Вы вообще с гтк дело имели??
> Такой вопрос svu задать - это надо постараться :-)))

Ага, я так растерялся на этом месте, что даже начал сомневаться...

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