Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Для новичков > GUI в С++


Автор: Пончик 7.7.2009, 14:22
Приветик ещё раз! =) пожалуйста не закидывайте помидорами ))))))))) т.к. не спрашивает только тот кто не учится  smile 

Вообщем вопросик! Если писать на чистом МFC то чтобы сделать визуальную программку, аля как все нормальные программки (допустим как тот же калькулятор стандартный), то надо писать на чистом ВИН АПИ? 

Что за стиль такой - dialog based? 

Если писать визуальные программки на ВИН АПИ и на dialog based  то где быстрее работать будет? Где будет "кушать" намного меньше ресурсов и работать под ОС ХР СП 1-3 , Виста (все СП), Вин 7. То есть на современных ОС. 

Сразу прошу не говорить что вопрос тупой =). Сам знаю =). Просто мне до визуальных программок осталось 700 страниц.... а не терпится узнать что да как =) 

Модератор: BC++ - это Borland C++, обычно, имеется в виду версия 3.1. Visual C++ - это MSVC

Автор: mekhanikus 7.7.2009, 14:44
Цитата(Пончик @  7.7.2009,  14:22 Найти цитируемый пост)
Если писать на чистом МFC то чтобы сделать визуальную программку, аля как все нормальные программки (допустим как тот же калькулятор стандартный), то надо писать на чистом ВИН АПИ? 


На чем же Вы хотите писать? На чистом WinAPI или используя библиотеки MFC?

Цитата(Пончик @  7.7.2009,  14:22 Найти цитируемый пост)
Что за стиль такой - dialog based?


Это значит, что внешний вид программы (морда) описана в файле ресурсов.
Достаточно запустить макрос DialogBox с нужными параметрами, и винда сама нарисует окно программы со всеми Вашими контролами.
Задача програмиста отловить сообщения от контролов в DialogProc и корректно их отработать.

Автор: Пончик 7.7.2009, 16:15
Цитата(mekhanikus @  7.7.2009,  14:44 Найти цитируемый пост)
На чем же Вы хотите писать? На чистом WinAPI или используя библиотеки MFC?

Предполагаю что на MFC. Т.к. Апи вроде каждый раз чуток видоизменяется (что то добавляется, что то удаляется, что то изменяется...) то какбы ... MFC более подходит. А где лучше скорость ? Скорость работы приложения?


Цитата(mekhanikus @  7.7.2009,  14:44 Найти цитируемый пост)
Это значит, что внешний вид программы (морда) описана в файле ресурсов.Достаточно запустить макрос DialogBox с нужными параметрами, и винда сама нарисует окно программы со всеми Вашими контролами.Задача програмиста отловить сообщения от контролов в DialogProc и корректно их отработать.

А оно имеет что то общее с .NET ? Или это грубо говоря разновидность МFC? Какие программы быстрее работают? Те что созданы с помощью dialog based или MDI & SDI ? 

Так же очень критичен размер "употребляемой" памяти (оперативки)

Спасибо!!!

Автор: mekhanikus 8.7.2009, 15:53
Программы, созданые с использованием готовых библиотек компонентов(MFS, VCL) имеют больший размер по сравнению с приложениями, создаными на чистом WinAPI.
Это связано с тем, что создатели библиотек стремятся наиболее полно реализовать все особенности компонентов, и все эти навороты перекочевывают в код, даже если никогда не будут использованы.
У меня нет опыта использования MFS, но, например, простейшая програмка, сделанная в BCB6, имеет размер ~450kb.
Тоже самое, сделаное с использованием WinAPI, легче почти в 10 раз!

Автор: zim22 8.7.2009, 16:08
Цитата(mekhanikus @  8.7.2009,  15:53 Найти цитируемый пост)
Тоже самое, сделаное с использованием WinAPI, легче почти в 10 раз!

и в 10 раз дольше писать.  smile 

Автор: Пончик 9.7.2009, 08:45
Ребят! Полностю согласен =) видел программки на Вин Апи ... так там даже до 1кб может "весить".... но сразу напрашивается что... а вот что =) читаю просто книжки. И всегда читаю мол с каждым новым ядром ОС изменяется и Вин Апи. Значит программа написана на Вин Апи для ХР  100% будет работать на ХР, но не факт что на Висте? Я прав? 

То есть грубо говоря кроссплатформенность между ОС Винды имеет МFC & VCL. Какбы... ну больше шансов что всё работать будет правильно =) а это главное! =)

Мммм... а какие программки шустрее работают? Понимаю что это уже что то типа холивара... но какбы интересно. Я понимаю что они все хорошо работают =) но мне очень важно даже если чуть-чуть быстрее.

Кто из них быстрее?

МFC?  MFC - dialog box? MFC - SDI (MDI)? Просто на сколько я вижу в Диалоге и в МДИ или СДИ разные подходы. А значит и по другому писать, а значит и разная скорость выполнения =)

Добавлено через 5 минут и 29 секунд
А ну и ещё =) щас кто то пишет на МFC визуальные приложения?

Автор: Andrey44 9.7.2009, 08:56
Цитата(Пончик @  9.7.2009,  08:45 Найти цитируемый пост)
Значит программа написана на Вин Апи для ХР  100% будет работать на ХР, но не факт что на Висте? Я прав? 
Смотря с чем эта программа работает

Цитата(Пончик @  9.7.2009,  08:45 Найти цитируемый пост)
но мне очень важно даже если чуть-чуть быстрее
Написанные без МФЦ быстрее

Цитата(Пончик @  9.7.2009,  08:45 Найти цитируемый пост)
А ну и ещё =) щас кто то пишет на МFC визуальные приложения? 
Я smile Редко но пишу.
Кстати и на работе огромный проект с МФЦ

Автор: Пончик 9.7.2009, 17:12
Цитата(Andrey44 @  9.7.2009,  08:56 Найти цитируемый пост)
Я  Редко но пишу.Кстати и на работе огромный проект с МФЦ

Это только вы так? Или подавляющее большинство? 

Извините что так ... допрашиваюсь =)

Просто хочется учить то что больше всего развивается =)

Автор: zim22 9.7.2009, 18:18
Цитата(Пончик @  9.7.2009,  17:12 Найти цитируемый пост)
Просто хочется учить то что больше всего развивается =)

учите язык D. развивается быстро.
***
на Амазон можно предзаказ сделать на книгу http://www.amazon.com/D-Programming-Language-Andrei-Alexandrescu/dp/0321635361/ref=pd_cp_b_1 (by Andrei Alexandresku)
я так понял, это как "Язык программирования С++" Страуструпа, только круче smile

