Re[12]: QT под LGPL. УРА!!!!!!!!!!!!!!!!
От: gandjustas Россия http://blog.gandjustas.ru/
Дата: 15.01.09 10:20
Оценка: 1 (1)
Здравствуйте, Denys V., Вы писали:

DV>Здравствуйте, Qbit86, Вы писали:

Q>>Здравствуйте, Denys V., Вы писали:
Q>>>>Есть и другой момент помимо производительности программы — производительность программиста. На WPF она выше, имхо.
DV>>>это преимущество имеет место быть востребованным в случае если твоя команда занимается штампованием прог аля CD-ejector (смотри простенькие)
Q>>«Штампованием CD-ejector'ов» можно и на Дельфи заниматься, так что мимо кассы.
DV>а я WPF туда же... в туже топку
Улыбнуло. WPF умеет работать с шейдерами и рисовать с помощью аппаратного ускорения, что Qt может предложить по этому поводу?
Кроме того WPF — не только desktop, есть еще и Silverlight.


DV>>> — ибо если ты таким образом налабаеш сложное приложение, состоящее из N компонентов.

Q>>Что-то я с этим сложноподчинённым предложением запутался.

DV>Приложение = П

DV>Компоненты = К

DV>П = К1 + К2 + К3 + ... + КN


DV>Возьмем к примеру такой параметр как отжирание памяти

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

DV>упустим что не все компоненты могут быть активны одновременно. Будем считать что у нас все работают одновременно.

DV>тогда Память отжираемая приложением — это сумма объемов памяти каждой из компонент.
Так наверное в Adobe посчитали когда писали Photoshop (который на С++ и кроссплатформенный), который грузится секунд 30, хавает 200 метров памяти и показывает пустой воркспейс.
Paint.NET при этом запускается 3 секунды и отжирает порядка 20 метров.
Re[13]: QT под LGPL. УРА!!!!!!!!!!!!!!!!
От: Qbit86 Кипр
Дата: 15.01.09 10:38
Оценка:
Здравствуйте, Кодёнок, Вы писали:

Кё>WTL-приложение кушает 6 Мб — копейки. WPF-приложение — 60 Мб, копейки


Откуда цифры взяты? Эти 60 Мб — это данные программы, или это суммарный объём только гуёвых контролов? Или что?

Кё>(типичный аргумент про .Net — «сколько у вас памяти? 2 Гб? и, что, 60 Мб у вас вызывают проблемы?»)


Типичный аргумент против .NET — это что у него с памятью проблемы. Причём в большинстве случаев предъявы никак не обоснованы, на уровне урбан мифов. У .NET потенциальные проблемы — долгая «холодная» загрузка, притормаживание при первом вызове для JIT-компиляции, возможно, общий abstraction penalty (зачастую последний пренебрежимо мал). Но все почему-то цепляются к этой памяти.

Кё>На практике — 600 Мб плюс долгие зависания на секунды, пока GC по этим 600 Мб прошаривается.


Ты уверен в вине сборщика в этих долгих зависаниях? Подробности работы GC помню не очень хорошо, но Рихтер, емнип, говорит, что для сборщика есть верхняя граница времени работы (предопределённая константа). Если не успел собрать за отведённое время, то «долгие секунды шариться» не будет — отложит. В Java, возможно, иначе.
Глаза у меня добрые, но рубашка — смирительная!
Re[12]: QT под LGPL. УРА!!!!!!!!!!!!!!!!
От: Qbit86 Кипр
Дата: 15.01.09 10:55
Оценка:
Здравствуйте, Denys V., Вы писали:

DV>Приложение = П

DV>Компоненты = К

DV>П = К1 + К2 + К3 + ... + КN


Кстати, формула некорректная. Если один компонент тратит X ресурсов, то два компонента вовсе не обязательно тратят 2X ресурсов, обычно гораздо меньше. Потому что какие-то вещи между ними шарятся, например, библиотеки дважды подгружаться не будут. Увеличение числа компонентов только удешевляет «удельную стоимость» каждого.
Глаза у меня добрые, но рубашка — смирительная!
Re[13]: QT под LGPL. УРА!!!!!!!!!!!!!!!!
От: Сергей  
Дата: 15.01.09 11:06
Оценка:
Здравствуйте, gandjustas, Вы писали:

G>Улыбнуло. WPF умеет работать с шейдерами и рисовать с помощью аппаратного ускорения, что Qt может предложить по этому поводу?


Qt может предложить использование аппаратного ускорения посредством OpenGL на Windows, Linux, MacOS и портативных/встраиваемых устройствах.

