Отличное начинание, главное не останавливаться! Вы сказали насчёт предложений, сейчас вот слушаю (может быть еще услышу эту тему), но думаю будет интересно подробно обсудить тему qt governance
И что бы будете делать с указателями на константную память? const_cast может вызвать даже хардварное прерывание, если пул строк в рид-онли страницах памяти.
tass, ты в конце говорил про эксепшены. Сказал, что тебе нравятся как они сделаны в Java, аргументируя это тем, что возле каждого метода стоит название exception'а, который этот метод кидает.
Но в C++ ведь тоже можно указывать эксепшены, которые кидает метод, с помощью throw() спецификатора (хотя в C++11 jy убран). Да, конечно, ты можешь возразить, что несмотря на этот список, реально метод может кинуть и другие эксепшены, и что это и есть подводный камень. Но ведь в Java тоже так: эксепшены наследуемые от RuntimeException могут не указываться возле метода. И многие библиотеки кидают именно их.
p.s: к слову, лично мне очень не нравится то, как сделаны эксепшены в Java. Вернее, не нравится сам подход к их применению. Стандартная библиотека кишит ими, и все мыслимые и немыслимые методы их бросают, из-за чего код доходит до абсурда: try-блоки вокруг закрытия потока внутри finally другого try-блока. %)
Ты смешиваешь реализацию и подход :) Реализация в Java лучше, а сам подход использования эксепшенов мне не нравится. Меня тоже сильно напрягало их повсеместное использование в Java.
Ну, я не смотрел реализацию джава машины, впрочем, как и реализацию C++ компиляторов. Поэтому судить мне сложно. Просто хотел заметить, что указание исключений, которые бросаются методом — это не панацея. Что в Java, что в C++ — с этим есть проблема. Другое дело, что Java выводит stack traceback, что несколько облегчает локализацию проблемы. (но в случае Java не так сильно, как хотелось бы). :)
Это не панацея конечно, но тем не менее это здорово помогает. Особенно если экспшенов много кастомных и они широко используются в коде. В этом случае просто не получится забыть отловить или пробросить эксепшен далее. Эклипс заругается
мсвс это которая мобильная система вооруженных сил на эльбрусах? Знаю такое чудо, одно время под них писал. Считаю что их надо выкинуть, сжечь и пепел развеять по ветру. Чтобы неповадно было.
Я говорю конкретно про 5.0 Alpha, а не про master, я на нем собрал таким образом, вполне успешно.
Правда они опять что-то начудили со стиля верстки. Вообще выглядит все не так приятно как в 4.х
Странно, проверил сейчас — у меня qt.qch 51 мегабайт. Возможно стоит попробовать перед этим сделать независимый qmake, я уже не помню делал я его или нет. Потому что есть подозрение что configure мог напортачить с Makefile.
может и можно. Я просто глянул что их нет и расстроился. Но есть небольшое подозрение что это будет не просто. Виндоу — он platform agnostic, что влечет за собой некоторые ограничения
На кедах и запускал. Был plastique style… у тебя по ходу он попытался плагин для oxygen стиля подцепить.
Запусти с ключем -style. Да и можно QtCurve собрать, он работает! Оо
хм, надо будет еще раз глянуть. Правда у меня там на Qt5 у целевого проекта еще другие были проблемы, помимо компонентов, поэтому запустил, глянул что не ок и вырубил.
Но вообще я сейчас усиленно жду пока Дженс наконец вернется к проекту
лучше все же дождаться. На такой стадии проекта — много разных форков может быть смертельно. Пусть уж будет все в одной ветке, глядишь что и вылезет. А ты не пробовал кстати писать Дженсу?
а я вот сейчас пишу, но мне пока хватает четверки и того что есть в компонентах. Хотя все же думаю про переход на пятерку. Может еще раз на выходе беты попробую
Список пожеланий:
1. Структура QDeclarativePropertyMap с его QMetaObjectBuilder
2. Косяки type() и typeName() у QVariant
3. Наиболее удачные архитектурные паттерны при разработке десктопных приложений с QML
4. Архитектура SceneGraph
5. Новый синтаксис connect и лямбды
6. Что таки с QFtp — он deprecated или нет, если да то что вместо него (QNAM не предлагать, все примеры все равно с использованием QFtp)
Я правильно понимаю, что стабильной поддержки мобильных платформ в Qt5 не будет — Symbian и Harmattan убрали, а iOS, Android, webOS и т.д. не доделали?
Ну на харматтан есть все надежды, но в целом — да. Но тут есть другой момент, архитектура QPA предпологает сильно упрощенное портирование (по сравнению с не-QPA подходом)
Ну то что не доделали, это и сам Qt5 еще не доделали, а потом я бы не стал говорить за весь Qt5,
конкретно в 5.0 ожидать полной поддержки, конечно, не стоит. А дальше время покажет.
Вообще цикл релизов у Trolltech сильно затормозился после их покупки. Не в последнюю очередь из-за усилий, затраченных на адаптацию под Symbian/Harmattan, создание SDK и так далее. Для сравнения, версию 4.7 готовили около 9 месяцев, а версию 4.8 (в которой, по большому счёту, нет принципиальных новшеств) — почти 15.
нет принципиальных новшеств? серьезно? А QPA уже не считается? Или работа по мультипоточности ОпенГЛя? Плюс надо учитывать, что очень много работы велось по исправлению багов в декларативе (и выходе версии 1.1 его).
QPA (ну, точнее Qt Lighthouse), насколько я помню, начали делать гораздо раньше. Его, конечно, внедрили, но слегка сбоку. Полноценным запуском QPA, думаю, можно считать выход Qt 5.0 :)
Многопоточность OpenGL — может быть, хотя я не уверен, что это самый широко используемый и популярный модуль в Qt.
С HTTP там другая проблема. Они, конечно, сделали его многопоточность (причём, насколько я понимаю, это была работа одного или двух разработчиков длиной в месяц). Но при этом значительно сломали внутреннюю логику работы, причём так, что фиг поправишь. Если чуть подробнее, QNAM начал некорректно работать с отвалившимися по таймауту соединениями с Keep-Alive, причём так хитро, что хрен воспроизведёшь и хрен покроешь тестами. Но в нашем проекте в одном из мест на Qt 4.8 стабильно ошибка 99 :(
ну дак и декларатив тоже начали делать раньше и в 4.7.0 он был не особо живой (да и в 4.7.4 откуда стартует 1.1 тоже не допилен), так что его тоже можно к 5.0 отнести, так что можно сказать что 4.7 от 4.8 по новшествам не сильно отличается :)
Ну и к тому же Qt Quick 1.1 таки тоже официально фича Qt 4.8, хотя его в 4.7.4 и бэкпортировали.
А обновление вебкита? И таки да, 4.8 уже меньшими силами же делалась, основной упор уже тогда на 5ую ветку был направлен. Поэтому я думаю, что цикл сократится. Точнее разные модули будут с разной скоростью релизится.
Подкаст «Заметки о Qt» — первый, пилотный, выпуск