metaclass: (Default)
metaclass ([personal profile] metaclass) wrote2009-02-13 12:55 am

qt

Наконец, вместо того, чтобы копировать qt с компа на комп и копаться в его исходниках, немного побаловался с написанием программ. Выводы:
1) qt creator (и возможно, сам qt) еще таки дорабатывать и дорабатывать. Глючит-с. Мне кажется, что это не уровень RC, это таки сырая бета.
2) qt не использует стандартных виндовских контролов вообще, судя по тому, что spyxx не видит ничего в проге кроме топ-левел окна.
3) Способ разработки гуя достаточно интересен, некоторые вещи интуитивно понятнее и удобнее дельфей и вижуал-студии.
4) Надо написать хотя бы одну полноценную прогу на этом деле, чтобы таки осознать, стоит дергаться ради галочки "можно писать кроссплатформенный GUI".

[identity profile] max-posedon.livejournal.com 2009-02-12 11:11 pm (UTC)(link)
1) qt creator да глючный, сам qt-rc много стабильнее даже предыдущего стабильног qt
2) Тут немного истории, Qt раньше очень даже их использывал/мог использывать, но по причинам performance они таки написали свой (это главная фича qt-4.5), наскока я знаю она опциональная, но выключенная по умолчанию
3) Там чем дальше, тем вкуснее :)
4) Good luck!

[identity profile] max-posedon.livejournal.com 2009-02-12 11:13 pm (UTC)(link)
P.S. Надо наш production app на 4.5rc1 обновить, лично посмотреть, что вкусно/сломано в 4.5rc1

[identity profile] thesz.livejournal.com 2009-02-12 11:21 pm (UTC)(link)
Я не спец, но, говорят, стоит.

Коллеги написали какой-то развесистый редактор схем нестандартной БД за небольшое время. Очень довольны по сию пору.

[identity profile] theiced.livejournal.com 2009-02-12 11:34 pm (UTC)(link)
1. qt creator не видел, но qt он таки rock stable последние лет 7-8,
2. таки макс начал аписнять но недообъяснил - у них там одно опенглное окно в котором всё рендерится как я слышал. и вам таки не пофиг как оно там? выглядит так же? да. ведёт себя так же? да.
3. ви таки ещё не оценили все прелести лэйаутов.
4. надо.

[identity profile] theiced.livejournal.com 2009-02-12 11:38 pm (UTC)(link)
И вы таки поосторожнее с `удобнее чем дельфи`, а то сейчас набегут авторы ситиинфы и закидают какашками.

[identity profile] zamotivator.livejournal.com 2009-02-13 10:12 am (UTC)(link)
Ну, первую дозу принял, дальше подсядешь =)
З.Ы. это реальный пиздец - я не могу всерьёз ни одну библиотеку GUI рассматривать, после опыта разработки на Qt =) Блевать тянет что с gtk, что с winapi, что с wxwidgets =)

Но у Qt есть недостатки. Но у кого их нет =)

[identity profile] kiryl.livejournal.com 2009-02-13 10:36 am (UTC)(link)
Главный недостаток Qt -- это C++.

[identity profile] metaclass.livejournal.com 2009-02-13 10:47 am (UTC)(link)
Почему это недостаток и какие альтернативы?

[identity profile] max-posedon.livejournal.com 2009-02-13 11:00 am (UTC)(link)
Не путайте тёплое с мягким, там не перечислино ни одного недостака C++, кроме того, что на C++ пишут больше идиотов чем на C, не более.

А трэд конечно эпичный и весёлый, и как раз из его следуют, что C++Qt ОЧЕНЬ хорош, ибо ребята сфокусирывались на архитектуре и на API, а не на синтаксическом сахаре.

[identity profile] kiryl.livejournal.com 2009-02-13 11:11 am (UTC)(link)
Вы когда-нибудь пробовали починить сборку проекта в котором активно используется STL. Нужно быть человекоподобным роботом, что бы разобрать эти простыни диагностики, которые генерирует компилятор.

(no subject)

[identity profile] max-posedon.livejournal.com - 2009-02-13 11:14 (UTC) - Expand

(no subject)

[identity profile] kiryl.livejournal.com - 2009-02-13 11:17 (UTC) - Expand

(no subject)

[identity profile] max-posedon.livejournal.com - 2009-02-13 11:19 (UTC) - Expand

(no subject)