Автор: bsa 10.7.2009, 18:03
Пончик, MFC забудь. Это пример крайне неудачной библиотеки.
Если тебе хочется быстро писать современные программы не заморачиваясь на кучу мелких деталей, то используй что-нибудь более современное. Например, Qt. Код конечно, будет не самым маленьким, но тебе же не надо пихать программу на дискету.
Пример: чтобы создать окно на WinApi необходимо написать где-то http://msdn.microsoft.com/en-us/library/ms633575(VS.85).aspx (WinApi вообще мало осмысленная библиотека, имхо), а на Qt:
Код
#include <QtGui>
#include <QtGui/QApplication>
int main(int argc, char *argv[])
{
   QApplication app(argc, argv);
   QMainWindow wnd;
   wnd.show();
   return app.exec();
}
Смысл использования подобных библиотек в том, что ты программу пишешь раз в 10-100 быстрее, чем на том же WinApi. Твой код прост и читабелен (через год попытавшись исправить ошибку, ты скажешь себе большое спасибо, что не стал использовать WinApi). Большую часть кода занимает работа с окошками и реакция на действия пользователя. Тут сильно по скорости ничего оптимизировать не надо - вменяемый пользователь все равно не будет жать 20 кнопок в секунду. С другой стороны, у тебя останется прорва времени, чтобы оптимизировать те участки кода, которые этого требуют (например, где требуется работа с большим количеством данных или вычислений).

Кто-то из умных людей сказал, что программа пишется не для машины, а для человека. Машина все равно не понимает того языка, на котором ты пишешь, а ты не можешь писать на языке, который она понимает (я про машинный код - ассемблер тоже машина не понимает без компиляции). Поэтому надо писать так, чтобы понял человек, которому через пол года нужно будет найти в коде ошибку и ее исправить. А понять код, написанный с помощью высокоуровневого API, гораздо проще, чем ежели он написан на низкоуровневом.

Автор: GoldFinch 10.7.2009, 18:33
я бы юзал IWebBrowser2 c DHTML

Автор: andrew_121 10.7.2009, 19:00
Да, Qt.
И даже кроссплатформенно!

Цитата(bsa @  10.7.2009,  18:03 Найти цитируемый пост)
но тебе же не надо пихать программу на дискету.

Честно говоря, уже и забыл как дискеты выглядят.

Автор: Леопольд 10.7.2009, 19:12
Цитата(Пончик @ 7.7.2009,  14:22)
...
Вообщем вопросик! Если писать на чистом МFC
...

MFC в топку.

wxWidgets, QT4+

Насколько мне известно, это наиболее популярные GUI библиотеки.

Автор: andrew_121 10.7.2009, 19:16
Леопольд, Наверное наоборот smile 
Qt4, wxWidgets.

Автор: Леопольд 10.7.2009, 19:51
Цитата(andrew_121 @ 10.7.2009,  19:16)
Леопольд, Наверное наоборот smile 
Qt4, wxWidgets.

Вроде бы без разницы... Это я в интернете прочитал smile
У той и у другой есть преимущества и недостатки.  Сам я только wxWidgets чуть-чуть пользовался. QT код только мельком видел, но не увидел чем бы он выгодно отличался от wxWidgets.

Ах да, вроде бы wxWidgets на Python'e можно юзать (и не только)... И работает под Windows/Linux/Mac/WinCE. А если поднатужиться, то можно свой "порт" написать... smile К тому же wxWidgets open source библиотека, это по моему большое преимущество. Можно подебажить...
А вот про QT я ничего не знаю кроме хвалебных отзывов в общих чертах, да и не удивительно, не копал особо. Интересно было бы почитать чуть-чуть прям здесь.  smile 

Сам сейчас пользуюсь Code::Blocks (а не QTDesigner), вполне приличное IDE написанное на wxWidgets, на мой взгляд мало чем уступает VC 2008 Express, к тому же, кросплатформенно.

Автор: andrew_121 10.7.2009, 20:35
Цитата(Леопольд @  10.7.2009,  19:51 Найти цитируемый пост)
Вроде бы без разницы...

Глупость smile 


Цитата(Леопольд @  10.7.2009,  19:51 Найти цитируемый пост)
QT 

Это что? Наверное ты имел ввиду Qt ?


Цитата(Леопольд @  10.7.2009,  19:51 Найти цитируемый пост)
Ах да, вроде бы wxWidgets на Python'e можно юзать (и не только)... И работает под Windows/Linux/Mac/WinCE.

Опять глупость.


Цитата(Леопольд @  10.7.2009,  19:51 Найти цитируемый пост)
А если поднатужиться, то можно свой "порт" написать...

Угу. Жду демонстрации.


Цитата(Леопольд @  10.7.2009,  19:51 Найти цитируемый пост)
К тому же wxWidgets open source библиотека, это по моему большое преимущество.

Опять глупость.

Дальше все тоже smile 


Да и не та это тема, и даже раздел не тот.

Добавлено через 3 минуты и 38 секунд
Цитата(Леопольд @  10.7.2009,  19:51 Найти цитируемый пост)
Ах да, вроде бы wxWidgets на Python'e можно юзать

И Qt smile 

Автор: Леопольд 10.7.2009, 20:55
Цитата(andrew_121 @ 10.7.2009,  20:35)
...
Глупость smile 
...
Опять глупость.
...
Опять глупость.

Много на wxWidgets написал, а на Qt? Аргументируй. Хотелось бы "услышать" хоть что-нибудь...

Этой глупости я "наслушался"/начитался от других, видимо глупых, программистов. Ну что ж, не всем же быть умными, как тебе. smile
Кстати, не нашёл что-бы кто-то однозначно и аргументированно заявил что Qt лучше чем wxWidgets, когда выбирал о чём почитать подробнее. Может быть, конечно, недели было мало на (нерегуляный) поиск. Выбор пал на wxWidgets из-за открытости кода, в основном. Если бы нашёл хоть какие-то весомые аргументы в пользу Qt то выбрал бы её...

Ты, случаем, никогда не задумывался, почему считается что Linux более надёжен чем Windows? Тебе не кажется что здесь есть "мифическая" связь с его открытым исходным кодом?

Автор: andrew_121 10.7.2009, 21:23
Не будем превращать тему в свалку.

Автор: mes 10.7.2009, 21:51
Цитата(Леопольд @  10.7.2009,  19:55 Найти цитируемый пост)
Кстати, не нашёл что-бы кто-то однозначно и аргументированно заявил что Qt лучше чем wxWidgets, когда выбирал о чём почитать подробнее.

на текущий момент Qt лучше, потому что использованы более современные технологии и она обширнее. Сам пишу на wxWidgets и очень часто сталкиваюсь с тем, что не хватает чего то
(а если и есть то реализовано не очень удачно/удобно) из списка стандартных вещей Qt. Но подождем wxWidget 3.0, в котором обещано много вкусностей, потом сравним smile


P.S. для простых приложений (грубо говоря "из одного окошка") разница в использовании библиотек имхо не заметна.

Автор: taiven 10.7.2009, 21:59
Цитата(andrew_121 @  10.7.2009,  19:35 Найти цитируемый пост)
Цитата(Леопольд @  10.7.2009,  19:51 Найти цитируемый пост)
Ах да, вроде бы wxWidgets на Python'e можно юзать (и не только)... И работает под Windows/Linux/Mac/WinCE.
Опять глупость.

На самом деле никаких глупостей здесь нет.  Леопольд всё верно сказал.
А вот документация у wxWidgets действительно могла бы быть и получше....

Автор: Lazin 10.7.2009, 23:12
winforms/wpf

Добавлено через 1 минуту и 52 секунды
а вообще, GUI - скука смертная smile 

