Форум программистов, компьютерный форум, киберфорум
Наши страницы
C++ Qt
Войти
Регистрация
Восстановить пароль
 
 
Рейтинг 4.62/13: Рейтинг темы: голосов - 13, средняя оценка - 4.62
VisualNIK
8 / 8 / 4
Регистрация: 29.10.2012
Сообщений: 168
1

думаю о переходе на qt

02.10.2013, 19:39. Просмотров 2389. Ответов 36
Метки нет (Все метки)

Скажите пожалуйста кто опытен:
1. Заметил на форуме harbahabr что переходят с Bilder C++ на Qt. Какие важные отличия меж ними? Что так манит, ведь не один человек решил перейти.
2. Насколько отличается синтаксис, ведь я понимаю, что просто так не откомпилировать на Qt приложения сделанные на Builder??
3. В чем различия между Qt Creator и Qt4??
4. И как обстоят дела с объектным программированием??? Также можно как в билдере кидать на форму и потом работать с объектами???

Спасибо большое, исчерпывающие ответы приветствуются))))
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.10.2013, 19:39
Ответы с готовыми решениями:

Вылетает примерно через 30 минут (при переходе в нет, в стим, или вообще простотак но при переходе)
Здравствуйте у меня windows вылетает на синий экран, внизу появляется отсчет до 100 потом он сам...

Правильно ли я думаю?
Лицензионный антивирус защищает компьютер лучше,жду ваших мнений!:friends:

Я думаю вы не пойёмёте
не тя всё понимаю - но форму регистрации я не нашёл.

robots - правильно думаю?
Здравствуйте, есть страницы: ...

Думаю что с видеокартой
Я уже не знаю что делать! В играх при нагрузке выключается экран и на видеокарте останавливаются...

36
Кудаив
412 / 411 / 72
Регистрация: 27.05.2012
Сообщений: 1,168
Завершенные тесты: 2
02.10.2013, 20:43 2
С билдером не работал, но что знаю о том скажу
3) Qt Creator это среда со встроенным фреймворком Qt, довольно таки стремненькая, на мой и не только взгляд, дебажить в нем - смерти подобно
4) конечно можно и даже нужно - QtDesigner в помощь
1
Avazart
Эксперт С++
7803 / 5702 / 561
Регистрация: 10.12.2010
Сообщений: 25,986
Записей в блоге: 17
02.10.2013, 22:24 3
Все зависит от твоих потребностей.

К примеру стоит переходить на Qt например из-за:

1. Кроссплатформенности.
(можно писать и под Linux, в то время как под С++Builder можно только под Mac и только если использовать FMX)
2. Открытый исходный код на С++ ( в том числе самой IDE QtCreator) и лицензий GPL, LGPL
(в том время как в С++Builder код в основном "тянется" из Delphi)
3. Под Windows можно использовать два компилятора VC++ и MinGW и две IDE, которые лучше поддерживаю новый стандарт С++, нормально работают с boost
4. Удобнее распространять свои программы работающие с БД, так как они не требуют установки провайдеров итп (Тут я могу ошибаться)

Что касаться быстроты разработки(и визуального программирования) под Windows то мне все таки Qt (QtCreator) тут уступает C++Builder-у.

Добавлено через 26 минут
Цитата Сообщение от nvdrossii Посмотреть сообщение
4. И как обстоят дела с объектным программированием??? Также можно как в билдере кидать на форму и потом работать с объектами???
Полагаю имеется ввиду именно визуальное программирование, а не ООП.
И то и то есть, но в некоторых случаях для Qt придется писать больше кода руками чем для С++Builder.
2
theadamo86
7 / 7 / 0
Регистрация: 14.09.2013
Сообщений: 168
02.10.2013, 23:20 4
Цитата Сообщение от nvdrossii Посмотреть сообщение
3. В чем различия между Qt Creator и Qt4??
Qt - это IDE для разработки приложений с Qt.

Добавлено через 3 минуты
Цитата Сообщение от nvdrossii Посмотреть сообщение
Что так манит, ведь не один человек решил перейти.
Еще как переходят! Вот уже на подходе полная поддержка iOS. На сколько мне известно еще никто этого не делал до Qt.
1
Avazart
Эксперт С++
7803 / 5702 / 561
Регистрация: 10.12.2010
Сообщений: 25,986
Записей в блоге: 17
02.10.2013, 23:54 5
Лучший ответ Сообщение было отмечено как решение

Решение