[identity profile] kiryl.livejournal.com - 2009-02-13 11:39 (UTC) - Expand

(no subject)

[identity profile] max-posedon.livejournal.com - 2009-02-13 11:43 (UTC) - Expand

(no subject)

[identity profile] kiryl.livejournal.com - 2009-02-13 12:31 (UTC) - Expand

(no subject)

[identity profile] max-posedon.livejournal.com - 2009-02-13 12:35 (UTC) - Expand

(no subject)

[identity profile] kiryl.livejournal.com - 2009-02-13 12:46 (UTC) - Expand

(no subject)

[identity profile] max-posedon.livejournal.com - 2009-02-13 12:50 (UTC) - Expand

(no subject)

[identity profile] kiryl.livejournal.com - 2009-02-13 12:54 (UTC) - Expand

(no subject)

[identity profile] max-posedon.livejournal.com - 2009-02-13 13:30 (UTC) - Expand

(no subject)

[identity profile] max-posedon.livejournal.com - 2009-02-13 13:32 (UTC) - Expand

(no subject)

[identity profile] kiryl.livejournal.com - 2009-02-13 14:06 (UTC) - Expand

(no subject)

[identity profile] max-posedon.livejournal.com - 2009-02-13 14:08 (UTC) - Expand

(no subject)

[identity profile] kiryl.livejournal.com - 2009-02-13 14:03 (UTC) - Expand

(no subject)

[identity profile] max-posedon.livejournal.com - 2009-02-13 14:09 (UTC) - Expand

[identity profile] metaclass.livejournal.com 2009-02-13 11:03 am (UTC)(link)
А, это известная печаль, про неадекватность объектных моделей. Это обсуждение периодически всплывает, начинается холивар, ни к чему толковому не приходят и все заканчивается при своих:)
Вот еще на эту же тему.

[identity profile] theiced.livejournal.com 2009-02-13 01:50 pm (UTC)(link)
C++ говно, бесспорно. Причём говно уникальное. Автор С++ даже книжку напейсал 'Почему С++ Такое Говно И кому оторвать яйца за это' ('The Design And Evolution Of C++').

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

[identity profile] zamotivator.livejournal.com 2009-02-13 12:30 pm (UTC)(link)
Производительность фреймворка - недостаток?
В любом случае, готов обсуждать устриц лишь с тем, кто их ел.
+ биндинги никто не отменял. А хорошая архитектура ложится в любой язык. Огромное количество биндингов потверждает интепорабельность архитектуры и дизайна кути к любому языку программирования.

[identity profile] kiryl.livejournal.com 2009-02-13 12:35 pm (UTC)(link)
Для производительности придумали C.

[identity profile] max-posedon.livejournal.com 2009-02-13 12:36 pm (UTC)(link)
Увы, Qt работает быстрее gtk, и быстрее gtk+cairo.

(no subject)

[identity profile] max-posedon.livejournal.com - 2009-02-13 12:53 (UTC) - Expand

(no subject)

[identity profile] kiryl.livejournal.com - 2009-02-13 12:55 (UTC) - Expand

(no subject)

[identity profile] max-posedon.livejournal.com - 2009-02-13 12:56 (UTC) - Expand

(no subject)

[identity profile] kiryl.livejournal.com - 2009-02-13 12:58 (UTC) - Expand

(no subject)

[identity profile] max-posedon.livejournal.com - 2009-02-13 13:27 (UTC) - Expand

[identity profile] zamotivator.livejournal.com 2009-02-13 01:28 pm (UTC)(link)
готов обсуждать устриц лишь с тем, кто их ел.
1) Более строгая типизация даёт более хорошие оптимизации
2) Константность даёт оптимизации
Во всём остальном производительность С и С++ совпадает. При условии нормального компилятора, естественно.

[identity profile] kiryl.livejournal.com 2009-02-13 01:43 pm (UTC)(link)
6-13% времени исполнения тратится на диспетчеризацию виртуальных функций. http://www.cs.ucsb.edu/~urs/oocsb/papers/oopsla96.pdf

(no subject)

[identity profile] metaclass.livejournal.com - 2009-02-13 13:49 (UTC) - Expand

(no subject)

[identity profile] kiryl.livejournal.com - 2009-02-13 14:11 (UTC) - Expand

(no subject)

[identity profile] metaclass.livejournal.com - 2009-02-13 14:14 (UTC) - Expand

(no subject)