Автор: bsa 10.7.2009, 23:42
Леопольд, по поводу Qt и wxWidgets:
1. Попробуй обе и сделай выводы.
2. Очень много видел пакетов в линуксе с названием содержащим "PyQt"... к чему бы это?
3. А оно нужно? Ну если очень хочется... вон, Nokia, порт Qt под S60 написала.
4. Qt распространяется под 3 лицензиями: GPLv3, LGPLv2 и проприетарной. Выбирай. А исходники можно найти тут: http://qt.gitorious.org/

Очень рекомендую попробовать. Ну или хотя бы почитать самоучитель (tutorial в документации).
Цитата(Lazin)
а вообще, GUI - скука смертная
Это да... С другой стороны, кому нужна программа без GUI? Только бородатым сисадминам. smile

Автор: Леопольд 10.7.2009, 23:56
Цитата(bsa @ 10.7.2009,  23:42)
Очень рекомендую попробовать.

Скорее всего так и сделаю, как только доразберусь с шаблонами, Александреску, boost'ом и его метапрограммированием шаблонов... т.е. не в этом году smile

Автор: andrew_121 11.7.2009, 00:28
bsa
+1.
Мне терпения не хватило писать об этом.

Автор: mes 11.7.2009, 00:30
Цитата(andrew_121 @  10.7.2009,  23:28 Найти цитируемый пост)
Мне терпения не хватило писать об этом.

зато увы хватило на многократное это :
Цитата(andrew_121 @  10.7.2009,  19:35 Найти цитируемый пост)
Опять глупость.

 smile 


Автор: andrew_121 11.7.2009, 04:35
Цитата(mes @  11.7.2009,  00:30 Найти цитируемый пост)
зато увы хватило на многократное это :

Грешен, знаю.
Думал что после этого он задумается...почему...?

Автор: jonie 11.7.2009, 07:13
Цитата(GoldFinch @ 10.7.2009,  18:33)
я бы юзал IWebBrowser2 c DHTML

+1 за подобное решение, с той оговоркой что можно использовать gecko в виде движка (тот же XUL например заюзать). Кросплатформенно и есть место где развернуться дизайнерам...

Автор: Леопольд 11.7.2009, 07:48
Цитата(andrew_121 @ 11.7.2009,  04:35)
Думал что после этого он задумается...почему...?

Почему что?

Тем постом ты никак не ответил на вопрос топикпастера и даже не намекнул почему я неправ. Не очень конструктивно и не над чем задумываться. Предлагаю на этом закончить обсуждение твоего характера. smile

Автор: Lazin 11.7.2009, 08:29
можно еще посмотреть на эту библиотеку: http://stlab.adobe.com/group__asl__overview.html

Цитата(Леопольд @  11.7.2009,  07:48 Найти цитируемый пост)
Почему что?

потому-что сказать нечего, а хочется smile 

Автор: Пончик 11.7.2009, 12:30
Цитата(Lazin @  10.7.2009,  23:12 Найти цитируемый пост)
winforms/wpf

CLI... грубо говоря .NET . А по моим релегиозным пробуждениям - пусть идёт в топку (моё личное ИМХО). 


Цитата(Lazin @  10.7.2009,  23:12 Найти цитируемый пост)
а вообще, GUI - скука смертная 

Цитата(bsa @  10.7.2009,  23:42 Найти цитируемый пост)
Это да... С другой стороны, кому нужна программа без GUI? Только бородатым сисадминам.

Тем же бородатым сис админам щас не до консолек =). Любой уважающий себя человек (человек который ценит своё время) не будет сидеть в программе не GUI. Йомайо! Щас же 21ый век! Уже "досовская строка" давно не используется. Конечно если писать под микроконтроллеры или ещё что то в этом роде... или грубо говоря для себя... то да. Но повторюсь... НИКТО (из простых юзеров) не будет использовать программки без GUI.

Qt4. Ммм много наслышан про него =). Кроссплатформенность и т.д. впечетляет! Но! А как же со скоростью? Я думаю если код кроссплатформенный то и скорость работы + потребляемые ресурсы... не думаю что приложение будет работать так же быстро и так же не будет кушать много оперативки. 

Просто для меня что главное. У меня в задачах есть 2 разных пути и направления. 

1) Задачи которые будут запущены только под Виндой. И нигде иначе. То есть их будут запускать только под Виндой. Для этого и они расчитаны. Если уже заранее ведомо что их будут запускать только под форточкой так зачем тогда подключать кроссплатформенность? Имхо незачем. И в них очень важна производительность. То есть очень важно чтобы программка просто таки "летала" под форточкой. Грубо говоря поетому я и начал спрашивать в этом топике =). Если логично подумать... если майкрософт сделала винду то по логике ихняя среда должна быть круче всех для программирования под винду =). 

2) Задачи которые будут запущены где душе угодно =). То есть в этих программах нету задуманой привязки и т.д. А значит можно думать о кроссплатформенности. И о Qt =) .


Просто поймите правильно =) Перехожу из Билдера по причине его глючности =). И какбы в надежде на лучшую производительность. Но куда переходить я не знаю. Счас хочу перейти на Вижуал С++. Вин Апи сам очень не люблю. И стараюсь его обходить =). Писать на чистом Вин Апи имхо даже не собираюсь =). Прекрасно знаю что МFC корявая... и не хочу работать под .NET =) . 

Очень полюбил Билдер через простоту создания GUI. И фактически всё что надо это писать код. И всё =). А GUI можно сделать за 2 минуты. Хочу что то похожое получить и от Вижуал С++. Знаю что там именно такого нет. Но хотябы похожое что то... ? В одном топике посоветовали dialog box ("на базе диалоговых окон") . Открыл. Посмотрел. Вроде что то аля Билдера. Перекинул контрол и всё =). Так вот вопросища... как с ним нормально работать? Приложения написаны на Диалог Боксе быстрее работают чем проложения на Билдере? (Если брать в щёт последнии версии обоих). Если да, то на сколько?

Спасибо за прочтение моего маразма =)

Автор: azesmcar 11.7.2009, 12:59
Цитата(bsa @  10.7.2009,  23:42 Найти цитируемый пост)
Это да... С другой стороны, кому нужна программа без GUI? Только бородатым сисадминам. smile 


Цитата(Пончик @  11.7.2009,  12:30 Найти цитируемый пост)

Тем же бородатым сис админам щас не до консолек =). Любой уважающий себя человек (человек который ценит своё время) не будет сидеть в программе не GUI. Йомайо! Щас же 21ый век! Уже "досовская строка" давно не используется. Конечно если писать под микроконтроллеры или ещё что то в этом роде... или грубо говоря для себя... то да. Но повторюсь... НИКТО (из простых юзеров) не будет использовать программки без GUI.

Ребята, вы о чем? Я за всю жизнь 2-3 гуи программы писал, и то частный заказ.
Практически любой сервис не нуждается в GUI. Драйверы уже никто не пишет? Никто же не говорит о том, чтобы писать Photoshop как console application, но есть такой тип программ - сервис. Только не говорите, что обычным пользователям сервисы не нужны. Откройте список своих сервисов и посмотрите сколько из них вы используете.

П.С. Я тоже не люблю GUI, мне это всегда казалось не интересным.

Автор: Gordon 11.7.2009, 13:14
Цитата(Пончик @  11.7.2009,  12:30 Найти цитируемый пост)
Очень полюбил Билдер через простоту создания GUI. И фактически всё что надо это писать код. И всё =). А GUI можно сделать за 2 минуты. Хочу что то похожое получить и от Вижуал С++