Цитата Сообщение от theadamo86 Посмотреть сообщение
Qt - это IDE для разработки приложений с Qt.
Qt - библиотека
QtCreator - среда разработки для Qt ( но можно использовать и VC++ для Qt)

Цитата Сообщение от theadamo86 Посмотреть сообщение
Еще как переходят! Вот уже на подходе полная поддержка iOS. На сколько мне известно еще никто этого не делал до Qt.
Это вы о чем о RAD Studio или Qt ?

Embercadero вроде обещает сделать поддержку iOS и Android и для С++
3
Dmitriy_M
1434 / 1314 / 131
Регистрация: 20.03.2009
Сообщений: 4,688
Записей в блоге: 11
03.10.2013, 00:22 6
Цитата Сообщение от Avazart Посмотреть сообщение
1. Кроссплатформенности.
(можно писать и под Linux, в то время как под С++Builder можно только под Mac и только если использовать FMX)
Общая кодовая база для Android, iOS, Mac, Windows.
В России редко требуется поддержка сразу двух платформ Windows и Linux, а то что проект может быть собран под Linux, еще не значит что программа будет корректно работать.
Цитата Сообщение от Avazart Посмотреть сообщение
3. Под Windows можно использовать два компилятора VC++ и MinGW и две IDE, которые лучше поддерживаю новый стандарт С++, нормально работают с boost
Пробовал поддерживать код под два компилятора? Boost есть в RAD Studio XE5
Цитата Сообщение от Avazart Посмотреть сообщение
Embercadero вроде обещает сделать поддержку iOS и Android и для С++
Какие могут быть проблемы с C++, когда у iOS/Android есть нативная поддержка C++?
0
Avazart
Эксперт С++
7803 / 5702 / 561
Регистрация: 10.12.2010
Сообщений: 25,986
Записей в блоге: 17
03.10.2013, 00:57 7
Цитата Сообщение от Dmitriy_M Посмотреть сообщение
Пробовал поддерживать код под два компилятора? Boost есть в RAD Studio XE5
Я не говорю что писать нужно сразу под два компилятора, но это лучше отсутствия выбора (когда есть только один "отсталый" компилятор для x32 и еще не обкатанный новый для x64.)

Не знаю как в XE5, но в XE3 и более младших он тоже был, но только частично и не полностью рабочий.
К примеру boost/regex можно было пользоваться, а boost/graph - отсутствовал.

Цитата Сообщение от Dmitriy_M Посмотреть сообщение
В России редко требуется поддержка сразу двух платформ Windows и Linux, а то что проект может быть собран под Linux, еще не значит что программа будет корректно работать.
Вопрос в количестве решаемых проблем при переносе.
Проект на С++Builder вы долго будете переносить в Linux, тут придется смотреть сторону Lazarius-a который позволит использовать компоненты, то ли в сторону переносимого кода на c++ что бы потом только окна допилить в Linux.

Цитата Сообщение от Dmitriy_M Посмотреть сообщение
Какие могут быть проблемы с C++, когда у iOS/Android есть нативная поддержка C++?
Пока для С++ нет поддержки в IDE насколько я знаю, так же как и нет нормальной поддержки стандарта для платформы x32

Так что пака это только в обещаниях...
0
voral
925 / 621 / 136
Регистрация: 16.03.2008
Сообщений: 2,944
03.10.2013, 08:57 8
Цитата Сообщение от Dmitriy_M Посмотреть сообщение
В России редко требуется поддержка сразу двух платформ Windows и Linux, а то что проект может быть собран под Linux, еще не значит что программа будет корректно работать.
Вообще то Qt фреймворк выходец из Linux. Так что, скорее всего оно там будет работать.

Еще ни разу не сталкивался с проблемами компиляции для одной из платформ (Win, Lin, Mac). Единственный код который самому приходилось разделять для платформ, связан непосредственно с тонкостями самого проекта. Для мобильных платформ пока не собирал "промышленно" . Единственное собирал редактор DBF для симбиана. Конечно же там пришлось дописать код в основном связанный с тем, что приложение изначально не было рассчитано на такой экран. Но тем не меннее до сих пор у меня на телефоне это приложение живет.

Были проблемы с QToolButton на маке. Но они пофикшены были еще в 4.8
1
theadamo86
7 / 7 / 0
Регистрация: 14.09.2013
Сообщений: 168
03.10.2013, 10:55 9
Цитата Сообщение от theadamo86 Посмотреть сообщение
Qt - это IDE для разработки приложений с Qt.
Извиняюсь. Хотел написать: Qt Creator - это IDE для разработки приложений с использованием Qt.