G>Кроме того WPF — не только desktop, есть еще и Silverlight.


Qt — это не только desktop, но и embedded systems.
Будет ли работать аппаратное ускорение в WPF в Silverlight? А на Windows Mobile? А на платформах, отличных от Windows?
Re[14]: QT под LGPL. УРА!!!!!!!!!!!!!!!!
От: Qbit86 Кипр
Дата: 15.01.09 11:13
Оценка:
Здравствуйте, Сергей, Вы писали:

С>Qt может предложить использование аппаратного ускорения посредством OpenGL на Windows, Linux, MacOS и портативных/встраиваемых устройствах.


Полез за пруфлинком, первая ссылка в Гугле:

OpenGL имеет дело только с трехмерным рисованием и предоставляет очень слабую поддержку (или не предоставляет её вовсе) для решения проблем GUI-программирования.

Всё-таки, гуи в Qt может быть аппаратно ускорен? Насколько просто это сделать?
Глаза у меня добрые, но рубашка — смирительная!
Re[15]: QT под LGPL. УРА!!!!!!!!!!!!!!!!
От: Sergey Россия  
Дата: 15.01.09 11:19
Оценка:
"Qbit86" <70337@users.rsdn.ru> wrote in message news:3249898@news.rsdn.ru...
> Здравствуйте, Сергей, Вы писали:
>
> С>Qt может предложить использование аппаратного ускорения посредством OpenGL на Windows, Linux, MacOS и портативных/встраиваемых устройствах.
>
> Полез за пруфлинком, первая ссылка в Гугле:

> OpenGL имеет дело только с трехмерным рисованием и предоставляет очень слабую поддержку (или не предоставляет её вовсе) для решения проблем GUI-программирования.


Это немного не про то ссылка.

> Всё-таки, гуи в Qt может быть аппаратно ускорен? Насколько просто это сделать?


Пишут что да: http://doc.trolltech.com/4.4/qt-embedded-opengl.html
Posted via RSDN NNTP Server 2.1 beta
Одним из 33 полных кавалеров ордена "За заслуги перед Отечеством" является Геннадий Хазанов.
Re[13]: что Qt может предложить по этому поводу
От: Roman Odaisky Украина  
Дата: 15.01.09 11:21
Оценка: 4 (1) +1
Здравствуйте, gandjustas, Вы писали:

G>Улыбнуло. WPF умеет работать с шейдерами и рисовать с помощью аппаратного ускорения, что Qt может предложить по этому поводу?


Ну, может предложить такое, например:

http://labs.trolltech.com/blogs/2008/12/02/widgets-enter-the-third-dimension-wolfenqt/
До последнего не верил в пирамиду Лебедева.
Re[13]: QT под LGPL. УРА!!!!!!!!!!!!!!!!
От: Anonim12  
Дата: 15.01.09 11:36
Оценка:
Казалось бы, при чём тут .NET ?

А всё очень просто. Эпоха инноваций заканчивается. И начинается эпоха ОПТИМИЗАЦИИ и РАЦИОНАЛИЗАЦИИ.

1) Cкорость написания программ на Qt достаточно высокая, чтобы охарактиризовать процесс как Rapid Application Development
2) И код генерируется рационально — как с точки зрения скорости исполнения, так и объёма бинарника.

И несоменно, главное преимущество — кроссплатформенность.

Здравствуйте, gandjustas, Вы писали:

G>Улыбнуло. WPF умеет работать с шейдерами и рисовать с помощью аппаратного ускорения, что Qt может предложить по этому поводу?


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

Использовать 2D контролы QT для работы — очень практично и удобно. К тому же, есть и возможность нарисовать собственные — а потом опубликовать для коммьюнити и совместными усилиями их улучшать. Ведь в принципе ничего больше и не нужно.

А если говорить о трёхмерных игрушках или каких-то сложных средствах визуализации для Direct3D с помощью WPF, то в этой области уже есть готовые альтернативные решения для абстрагирования от Direct3D, позволяющие разрабатывать приложения одновременно и под DirectX в Windows и под OpenGL в Linux и MacOS X. Например, бесплатные для коммерческого использования, открытые кроссплатформенные библиотеки irrlicht, ogre3d — уже отлично позволяют это делать. В irrlicht (лицензия типа BSD) кроме поддержки аппаратных Direct3D и OpenGL, .NET language binding, даже есть ультрабыстрый software renderer — что вообще позволяет охватить максимальное количество десктопов (Platform independent. Runs on Windows95, 98, NT, 2000, XP, Linux, OSX, Solaris, and others).

G>Кроме того WPF — не только desktop, есть еще и Silverlight.


IMHO, а в этой области я вообще предпочитаю ещё дополнительно прислушиваться к мнению Google.
Re[16]: QT под LGPL. УРА!!!!!!!!!!!!!!!!
От: Qbit86 Кипр
Дата: 15.01.09 11:37
Оценка:
Здравствуйте, Sergey, Вы писали:

>> С>Qt может предложить использование аппаратного ускорения посредством OpenGL на Windows, Linux, MacOS и портативных/встраиваемых устройствах.


S>Пишут что да: http://doc.trolltech.com/4.4/qt-embedded-opengl.html


Про Windows, Linux и MacOS там не написано, только про embedded. Я мог бы попросить ещё пример кода, реализующего аппаратное ускорение для гуёвых контролов, но боюсь его увидеть :)
Глаза у меня добрые, но рубашка — смирительная!
Re[14]: QT под LGPL. УРА!!!!!!!!!!!!!!!!
От: Qbit86 Кипр
Дата: 15.01.09 11:51
Оценка:
Здравствуйте, Anonim12, Вы писали:

A>Казалось бы, при чём тут .NET ?


А ещё в этой ветке слишком мало Nemerle. Требую больше Nemerle!

A>А всё очень просто. Эпоха инноваций заканчивается. И начинается эпоха ОПТИМИЗАЦИИ и РАЦИОНАЛИЗАЦИИ.


Причём, не столько оптимизации бинарника, сколько рационализации труда разработчика.

A>1) Cкорость написания программ на Qt достаточно высокая, чтобы охарактиризовать процесс как Rapid Application Development


Кстати, как выглядит байндинг на Qt? Скажем, надо привязвть двусторонней привязкой View к ViewModel, например, текстбокс к полю типа «дата/время» (не знаю, как в Qt соотв. класс называется). В WPF привязки можно делать как декларативно, так и по старинке (в коде). Можно пример на Qt?
Глаза у меня добрые, но рубашка — смирительная!
Re[14]: QT под LGPL. УРА!!!!!!!!!!!!!!!!
От: gandjustas Россия http://blog.gandjustas.ru/
Дата: 15.01.09 11:53
Оценка: +2 -3
Здравствуйте, Anonim12, Вы писали:

A>Казалось бы, при чём тут .NET ?


A>А всё очень просто. Эпоха инноваций заканчивается. И начинается эпоха ОПТИМИЗАЦИИ и РАЦИОНАЛИЗАЦИИ.

Эпоха ОПТИМИЗАЦИИ закочилась 25-30 лет назад.

A>1) Cкорость написания программ на Qt достаточно высокая, чтобы охарактиризовать процесс как Rapid Application Development

Вау. С++ за черт знает сколько лет дорос до RAD. Это когда от RAD многие отказываются ибо "программирование мышкой" годится только для создания простых программ или прототипов.

A>2) И код генерируется рационально — как с точки зрения скорости исполнения, так и объёма бинарника.

Не совсем рационально. Не используется параллелизм и декларативно его задать не получится.

A>И несоменно, главное преимущество — кроссплатформенность.

Призрачно преимущество. Даже кроссплатформенные GUI фреймворки не делают приложения автоматически кроссплатформенными, в очень многих случаях окружение также надо учитывать.

A>Здравствуйте, gandjustas, Вы писали:


G>>Улыбнуло. WPF умеет работать с шейдерами и рисовать с помощью аппаратного ускорения, что Qt может предложить по этому поводу?


A>Скажите пожалуйста, как эти все бантики и украшательства с шейдерами, аппаратным ускорением пригодятся для конкретной серьёзной работы, например рядовому бухгалтеру с медленной видеокартой?

Затем же зечем и Qt — абсолютно не зачем.
Я вообще имею стойкое убеждение что все приложения, не требующие красивой графики и обработки обработки больших объемов данных на клиентской стороне, должы быть Web-based.

A>Использовать 2D контролы QT для работы — очень практично и удобно. К тому же, есть и возможность нарисовать собственные — а потом опубликовать для коммьюнити и совместными усилиями их улучшать. Ведь в принципе ничего больше и не нужно.

Не нужно для чего?
Для бизнес-приложений вообще не нужен десктопный клиент. Там, где задействуется графика — лучше WPF.

A>А если говорить о трёхмерных игрушках или каких-то сложных средствах визуализации для Direct3D с помощью WPF, то в этой области уже есть готовые альтернативные решения для абстрагирования от Direct3D, позволяющие разрабатывать приложения одновременно и под DirectX в Windows и под OpenGL в Linux и MacOS X. Например, бесплатные для коммерческого использования, открытые кроссплатформенные библиотеки irrlicht, ogre3d — уже отлично позволяют это делать. В irrlicht (лицензия типа BSD) кроме поддержки аппаратных Direct3D и OpenGL, .NET language binding, даже есть ультрабыстрый software renderer — что вообще позволяет охватить максимальное количество десктопов (Platform independent. Runs on Windows95, 98, NT, 2000, XP, Linux, OSX, Solaris, and others).

Игрушки с 3D графикой на WPF делать не стоит. А вот редактор моделей для этой игрушке вполне можно изобразить на WPF.
А то что касается игрушек — на PDC был доклад про Mono, там показан был фреймворк для разработки игр (на C#), которые запускаются как под маком,виндовс, linux и даже на iPhone.

G>>Кроме того WPF — не только desktop, есть еще и Silverlight.

A>IMHO, а в этой области я вообще предпочитаю ещё дополнительно прислушиваться к мнению Google.
А что гугл говорит по этому поводу? Правильно — ничего. Нету у гугла Rich Internet Application платформы.
Re[17]: QT под LGPL. УРА!!!!!!!!!!!!!!!!
От: Roman Odaisky Украина  
Дата: 15.01.09 11:55
Оценка:
Здравствуйте, Qbit86, Вы писали:

Q>Я мог бы попросить ещё пример кода, реализующего аппаратное ускорение для гуёвых контролов, но боюсь его увидеть :)


apt-get source qt4-x11.

А еще есть GLUI, библиотека, которая только OpenGL и использует.
До последнего не верил в пирамиду Лебедева.
Re[15]: QT под LGPL. УРА!!!!!!!!!!!!!!!!
От: Roman Odaisky Украина  
Дата: 15.01.09 11:59
Оценка:
Здравствуйте, Qbit86, Вы писали:

Q>Кстати, как выглядит байндинг на Qt? Скажем, надо привязвть двусторонней привязкой View к ViewModel, например, текстбокс к полю типа «дата/время» (не знаю, как в Qt соотв. класс называется). В WPF привязки можно делать как декларативно, так и по старинке (в коде). Можно пример на Qt?


Примерно так:
m_mapperDescription->addMapping(ui.dateLeaseExpiry, m_taDescription->fieldIndex("dateLeaseExpiry"));
До последнего не верил в пирамиду Лебедева.
Re[15]: QT под LGPL. УРА!!!!!!!!!!!!!!!!
От: Сергей  
Дата: 15.01.09 11:59
Оценка:
Здравствуйте, Qbit86, Вы писали:

Q>Всё-таки, гуи в Qt может быть аппаратно ускорен? Насколько просто это сделать?


В Qt 4.5 эта возможность будет "искаропки". Посмотреть, вероятно, можно уже сейчас, скачав бету.
здесь
Re[14]: что Qt может предложить по этому поводу
От: gandjustas Россия http://blog.gandjustas.ru/
Дата: 15.01.09 12:04
Оценка:
Здравствуйте, Roman Odaisky, Вы писали:

RO>Здравствуйте, gandjustas, Вы писали:


G>>Улыбнуло. WPF умеет работать с шейдерами и рисовать с помощью аппаратного ускорения, что Qt может предложить по этому поводу?


RO>Ну, может предложить такое, например:

RO>
RO>http://labs.trolltech.com/blogs/2008/12/02/widgets-enter-the-third-dimension-wolfenqt/

Мда.. они наконец изобрели wolfenstein 3d

Лучше смотрите это
Re[15]: что Qt может предложить по этому поводу
От: Сергей  
Дата: 15.01.09 12:17
Оценка: +1
Здравствуйте, gandjustas, Вы писали:

G>Мда.. они наконец изобрели wolfenstein 3d

G>Лучше смотрите это

Quake1/2/3 элементарно портируется на QtOpenGL.
Re[17]: QT под LGPL. УРА!!!!!!!!!!!!!!!!
От: Sergey Россия  
Дата: 15.01.09 12:44
Оценка:
"Qbit86" <70337@users.rsdn.ru> wrote in message news:3249945@news.rsdn.ru...
> Здравствуйте, Sergey, Вы писали:
>
>>> С>Qt может предложить использование аппаратного ускорения посредством OpenGL на Windows, Linux, MacOS и портативных/встраиваемых устройствах.
>
> S>Пишут что да: http://doc.trolltech.com/4.4/qt-embedded-opengl.html
>
> Про Windows, Linux и MacOS там не написано, только про embedded.

Никто не обещает, что ускорение будет под все платформы, под которые есть qt — по вполне очевидным причинам. Но нетрудно догадацца, что под платформы, под которые QT умеет OpenGL, будет работать и QOpenGLPaintEngine.
А вообще там пишут что и Direct3D под винду имеется:
Constant Value Description
QPaintEngine::X11 0
QPaintEngine::Windows 1
QPaintEngine::MacPrinter 4
QPaintEngine::CoreGraphics 3 Mac OS X's Quartz2D (CoreGraphics)
QPaintEngine::QuickDraw 2 Mac OS X's QuickDraw
QPaintEngine::QWindowSystem 5 Qt for Embedded Linux
QPaintEngine::PostScript 6
QPaintEngine::OpenGL 7
QPaintEngine::Picture 8 QPicture format
QPaintEngine::SVG 9 Scalable Vector Graphics XML format
QPaintEngine::Raster 10
QPaintEngine::Direct3D 11 Windows only, Direct3D based engine
QPaintEngine::Pdf 12 Portable Document Format
QPaintEngine::User 50 First user type ID
QPaintEngine::MaxUser 100 Last user type ID

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


Да-да, использовать QOpenGLPaintEngine в качестве QPaintEngine — это так страшно
Posted via RSDN NNTP Server 2.1 beta
Одним из 33 полных кавалеров ордена "За заслуги перед Отечеством" является Геннадий Хазанов.
Re[15]: QT под LGPL. УРА!!!!!!!!!!!!!!!!
От: Sergey Россия  
Дата: 15.01.09 12:48
Оценка:
"gandjustas" <67312@users.rsdn.ru> wrote in message news:3249976@news.rsdn.ru...

> A>А всё очень просто. Эпоха инноваций заканчивается. И начинается эпоха ОПТИМИЗАЦИИ и РАЦИОНАЛИЗАЦИИ.

> Эпоха ОПТИМИЗАЦИИ закочилась 25-30 лет назад.

Насмешил. Ага, еще скажи што памяти всегда любому приложению хватает, дали 3 гига и больше не понадобится

> G>>Кроме того WPF — не только desktop, есть еще и Silverlight.

> A>IMHO, а в этой области я вообще предпочитаю ещё дополнительно прислушиваться к мнению Google.
> А что гугл говорит по этому поводу? Правильно — ничего. Нету у гугла Rich Internet Application платформы.

А GWT не считается?
Posted via RSDN NNTP Server 2.1 beta
Одним из 33 полных кавалеров ордена "За заслуги перед Отечеством" является Геннадий Хазанов.
Re[15]: что Qt может предложить по этому поводу
От: Denys V. Украина http://ua.linkedin.com/in/dvalchuk
Дата: 15.01.09 12:50
Оценка:
Здравствуйте, gandjustas, Вы писали:

G>Здравствуйте, Roman Odaisky, Вы писали:


RO>>Здравствуйте, gandjustas, Вы писали:


G>>>Улыбнуло. WPF умеет работать с шейдерами и рисовать с помощью аппаратного ускорения, что Qt может предложить по этому поводу?


RO>>Ну, может предложить такое, например:

RO>>
RO>>http://labs.trolltech.com/blogs/2008/12/02/widgets-enter-the-third-dimension-wolfenqt/

G>Мда.. они наконец изобрели wolfenstein 3d


G>Лучше смотрите это


вы сравнили божий дар с яичницей...
Там есть видео в 3D сцене??? Или вэб-браузер??? Или Rich Text control? или...
Где все???
Молодцы. Наконецто создали игру вчерашнего дня и на Сильверлайт. На чем только не переписывали бедную кваку Посмотрите остальные игры — они все на С++ (практически)
С уважением Denys Valchuk

IMHO чем больше мнений тем оптимальней выбор варианта... :)
Re[13]: QT под LGPL. УРА!!!!!!!!!!!!!!!!
От: bkat  
Дата: 15.01.09 13:04
Оценка:
Здравствуйте, gandjustas, Вы писали:

G>Сообщаю новость. Времена когда память была серьезны ограничением давно прошли.


Да, память это не очень сереьзное ограничение, но поскольку большинство так думает,
то в итоге на моем компе с 2 гигами памяти, нормально работать можно максимум с 2-мя приложениями (VisualStudio и UML tool).
Я конечно могу еще гиг докупить и тогда можно будет еще Word запустить...

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