Да, в билдере это вообще приятно делать. В Visual C++ все "сложнее" (менее удобно что ли). MFC - по сути есть обертка для win api. А вообще разрабатывать GUI под винду лучше (удобнее, приятнее) используя .NET...

Добавлено через 1 минуту и 36 секунд
Цитата(azesmcar @  11.7.2009,  12:59 Найти цитируемый пост)
Ребята, вы о чем? Я за всю жизнь 2-3 гуи программы писал, и то частный заказ.Практически любой сервис не нуждается в GUI. Драйверы уже никто не пишет? Никто же не говорит о том, чтобы писать Photoshop как console application, но есть такой тип программ - сервис. Только не говорите, что обычным пользователям сервисы не нужны. Откройте список своих сервисов и посмотрите сколько из них вы используете.


Согласен! 

Автор: azesmcar 11.7.2009, 14:24
Пончик, я бы посоветовал забыть про MFC и Builder и приступить за изучение чего нибудь стоящего.
MFC по сути это недоразумение, за которое микрософту должно быть стыдно smile А билдер - ну что о нем говорить, компании нет, support-а нет. Сейчас среди разработчиков GUI популярны QT, wxWidgets и WinForms. Популярны среди компаний-разработчиков програмного обеспечения QT и WinForms (еще не видел вакансий на wxWidgets). Если собираешся работать на себя - пиши на чем хочешь, а нет - так придеться учить то, что затребовано. А именно, либо QT либо переходи на .NET. 

Разумеется мое лично мнение smile 

Автор: DRUID3 11.7.2009, 15:27
Цитата(Пончик @  11.7.2009,  11:30 Найти цитируемый пост)
Qt4. Ммм много наслышан про него =). Кроссплатформенность и т.д. впечетляет! Но! А как же со скоростью? Я думаю если код кроссплатформенный то и скорость работы + потребляемые ресурсы... не думаю что приложение будет работать так же быстро и так же не будет кушать много оперативки.

Речь не о кроссплатформенных скриптах, а о кросплатформенной системе разработки smile . В конце концов после прекомпилятора Qt и GCC(или MSVS) получаются бинари с вызовами X-ов или WinAPI... Это я к тому что за кросплатформенность не расплачиваются на этапе исполнения, все это "городские легенды"...

Цитата(jonie @  11.7.2009,  06:13 Найти цитируемый пост)
+1 за подобное решение, с той оговоркой что можно использовать gecko в виде движка (тот же XUL например заюзать). Кросплатформенно и есть место где развернуться дизайнерам... 

Да, это пока многие стараются не замечать почему-то(хотя пару лет назад на форуме был топик) что GUI можно успешно реализовать с помощью Web и уже давным давно. Там конечно свои нюансы, но все-таки...

Автор: Пончик 11.7.2009, 22:57
Цитата(azesmcar @  11.7.2009,  12:59 Найти цитируемый пост)
Ребята, вы о чем? Я за всю жизнь 2-3 гуи программы писал, и то частный заказ.Практически любой сервис не нуждается в GUI. Драйверы уже никто не пишет? Никто же не говорит о том, чтобы писать Photoshop как console application, но есть такой тип программ - сервис. Только не говорите, что обычным пользователям сервисы не нужны. Откройте список своих сервисов и посмотрите сколько из них вы используете.

Ну кому как =) и собственно.... смотря для чего. Круг программирования широк. Потому нельзя сказать что ГУИ это что то не нужное, и нельзя сказать что нужно только ГУИ...

Ребята. Постал главный вопрос - производительность. У меня мания оптимизации )))) я знаю что прежде всего главное прямые руки программиста, но и от компилятора тоже мноооого чего зависит! Ведь разный код можно скомпилировать по разному. Для себя я уже зделал вывод. Кроссплатформенность - Qt. Т.к. во первых много литературы, и т.д. А во вторых он круче =). Не важно что и как. Просто для себя и это чисто мое ИМХО. 

А теперь о наболевшем =). Как я уже и говорил. А что с Виндой? .NET - не моё. Просто не нравится и всё. Не люблю я такого подхода к программированию. Может потом и буду заниматся (жизнь не предскажешь), но на данный момент - нет. Остается... что ? MVSC и Билдер. Может ещё что то есть? Просто для меня главное возможность создания нормального интерфейса. И второе... впрочем главное... быстродействие. Как я уже и говорил... я фанат оптимизации =). И немогу писать приложение там где оно будет "тормозить" из-за компилятора. Подскажите пожалуйста что делать? =) Учить кривой МFC? Или Qt не уступает по быстродействию?

Спасибо ! =) само собой за чтение очередного моего маразма )))))

Автор: azesmcar 11.7.2009, 23:01
Цитата(Пончик @  11.7.2009,  22:57 Найти цитируемый пост)
Для себя я уже зделал вывод. Кроссплатформенность - Qt


Цитата(Пончик @  11.7.2009,  22:57 Найти цитируемый пост)
но на данный момент - нет. Остается... что ? MVSC и Билдер. Может ещё что то есть? 


Цитата(Пончик @  11.7.2009,  22:57 Найти цитируемый пост)
Учить кривой МFC? Или Qt не уступает по быстродействию?

Что-то я не чувствую чтобы ты определился.

Забудь про свою манию и учи то, за что платят деньги. Программирование это ремесло а не искусство.

Автор: Lazin 11.7.2009, 23:59
Пончик, а зачем GUI нужна производительность? Как ты собираешься измерять производительность GUI библиотеки? smile 
если ты будешь используешь неоптимальный алгоритм, скажем, для отрисовки на каком нибудь виджете, то тормозить будет любой код, независимо от библиотеки. А если оптимальный, то разницу никто не заметит, настолько она будет ничтожна.

Автор: kamre 12.7.2009, 01:48
Цитата(Lazin @ 11.7.2009,  23:59)
скажем, для отрисовки на каком нибудь виджете, то тормозить будет любой код, независимо от библиотеки.

Ну это смотря что отрисовывать. Думаю QPainter с OpenGL pipeline в несколько раз будет быстрее, чем GDI/GDI+ при отрисовке 2D графики со сглаживанием. А отрисовка стандартных элементов управления на чистом win api скорее всего быстрее будет работать, т.к. фактически будет делаться в ядре, а Qt все-таки сама все рисует внутри окна через theme api. Но эта разница  будет заметна только на очень уж слабых машинах.

Автор: Пончик 12.7.2009, 09:53
Цитата(azesmcar @  11.7.2009,  23:01 Найти цитируемый пост)
Программирование это ремесло а не искусство.

А я бы поспорил... ведь как говорят. Лучше работы какую ты любишь ничего нету. А я люблю программирование =) . Если скажем учить то за что платят. И учить потому что "деньги" то да... будут деньги. Если учить то что нравится. А точнее сделать из занудной работы - исскуство... то может и сначала ничего особенного не будет (в плане денег). Но потом можно снискать неплохую популярность =). Я вообще щитаю что чтобы писать действительно классно то надо полюбить программирование чтобы превратить это в исскуство =)


Цитата(Lazin @  11.7.2009,  23:59 Найти цитируемый пост)
Пончик, а зачем GUI нужна производительность? Как ты собираешься измерять производительность GUI библиотеки?  

Я про компилятор =) просто не раз наслишался что мол MSVC намного быстрее Билдера (по оптимизации кода). Потому так и спрашиваю =). А вообще я то понимаю что всё зависит от криволапости программиста. Но! Я уже много раз читал что мол все игры пишутся на MSVC, ну не все... но 90% хитов =) . Значит он чем то лучше? Если пишут именно на нём... а не на Билдере, Делфи, Qt, Паскале и т.д. =) именно там... значит всё таки разница есть? Просто поймите я какбы... фанатик оптимизации =) 


Цитата(kamre @  12.7.2009,  01:48 Найти цитируемый пост)
Но эта разница  будет заметна только на очень уж слабых машинах.

По вашим утверждениям так и драйвера для винды можно писать на Делфях =) . А если честно... я не о отрисовке. Т.к. она итак 1 раз отрисуется и всё (в случае с не 3Д\2Д графикой ). А я именно о самом коде. Аля что то типа for (int i=0;i<1000000;i++) ; . Ну я о таком =) то есть насколько качественно оно будет оптимизировано и переведенно в машинный код. Вот это для меня главное =)

Опять таки спасибо и за чтение маразма (моего) и за помощь!

Автор: azesmcar 12.7.2009, 10:05
Цитата(Пончик @  12.7.2009,  09:53 Найти цитируемый пост)
А я бы поспорил... ведь как говорят. Лучше работы какую ты любишь ничего нету. А я люблю программирование =) . Если скажем учить то за что платят. И учить потому что "деньги" то да... будут деньги. Если учить то что нравится. А точнее сделать из занудной работы - исскуство... то может и сначала ничего особенного не будет (в плане денег). Но потом можно снискать неплохую популярность =). Я вообще щитаю что чтобы писать действительно классно то надо полюбить программирование чтобы превратить это в исскуство =)

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

Автор: Пончик 12.7.2009, 10:24
Цитата(azesmcar @  12.7.2009,  10:05 Найти цитируемый пост)
Ну так люби свое ремесло. А перспектива жить без работы и денег и быть в восторге от своей популярности - сомнительное удовольствие. Я однозначно получаю больше удовольствия от траты денег, чем от процесса их заработка. Потому меня больше волнует зарплата, чем то, на каком языке я буду писать. Ну это дело индивидуальное. Решай сам для себя.

Да. Конечно каждому своё.


Ребята. Скажите пожалуйста =) Qt может по быстродействию конкурировать с MSVC? И интересно по какому принципу работает Qt? По принципу линковки файлов перед запуском? (вроде раньше такой метод был). Или подгружения разных библиотек в зависимости от ОС? А... и пожалуйста посоветуйте IDE =) .

З.Ы. дочитаю Хортона (MSVC) наверно займусь Qt =)

Автор: zim22 12.7.2009, 10:30
Цитата(Пончик @  12.7.2009,  10:24 Найти цитируемый пост)
 Qt может по быстродействию конкурировать с MSVC?

Qt - библиотека. MSVC - среда разработки. Qt интегрируется в MSVC.

Автор: Пончик 12.7.2009, 10:43
Ясненько....


Стоп! о_О

http://www.qtsoftware.com/downloads 

Download Qt SDK for Windows* (178Mb)

*Based on MinGW (download sources) tool set. Does not support VS compiler.

Если я правильно понял VS - Visual Studio. Тогда это как??? Qt библиотека\набор компонентов для MSVC но она не поддерживает его компилятор ? о_О

Добавлено через 2 минуты и 27 секунд
Ну и ещё вопросик... если я буду писать на Qt и захочу продать программку... то что? Мне надо покупать лицензию?

Автор: zim22 12.7.2009, 10:52
Цитата(Пончик @  12.7.2009,  10:43 Найти цитируемый пост)
 Does not support VS compiler.

мало ли что на заборе написано.
http://lmgtfy.com/?q=qt+msvc
Цитата(Пончик @  12.7.2009,  10:43 Найти цитируемый пост)
то что? Мне надо покупать лицензию?

да

Автор: Lazin 12.7.2009, 10:55
Qt - это библиотека, ее можно скомпилировать как с помощью msvc, так и с помощью mingw

Автор: Пончик 12.7.2009, 10:57
Цитата(zim22 @  12.7.2009,  10:52 Найти цитируемый пост)
мало ли что на заборе написано.

Странно это же оффициальный забор  smile 


Цитата(zim22 @  12.7.2009,  10:52 Найти цитируемый пост)
да

а кряки?

Автор: zim22 12.7.2009, 11:03
Цитата(Пончик @  12.7.2009,  10:57 Найти цитируемый пост)
а кряки?

а в тюрьму?

Автор: mes 12.7.2009, 11:04
Цитата(zim22 @  12.7.2009,  09:52 Найти цитируемый пост)
то что? Мне надо покупать лицензию?

да

нет.  у Qt 4.5 - LGPL.

Автор: Lazin 12.7.2009, 11:04
скачай Qt SDK, в этом случае тебе не придется собирать библиотеки самостоятельно, mingw - вполне может конкурировать с msvc в качестве генерируемого кода, а формошлепством вполне можно заниматься в QtCreator...

Автор: taiven 12.7.2009, 11:08
Цитата(zim22 @ 12.7.2009,  09:52)
Цитата(Пончик @  12.7.2009,  10:43 Найти цитируемый пост)
то что? Мне надо покупать лицензию?

да

Так там же вроде по ссылке в таблице для лицензии LGPL / Free возле Can create proprietary application галка стоит. Или я чего-то непонимаю? smile 

Автор: zim22 12.7.2009, 11:12
Цитата(taiven @  12.7.2009,  11:08 Найти цитируемый пост)
 Или я чего-то непонимаю?

это я ошибался. табличку сравнительную нашёл в нэте, в которой сказано, что 
Цитата

You may write commercial, proprietary, or otherwise non-free software only if you have purchased a commercial edition of Qt

http://doc.crossplatform.ru/qt/4.3.2/commercialeditions.html

Автор: Пончик 12.7.2009, 11:13
Ммммммммм иль может там имелось ввиду что для корпораций надо покупать лицензию? А так фри? 

Автор: zim22 12.7.2009, 11:18
Пончик, http://www.qtsoftware.com/downloads есть ссылка на http://www.qtsoftware.com/downloads/visual-studio-add-in



Автор: kamre 12.7.2009, 11:35
Цитата(Lazin @ 12.7.2009,  11:04)
mingw - вполне может конкурировать с msvc в качестве генерируемого кода

Тот самый стабильный MinGW на основе GCC 3? Что-то не верится, что он с компилятором из MSVC 2008 может конкурировать по качеству генерируемого кода, да и по скорости компиляции исходников тоже.

Добавлено @ 11:39
Цитата(Пончик @ 12.7.2009,  09:53)
Аля что то типа for (int i=0;i<1000000;i++) ; . Ну я о таком =) то есть насколько качественно оно будет оптимизировано и переведенно в машинный код. Вот это для меня главное =)

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

Автор: Пончик 12.7.2009, 11:50
Цитата(kamre @  12.7.2009,  11:35 Найти цитируемый пост)
 А что за задачи такие, что волнует такая хорошая оптимизация, математические рассчеты что ли?

Нет =) Просто упорное желание делать хорошие программы =)

Автор: azesmcar 12.7.2009, 12:25
Цитата(Пончик @  12.7.2009,  11:50 Найти цитируемый пост)
Нет =) Просто упорное желание делать хорошие программы =) 

Это паранойя smile 
Быстрая программа != Хорошая программа. Преждевременная оптимизация - зло!

Автор: Любитель 12.7.2009, 12:32
Цитата(Пончик @  11.7.2009,  12:30 Найти цитируемый пост)
1) Задачи которые будут запущены только под Виндой. И нигде иначе. То есть их будут запускать только под Виндой. Для этого и они расчитаны. Если уже заранее ведомо что их будут запускать только под форточкой так зачем тогда подключать кроссплатформенность? Имхо незачем. И в них очень важна производительность. То есть очень важно чтобы программка просто таки "летала" под форточкой. Грубо говоря поетому я и начал спрашивать в этом топике =). Если логично подумать... если майкрософт сделала винду то по логике ихняя среда должна быть круче всех для программирования под винду =). 

Для создания десктопных приложений онли под винду наиболее перспективно юзать .Net.

Цитата(Пончик @  12.7.2009,  09:53 Найти цитируемый пост)
(в случае с не 3Д\2Д графикой )

 smile 1Д-графика?!

Цитата(zim22 @  12.7.2009,  11:12 Найти цитируемый пост)
http://doc.crossplatform.ru/qt/4.3.2/commercialeditions.html

Смотрим на версию. 4.3 не было под LGPL. Читайте актуальную документацию.

Автор: Пончик 12.7.2009, 13:19
Цитата(azesmcar @  12.7.2009,  12:25 Найти цитируемый пост)
Быстрая программа != Хорошая программа. Преждевременная оптимизация - зло!

Согласен =) но тут не преждевременная =) тут только компилятор. Я же код не оптимизирую =) А компилятор =)

Цитата(Любитель @  12.7.2009,  12:32 Найти цитируемый пост)
Для создания десктопных приложений онли под винду наиболее перспективно юзать .Net.

Если не секрет... почему? И если не ошибаюсь то .НЕТ задумано как кроссплатформенное? Просто меня ужасно бесит то что надо .НЕТ ФреймВорк ставить  smile почему моя программа должна требовать ещё что то?! О_о 


Цитата(Любитель @  12.7.2009,  12:32 Найти цитируемый пост)
  1Д-графика?!

Даааааа а ещё есть 0Д графика и вообще графика 3\14Д самая крутая  smile 

Я имел ввиду ОпенГЛ, ДиректХ.


Цитата(Любитель @  12.7.2009,  12:32 Найти цитируемый пост)
Смотрим на версию. 4.3 не было под LGPL. Читайте актуальную документацию.

То есть я могу писать под Qt4.6 (или какой у них последний?) и со спокойной душой продавать свои продукты? 

Автор: azesmcar 12.7.2009, 13:27
Цитата(Пончик @  12.7.2009,  13:19 Найти цитируемый пост)
Согласен =) но тут не преждевременная =) тут только компилятор. Я же код не оптимизирую =) А компилятор =)

Это не то, о чем надо думать при написании GUI приложений.

Цитата(Пончик @  12.7.2009,  13:19 Найти цитируемый пост)

Если не секрет... почему? И если не ошибаюсь то .НЕТ задумано как кроссплатформенное? Просто меня ужасно бесит то что надо .НЕТ ФреймВорк ставить  smile почему моя программа должна требовать ещё что то?! О_о 

А что по твоему для QT ничего ставить не надо? Еще как надо, посмотри сколько DLL-ок надо с собой таскать, а .NET можно впихнуть в свой инсталятор также, как и DLL-ки от QT.

Автор: Пончик 12.7.2009, 13:39
Цитата(azesmcar @  12.7.2009,  13:27 Найти цитируемый пост)
Это не то, о чем надо думать при написании GUI приложений.

Подскажите тогда... а о чём?

Цитата(azesmcar @  12.7.2009,  13:27 Найти цитируемый пост)
А что по твоему для QT ничего ставить не надо? Еще как надо, посмотри сколько DLL-ок надо с собой таскать, а .NET можно впихнуть в свой инсталятор также, как и DLL-ки от QT.

Вот блин... променял шило на мыло  smile 
Я думал там вылазят нативные приложения... а если не секрет. То каков обём (в мегабайтах) тех всех дллей которые надо за собой таскать?

Цитата(azesmcar @  12.7.2009,  13:27 Найти цитируемый пост)
 а .NET можно впихнуть в свой инсталятор

Вы имеете ввиду в Install Shield Wizard? Что то типа того? Или чисто в свой ехешник?

Автор: azesmcar 12.7.2009, 13:47
Цитата(Пончик @  12.7.2009,  13:39 Найти цитируемый пост)
Подскажите тогда... а о чём?

О качестве и чистоте кода. При разработке GUI накакать в код очень легко.

Цитата(Пончик @  12.7.2009,  13:39 Найти цитируемый пост)
Вот блин... променял шило на мыло  smile 
Я думал там вылазят нативные приложения... а если не секрет. То каков обём (в мегабайтах) тех всех дллей которые надо за собой таскать?

А ты что хотел? По твоем эти библиотеки в ядро вшиты? (кстати .NET начиная с Windows Vista уже вшит и ничего ставить не надо).
Объем точно не вспомню, путь лучше знающие люди подскажут, но было кажеться что-то вроде 5-6 mb. 

Цитата(Пончик @  12.7.2009,  13:39 Найти цитируемый пост)
Вы имеете ввиду в Install Shield Wizard? Что то типа того? Или чисто в свой ехешник? 

Да, install shield. 

Автор: Пончик 12.7.2009, 13:51
Цитата(azesmcar @  12.7.2009,  13:47 Найти цитируемый пост)
О качестве и чистоте кода. При разработке GUI накакать в код очень легко.

Спасибо! Учту! 

Цитата(azesmcar @  12.7.2009,  13:47 Найти цитируемый пост)
кстати .NET начиная с Windows Vista уже вшит и ничего ставить не надо

Практически =) а если я использовал .NET FrameWork 4.0 ? (кажется последний) а в Висте был 3.5? Значит всётаки обновлять надо...


Цитата(azesmcar @  12.7.2009,  13:47 Найти цитируемый пост)
 что-то вроде 5-6 mb

Ну это ещё жить можно :Р

Автор: azesmcar 12.7.2009, 14:06
Цитата(Пончик @  12.7.2009,  13:51 Найти цитируемый пост)
Практически =) а если я использовал .NET FrameWork 4.0 ? (кажется последний) а в Висте был 3.5? Значит всётаки обновлять надо...

Разумеется. Иначе быть не может, или микрософту с каждый фреймворком придеться выпускать операционную систему smile 

Цитата(Пончик @  12.7.2009,  13:51 Найти цитируемый пост)
Ну это ещё жить можно :Р 

Это я о минимальном, там на 1-2 DLL, смотря что используешь. Но лучше подождать ответа людей, которые работают на QT (я его два раза в жизни видел).