Добавлено через 2 минуты
Цитата Сообщение от Avazart Посмотреть сообщение
Это вы о чем о RAD Studio или Qt ?
Я имел ввиду Qt. А про RAD Studio не слышал... надо попробовать.
0
Dmitriy_M
1434 / 1314 / 131
Регистрация: 20.03.2009
Сообщений: 4,688
Записей в блоге: 11
03.10.2013, 11:03 10
Цитата Сообщение от Avazart Посмотреть сообщение
Проект на С++Builder вы долго будете переносить в Linux, тут придется смотреть сторону Lazarius-a который позволит использовать компоненты, то ли в сторону переносимого кода на c++ что бы потом только окна допилить в Linux.
Кому нужен этот Linux? На десктопе пользователей Linux в разы меньше чем под OS X.
Цитата Сообщение от Avazart Посмотреть сообщение
Пока для С++ нет поддержки в IDE насколько я знаю, так же как и нет нормальной поддержки стандарта для платформы x32
XCode, Android SDK/NDK поддерживают C++.
Цитата Сообщение от voral Посмотреть сообщение
Вообще то Qt фреймворк выходец из Linux. Так что, скорее всего оно там будет работать.
Если приложение не протестировано под Linux, то оно не работает под Linux, т. к. есть разница в файловой системе, расположение файлов и еще куча маленьких нюансов, которые нужно учитывать при поддержке нескольких ОС.
1
voral
925 / 621 / 136
Регистрация: 16.03.2008
Сообщений: 2,944
03.10.2013, 11:22 11
Цитата Сообщение от Dmitriy_M Посмотреть сообщение
Если приложение не протестировано под Linux, то оно не работает под Linux, т. к. есть разница в файловой системе, расположение файлов и еще куча маленьких нюансов, которые нужно учитывать при поддержке нескольких ОС.
Да ладно....
Это актуально только при специфических проектах. В общем случае пофиг. Если, например, проблемы из-за разницы в файловой системе, то это только ваша недоработка. Конечно разработчик должен знать эту разницу и ее учитывать. И тестировать тут не обязательно. Главное знать разницу.... Но ее не так уж и много (повторюсь: в общем случае).

Все просто вы либо эти нюансы уже знаете, либо еще нет. Если уже знаете - сразу их учитываете. И все. Взять к примеру тот же проект DBF редактора. Вообще чисто десктопное приложение изначально, более того первый автор гвоздями прибил к не к самому маленькому монитору. Под симбиан оно скомпилировалось сразу. И запустилось.... (Работать не удобно, конечно было). Да это нюанс симбиана и телефона в частности. Но зачем тестировать на телефоне? Достаточно осознавать что приложение будет запускаться на устройстве с маленьким экраном и предусмотреть. Тут нет ни каких сложностей.