[identity profile] max-posedon.livejournal.com - 2009-02-13 14:16 (UTC) - Expand

(no subject)

[identity profile] kiryl.livejournal.com - 2009-02-13 14:20 (UTC) - Expand

(no subject)

[identity profile] zamotivator.livejournal.com - 2009-02-13 14:44 (UTC) - Expand

(no subject)

[identity profile] theiced.livejournal.com - 2009-02-13 15:15 (UTC) - Expand

(no subject)

[identity profile] zamotivator.livejournal.com - 2009-02-13 15:28 (UTC) - Expand

(no subject)

[identity profile] kiryl.livejournal.com - 2009-02-13 18:22 (UTC) - Expand

(no subject)

[identity profile] zamotivator.livejournal.com - 2009-02-13 18:25 (UTC) - Expand

(no subject)

[identity profile] zamotivator.livejournal.com - 2009-02-13 18:25 (UTC) - Expand

(no subject)

[identity profile] kiryl.livejournal.com - 2009-02-13 14:17 (UTC) - Expand

(no subject)

[identity profile] zamotivator.livejournal.com - 2009-02-13 14:46 (UTC) - Expand

(no subject)

[identity profile] zamotivator.livejournal.com - 2009-02-13 14:43 (UTC) - Expand

[identity profile] vp.livejournal.com 2009-02-13 04:57 pm (UTC)(link)
А чем плох С++?
Я вот пишу на дельфи 99% вещей, но был бы в 100 раз более счастлив если бы то же самое исторически начал бы делать с базовым языком С++. Места для маневров намного больше

[identity profile] kiryl.livejournal.com 2009-02-13 06:09 pm (UTC)(link)
Встречный вопрос: а чем плох старый добрый C? Про ООП расказывать не нужно -- на C можно писать в объектно-ориентированном стиле и довольно красиво получается.

[identity profile] max-posedon.livejournal.com 2009-02-13 06:20 pm (UTC)(link)
/me вспомнил добавление item-а в GtkTreeView.... не-не-не!

(no subject)

[identity profile] kiryl.livejournal.com - 2009-02-13 18:24 (UTC) - Expand

[identity profile] max-posedon.livejournal.com 2009-02-13 06:33 pm (UTC)(link)
btw, последнее время вижу всё больше поползновений в сторону vala , весьма приятный язык с тесной интеграцией с glib, gtk, etc(gobject и семейство), при этом с вполне красивым синтаксисом. По факту, он превращается в C препроцессором и компилируется как C. Уровень интеграции где-то на уровне mono, gtk#. Весьма вкусно могу вам сказать.

(no subject)

[identity profile] kiryl.livejournal.com - 2009-02-13 18:34 (UTC) - Expand

[identity profile] vp.livejournal.com 2009-02-13 06:54 pm (UTC)(link)
Дык вроде ж в классическом Си ООП никакого нет? Как писать "в стиле" ?

(no subject)

[identity profile] kiryl.livejournal.com - 2009-02-13 20:41 (UTC) - Expand

(no subject)

[identity profile] vp.livejournal.com - 2009-02-13 21:31 (UTC) - Expand

(no subject)

[identity profile] kiryl.livejournal.com - 2009-02-13 21:48 (UTC) - Expand

(no subject)

[identity profile] vp.livejournal.com - 2009-02-14 07:15 (UTC) - Expand

(no subject)

[identity profile] kiryl.livejournal.com - 2009-02-14 09:55 (UTC) - Expand

(no subject)

[identity profile] metaclass.livejournal.com - 2009-02-14 10:46 (UTC) - Expand

(no subject)

[identity profile] vp.livejournal.com - 2009-02-14 12:19 (UTC) - Expand

(no subject)

[identity profile] kiryl.livejournal.com - 2009-02-14 20:49 (UTC) - Expand

(no subject)

[identity profile] max-posedon.livejournal.com - 2009-02-14 20:55 (UTC) - Expand

(no subject)

[identity profile] vp.livejournal.com - 2009-02-14 21:06 (UTC) - Expand

(no subject)

[identity profile] kiryl.livejournal.com - 2009-02-14 23:07 (UTC) - Expand

[identity profile] theiced.livejournal.com 2009-02-13 03:16 pm (UTC)(link)
Раз уж пошёл срач про езыги, чейтаем, если кто ещё не чейтал вот это:

http://steve.yegge.googlepages.com/tour-de-babel