Автор: Любитель 12.7.2009, 14:18
Цитата(Пончик @  12.7.2009,  13:19 Найти цитируемый пост)
То есть я могу писать под Qt4.6 (или какой у них последний?) и со спокойной душой продавать свои продукты?  

Если вкратце - то да (Qt 4.5 пока). Если не будешь сами исходники Qt в свой код копипастить.

Цитата(azesmcar @  12.7.2009,  13:27 Найти цитируемый пост)
Это не то, о чем надо думать при написании GUI приложений.

 smile 

Цитата(Пончик @  12.7.2009,  13:19 Найти цитируемый пост)
Если не секрет... почему?

Потому что это флагманская МС-шная технология для создания декстопа под винду smile

Цитата(Пончик @  12.7.2009,  13:19 Найти цитируемый пост)
Просто меня ужасно бесит то что надо .НЕТ ФреймВорк ставить  

В ту же висту входит 3-ий фреймворк. На вымирающие системы не смотрим smile Пускай качают..

Цитата(azesmcar @  12.7.2009,  13:47 Найти цитируемый пост)
Объем точно не вспомню, путь лучше знающие люди подскажут, но было кажеться что-то вроде 5-6 mb. 

Собранные релизы на VC++ 2008 и мингв (собирал не сам: и то, и то из длл-ок Qt SDK 2009.01): QtCore - 2/2.7, QtGui - 7.5/11.4, QtWebKit - 8.3/19.5. 

Цитата(Пончик @  12.7.2009,  13:51 Найти цитируемый пост)

Практически =) а если я использовал .NET FrameWork 4.0 ? (кажется последний) а в Висте был 3.5? Значит всётаки обновлять надо...

В висте 3-ий. 4-ый вообще ещё только в бетте. Да и.. кто мешает писать под непоследний фреймворк?

Автор: Пончик 12.7.2009, 14:24
Цитата(Любитель @  12.7.2009,  14:18 Найти цитируемый пост)
В ту же висту входит 3-ий фреймворк. На вымирающие системы не смотрим  Пускай качают..

 smile А вы хоть в курсе что Виста - полный провал? И сейчас 80% остались на ХР? В том числе и я... 
Цитата(Любитель @  12.7.2009,  14:18 Найти цитируемый пост)
Потому что это флагманская МС-шная технология для создания декстопа под винду 

Ну это само собой... диву дивуюсь как МFC ещё живёт? =) 

Цитата(Любитель @  12.7.2009,  14:18 Найти цитируемый пост)
Собранные релизы на VC++ 2008 и мингв (собирал не сам: и то, и то из длл-ок Qt SDK 2009.01): QtCore - 2/2.7, QtGui - 7.5/11.4, QtWebKit - 8.3/19.5. 

оО а почему же такая большая разница в обёме данных? оО


Цитата(Любитель @  12.7.2009,  14:18 Найти цитируемый пост)
В висте 3-ий. 4-ый вообще ещё только в бетте. Да и.. кто мешает писать под непоследний фреймворк?

Наверно совесть  smile  + желание стремится к лучшему =)

Автор: azesmcar 12.7.2009, 14:31
Цитата(Пончик @  12.7.2009,  14:24 Найти цитируемый пост)
 smile А вы хоть в курсе что Виста - полный провал? И сейчас 80% остались на ХР? В том числе и я... 

Это временно, вскоре откажуться от support-а XP - тогда ситуация резко измениться. На XP помниться тоже не хотели переходить, от 2000 он мало чем отличался, но прекратили поддержку - и все. Тоже самое будет с XP.

Автор: Пончик 12.7.2009, 14:41
Я буду переходить только на Вин7 =) уже ставил - понравился очень. Но! На нём писать что то... щас не очень удобно. Много проколов было. (Ставил его ещё пол года назад). Поддержку ХР уже отменили. 

Ммм...
Кстати такой тогда вопросик... кто быстрее? .НЕТ или Билдер ? Прошу брать во внимание последнии версии. А то за руль Билдера села Ембаркадеро... и за 2 года (а может и за 1) компилятор стал намного лучше! И сразу в придачу попрошу сказать как Qt (тоже последняя) будет конкурировать с Билдером и .НЕТ?

Вообщем кто быстрее? Builder 2009 vs .NET (VS 2008) vs Qt4.5 ? 
По логике понимаю что хуже всего будет с Qt. Т.к. кроссплатформа. Но! Это кроссплатформа =) . И я уже определился с ней. А вот как для винды? Сможет она конкурировать с Билдером и .НЕТ? 

Автор: bsa 12.7.2009, 16:48
Цитата(Пончик @ 11.7.2009,  12:30)
Тем же бородатым сис админам щас не до консолек =). Любой уважающий себя человек (человек который ценит своё время) не будет сидеть в программе не GUI. Йомайо! Щас же 21ый век! Уже "досовская строка" давно не используется. Конечно если писать под микроконтроллеры или ещё что то в этом роде... или грубо говоря для себя... то да. Но повторюсь... НИКТО (из простых юзеров) не будет использовать программки без GUI.

Поверь мне, как сисадмину-любителю (админю серваки знакомых за спасибо), намного проще настроить 20 консольных скриптов, которые сами будут делать твою работу, чем сидеть и жать каждый раз на кнопочки. Притом, чтобы что-то сделать Windows в большинстве случае необходимо купить соответствующее ПО. Так как скрипт там ты не напишешь. Более того, ты не задумывался, какой тип приложений работает в маршрутизаторах, например? Не забывай, далеко не все ПО рассчитано на простых юзеров. Да, конечно, это ПО более заметно, но оно только верхушка айсберга.

Что быстрее MSVC, Qt или .Net - вопрос не корректный (так как это разные вещи). Я уже объяснял, что для GUI приложения скорость интерфейса - это не главный показатель. Главное, чтобы работа с программой не напрягала пользователя. Если интерфейс будет летать, но на каждое действие пользователя программа будет зависать на 10 секунд (так как алгоритм сделан неверно, или не сделана грамотная индикация процесса работы), то он будет недоволен.
Поэтому, писать программу надо на том, что удобней или на том, на чем требуют. Удобней на билдере - пиши на билдере, удобней на .Net - пиши на .Net, а удобней на Qt - сам знаешь ответ.

НЕ ЗАДУМЫВАЙСЯ ОБ ОПТИМИЗАЦИИ, ПОКА НЕ ВОЗНИКЛО ПРОБЛЕМ СО СКОРОСТЬЮ!!!
Потому что http://www.google.com/search?q=%D0%BF%D1%80%D0%B5%D0%B6%D0%B4%D0%B5%D0%B2%D1%80%D0%B5%D0%BC%D0%B5%D0%BD%D0%BD%D0%B0%D1%8F+%D0%BE%D0%BF%D1%82%D0%B8%D0%BC%D0%B8%D0%B7%D0%B0%D1%86%D0%B8%D1%8F+%D0%B7%D0%BB%D0%BE. Если у тебя мания оптимизации на ранних стадиях - борись с ней. Только не стоит перебарщивать - пессимизация тоже вещь далеко не полезная.


А ответить на твой вопрос про скорость можно так: VS2008 .Net - самая медленная технология по скорости исполнения, так как код там не процессора, а некий промежуточный (правда, слышал что компилируется в машинный на этапе установки в систему), Qt и VCL (Билдер) - должны быть примерно равны, но если Qt можно собрать и на Borland C++ и на MSVC, то VCL нет, а борландовский компилятор не отличается особой эффективностью кода. Поэтому, при прочих равных бери Qt. И не парься. Если возникнут проблемы с производительностью, то с помощью профайлера выяви место и его перепиши на WinApi, оставив код на Qt в качестве читаемого описания действий.

Не покупая лицензию на Qt можно писать платные программы. И до версии 4.5 тоже можно было. Тут дело в другом, что по лицензии GPL, если ты написал что-то с использованием библиотеки (или ее части) распространяемой под этой лицензией, то ты обязан распространять это "что-то" под этой же лицензией. А в ней четко указано, что ты обязан предоставить исходники этого "что-то" по первому требованию приобретателя и предоставить ты их должен не дороже, чем по цене доставки и носителя. Поэтому, если программа пишется кому-то и нет от него ограничений, то можешь писать под лицензией GPL - все равно код будешь отдавать вместе с экзешниками.
У LGPL есть поблажка на использования динамически подключаемых библиотек (DLL). Т.е. ты не обязан раскрывать код своей программы, если подключаешь динамические библиотеки. Но вот если ты подключаешь статически, то тут извини-подвинься - тоже обязан предоставить исходники как либы, так и проги по первому требованию приобретателя.

Автор: Любитель 12.7.2009, 17:15
Цитата(Пончик @  12.7.2009,  14:24 Найти цитируемый пост)
А вы хоть в курсе что Виста - полный провал? И сейчас 80% остались на ХР? В том числе и я... 

Это проблема маркетинга, а не системы, как таковой по больше части... Ах да - я пользуюсь XP. Но 80% знакомых вистой. Дома. На работе - 99% XP.

Цитата(Пончик @  12.7.2009,  14:24 Найти цитируемый пост)
Ну это само собой... диву дивуюсь как МFC ещё живёт? =) 

Ну... Есть клиенты, пишущие под MFC, портировать приличный проект - зачастую экономически невыгодно.. Это исторический момент вообщем-то smile

Цитата(Пончик @  12.7.2009,  14:24 Найти цитируемый пост)
оО а почему же такая большая разница в обёме данных? оО

Фиг его знает. Если загоняться с оптимизацией на размер - думаю можно мингв-шный вариант улучшить (впрочем и VC-шный, пожалуй, тоже). Повторюсь - это официальная сборка.

Цитата(Пончик @  12.7.2009,  14:24 Найти цитируемый пост)
Наверно совесть  smile  + желание стремится к лучшему =) 

Причём тут совесть? smile А так.. "лучшее - враг хорошего" smile Что есть в .Net 3.5 и выше (в плане ГУИ), что вам не хватает в .Net 3.0? Навскидку ответите?

И, наконец-таки - по поводу выбора. Если писать "для себя" и знаете хорошо VCL - пишите на VCL. TC до недавних пор AFAIK собирался на Delphi 4 (фуууууу!!!) - кому-то это мешало?! Не для себя - смотрите на вакансии в своём городе. Именно поэтому я в своё время бросил C++/Qt и перешёл на C#. Впрочем, сейчас меня десктоп вообще мало интересует smile

Автор: Пончик 12.7.2009, 17:54
ВСЕМ спасибо большое! =) Пожалуй остановлюсь на Qt =) . Так что господа программисты КюТешники =) . Принимайте в свои ряды пополнение =) smile 

Автор: Любитель 12.7.2009, 19:01
Добро пожаловать: http://forum.vingrad.ru/forum/c-c++QT-gtk-wxWidgets.html smile

Автор: ller 12.7.2009, 19:53
Раз пошла такая пьянка.....
Народ, что вы скажете на счет GTK. Каково оно? + и - по сравнению с Qt

Автор: andrew_121 12.7.2009, 19:56
Цитата(Пончик @  12.7.2009,  17:54 Найти цитируемый пост)
Так что господа программисты КюТешники =) . Принимайте в свои ряды пополнение =)

Поиском пользуйся в первую очередь.
Так как SABROG у нас злой smile  Надеюсь он меня простит smile 

Автор: bsa 12.7.2009, 20:09
Цитата(ller @ 12.7.2009,  19:53)
Народ, что вы скажете на счет GTK. Каково оно? + и - по сравнению с Qt

http://forum.vingrad.ru/forum/topic-183331/kw-gtk.html
Выводы делай сам. Имхо, после того, как Qt стала под LGPL, у меня возник вопрос о необходимости существования GTK. Хотя, может найдутся серьезные аргументы. Но, думаю, это уже не в этой теме обсуждать надо.

Автор: V0LT 13.7.2009, 21:42
По мне ГУЙ лучше всего делать на Win API (если имеется ввиду Win системы) ... тем более что функции одни и те же во всех средах 
Раньше занимался только в Delphi - затруднений с созданием ГУЯ не возникло

Автор: azesmcar 13.7.2009, 22:21
Цитата(V0LT @  13.7.2009,  21:42 Найти цитируемый пост)
По мне ГУЙ лучше всего делать на Win API (если имеется ввиду Win системы) ... тем более что функции одни и те же во всех средах 
Раньше занимался только в Delphi - затруднений с созданием ГУЯ не возникло

Да, это отличная идея, столько велосипедов изобретать - радости полные штаны. Нарисуй какой нибудь DataGridView на чистом WinAPI - тогда посмотрим что лучше.

Автор: DRUID3 13.7.2009, 22:47
Цитата(V0LT @  13.7.2009,  20:42 Найти цитируемый пост)
По мне ГУЙ лучше всего делать на Win API (если имеется ввиду Win системы) ...
 smile Именно! А еще лучше получить доступ к видеопамяти и попиксельно отрисовывать свой...И здесь нам, как обычно, придет на помощь старина asm smile ... 

Автор: Rififi 14.7.2009, 00:44
bsa, 
Притом, чтобы что-то сделать Windows в большинстве случае необходимо купить соответствующее ПО. Так как скрипт там ты не напишешь.
Это так думается по незнанию.
Потому как домен в Windows 2000 и выше ПОЛНОСТЬЮ управляется скриптами.

Автор: W4FhLF 14.7.2009, 12:21
Цитата(jonie @  11.7.2009,  07:13 Найти цитируемый пост)
+1 за подобное решение, с той оговоркой что можно использовать gecko в виде движка (тот же XUL например заюзать). Кросплатформенно и есть место где развернуться дизайнерам...


Где с этим более близко можно познакомиться? 

Автор: DRUID3 14.7.2009, 14:14
Цитата(W4FhLF @  14.7.2009,  11:21 Найти цитируемый пост)

Где с этим более близко можно познакомиться?  

Набрать XUL и какое-то русское слово, например "самоучитель"... Это если нужен русский... http://xul.ru/tutorial/... Но в сети полно инфы - http://www.hevanet.com/acorbin/xul/top.xul, например... 

Автор: W4FhLF 14.7.2009, 14:35
DRUID3, спасибо. 

Кстати, в Qt есть WebKit, там тоже можно интерфейсы писать. Плюс мне кажется здесь стоит упомянуть про http://labs.trolltech.com/page/Projects/Graphics/Kinetic/DeclarativeUI от тех же тролей. 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)