Добавлено через 10 минут
А так же странно звучит выделение вами Linux в сторону. С учетом того, что вы говорили про единую кодовую базу для MacOS, Android, iOS в случае билдера. Там, что ли озвученных проблем быть не может. И он позволяет не знать особенностей файловых систем в той или иной ОС?
0
_SASA_
134 / 138 / 7
Регистрация: 22.08.2011
Сообщений: 484
03.10.2013, 15:59 12
Здравствуйте, nvdrossii! Я тоже перехожу на QT и частично с С Builderа в том числе. Тогда нам дали "зелёный свет" на переход, ибо на тот момент (порядка 2-х лет назад) перспективы RAD Studio были вовсе не радужными, особенно на фоне MVS, был выбор между MVS(C#) и QT(С++). Конечно, ещё и очень нам понравилась "преемственность" в Buildere 6 и Buildere 10. Уже нужна была и кроссплатформенность для технологии и отдельных пользователей. В итоге, сразу, конечно, ломанулись на C#, затем посмотрели на mono, который «моно доделывать и доделывать», и вот, в конце концов, мы дружно впряглись в QT. Плюсов и минусов много, но я теперь советую переходить именно на QT. Тут уже всё вроде и обсудили. «Мои плюсы»: скорость, кроссплатформенность, «сигналы\слоты», QML и CSS (см. стандарты)! «Мои минусы»: автоподстановщик кода, серая графическая среда разработки QTCreator(я иногда вообще использую QT Designer), всё время отстающий хелп с примерами, «извраты ООП» и постоянный поиск и переопределение событий = куча доп. писанины, «гемор сделать всё одним файлом», отсутствие нормальных клиентов драйверов для БД Oracle10,11g(ИМХО)! Старый добрый С Builder 6 многе прощал, QT- не прощает, а делает из тебя “грамотного… ”. Корочеее, самый лучший способ сделать всё правильно == это сделать всё ещё раз заново (как в армии)!
2
Avazart
Эксперт С++
7803 / 5702 / 561
Регистрация: 10.12.2010
Сообщений: 25,986
Записей в блоге: 17
03.10.2013, 16:24 13
Цитата Сообщение от _SASA_ Посмотреть сообщение
«извраты ООП»
Чет не пойму о чем Вы ? Можно уточнить ?
По моему в Builder больше извратов (хотя возможно они оправданы) например нарушение инкапсуляции при визуальном программировании.

Добавлено через 37 секунд
Цитата Сообщение от _SASA_ Посмотреть сообщение
серая графическая среда разработки QTCreator
Чем же она серая ?
1
_SASA_
134 / 138 / 7
Регистрация: 22.08.2011
Сообщений: 484
03.10.2013, 18:20 14
Avazart,
я ж написал в кавычках ""= это есть база ООП
(инкапсуляция, наследование и полиморфизм).
Лично мне было тяжко это в своё время (до QT
и СBuildera) это освоить (не освоить, а понять),
да и сейчас я не все патерны понимаю и юзаю!
Кому всё понятно, то зачисляйте тогда в плюс!

Avazart,
она даже не серая, она очень убогая, но я и не
жалуюсь, ибо есть и похуже, но в сравнении с
CB6,10! Очень не хватает панелей со слотами
и сигналами для виджетов (было б круто,если
и в код не гнушались залезть и там поискать,
например, найден SignalMapper для виджета),
панели доступных событий для виджетов, а то
нужно лезть за ними в хейдеры и там искать, я
их названия и не запоминаю (и всё по-новой)!
Оформление виджетов вообще венец фигизма!
Неужели для базовых виджетов нельзя было в
styleSheet сделать подменюшки = списки тех
параметров, им допустимых, для изменений???
Так нет = нужно постоянно искать стили,тэги!
Базовый набор виджетов вообще мал - на тебе
напильник и гранит = и доделывай статую сам!
По-началу очень скучалось за DataMode и БД
компонентами, потом и RunBackGroundWorkeroм!
Тут это пришлось выпиливать самостоятельно!
А про автоподстановку кода я вообще не хочу
писать (тут планка MVS(C#) не достижима)!!!
0
trdm
179 / 34 / 5
Регистрация: 29.01.2013
Сообщений: 231
04.10.2013, 08:12 15
Цитата Сообщение от Dmitriy_M Посмотреть сообщение
Кому нужен этот Linux? На десктопе пользователей Linux в разы меньше чем под OS X.
Android - тоже линукс. Не забывайте об этом. Он сейчас шагает шибко шустро.
0
rrrFer
Заблокирован
04.10.2013, 18:01 16
Цитата Сообщение от Dmitriy_M Посмотреть сообщение
Если приложение не протестировано под Linux, то оно не работает под Linux, т. к. есть разница в файловой системе, расположение файлов и еще куча маленьких нюансов, которые нужно учитывать при поддержке нескольких ОС.
Если хардкодить пути, то приложение может не только на линуксе не взлететь, а на любом компутере, отличном от вашего. Если вместо использования Qt напрямую лезть к системным вызовам - то приложение, конечно, будет непереносимо. Первое связано не с Qt, а с кривыми руками. Второе со специфическими задачами (если вам нужны какие-то фичи ОС в проекте - Qt вам не поможет, оно по идеологии кроссплатформенное).

Цитата Сообщение от _SASA_ Посмотреть сообщение
Очень не хватает панелей со слотами
и сигналами для виджетов (было б круто,если
и в код не гнушались залезть и там поискать,
например, найден SignalMapper для виджета),
панели доступных событий для виджетов, а то
нужно лезть за ними в хейдеры и там искать, я
их названия и не запоминаю (и всё по-новой)!
Че-то я вас не пойму вообще. Довайте на примерах (а-то я подозреваю, что кривоту рук вы списываете на "серость" IDE).
Когда вы тыкаете кнопки в IDE программа еще ниразу не выполняется и IDE не может знать какие сигналы у вас с какими слотами связаны.
"найден SignalMapper для виджет" - это как?
я напишу так:
C++ (Qt)
1
if (foo()) { new QSignalMapper(this); }
должна IDE по вашему найти этот сигналмаппер?
Вы чето очень много от IDE хотите, если она за вас все знает и за вас весь код пишет - вы то зачем возле такой умной штуку крутиться будете? )

Цитата Сообщение от _SASA_ Посмотреть сообщение
Базовый набор виджетов вообще мал - на тебе
напильник и гранит = и доделывай статую сам!
каких именно виджетов не хватает? (лучше пачкой, "очень мал" как бэ намекает что не хватает много чего).
По-началу очень скучалось за DataMode и БД
компонентами, потом и RunBackGroundWorkeroм
Т.е. в Qt БД не поддерживается и потоки не создаются?
1
trdm
179 / 34 / 5
Регистрация: 29.01.2013
Сообщений: 231
04.10.2013, 18:33 17
Цитата Сообщение от _SASA_ Посмотреть сообщение
Базовый набор виджетов вообще мал - на тебе
напильник и гранит = и доделывай статую сам!
С чего бы мало?????
http://un-addon.googlecode.com/files/creator.PNG
0
Миниатюры
думаю о переходе на qt  
Genco
15 / 15 / 3
Регистрация: 05.08.2012
Сообщений: 84
05.10.2013, 04:13 18
Внесу свои 5 копеек.

nvdrossii, объектное программирование это прежде всего продвинутое ООП, а "кидать на форму, чтобы работало" -- это формошлепство.

В Qt есть этот самый Creator, в который встроен Designer, в котором можно формошлепить, но компонентов, действительно меньше. не потому, что там что-то скудно сделано, а прежде всего потому, что в Qt полно "запчастей" на все случаи жизни, которые компоненты могут прокачать. В крайнем случае, можно походить по сети и накачать готовых виджетов, которые интегрируются со средой.

Вопрос о переходе не вполне корректен прежде всего потому, что Borland C++ Builder это не что-то, сопоставимое с Qt, это давным-давно устаревшее решение, которое всегда было не самым удачным. Забудьте и бегите.
В теме упомянута была RAD Studio - она хотя бы современна, дебилдер же
1) приучает к плохому стилю начинающих программистов
2) имеет немного специфичные конкретно для себя вещи
3) естественно, не переносим код никуда по умолчанию
4) генерируемый компилятором бинарник заставляет плакать кровавыми слезами специалистов

В общем, на Хабре с него переходят люди, у которых много-много legacy кода. В те времена, когда он писался, я полагаю, альтернативой было попытаться использовать MFC и умереть в ручной работе над каждой нестандартной кнопочкой, Qt же был ещё не так крут.

Глобально же Qt содержит тонну готовых классов для многопоточности, графики, сетвого взаимодействия, просто они не настраиваются мышкой. Никаких "разных C++" нету, этот самый "диалект" -- это просто наличие специальных макросов в одном решении и присутствие особенностей в другом. Правда, стандарт придется знать гораздо лучше, т.е. если хочется именно "покидать компоненты", то надо RAD ставить по возможности.

З.Ы.
Цитата Сообщение от _SASA_ Посмотреть сообщение
По-началу очень скучалось за DataMode и БД
компонентами, потом и RunBackGroundWorkeroм!
Тут это пришлось выпиливать самостоятельно!
Сурово то как, блин)) Мб стоило поставить Qt Assistant?)
1
zenw
154 / 110 / 9
Регистрация: 12.06.2013
Сообщений: 168
05.10.2013, 10:54 19
Цитата Сообщение от _SASA_ Посмотреть сообщение
всё время отстающий хелп с примерами
Ух ты ж блин. Я вот даже сходу не назову продукт, где есть хелп лучше, чем в Qt.
0
voral
925 / 621 / 136
Регистрация: 16.03.2008
Сообщений: 2,944
05.10.2013, 13:53 20
Цитата Сообщение от zenw Посмотреть сообщение
Ух ты ж блин. Я вот даже сходу не назову продукт, где есть хелп лучше, чем в Qt.
+100500.
0
05.10.2013, 13:53
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.10.2013, 13:53

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

*.org думаю попробовать
Никогда не делал сайты в зоне org. Сайт будет русскоязычный. Что можете сказать про эту доменную...

Я правильно думаю о ObservableCollection ?
Добрый день. Хочу убедится, что думаю правильно. Вот есть у меня форма с DataGrid, в котором я...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru