На чём писать GUI?
Моё мнение такое:
Максимальная переносимость (при минимальной удобности) - это 100% winapi. Если не лень таскать пару-тройку dll -- то mfc, ибо удобнее. Наконец, максимальные удобства при минимальной переносимости (.NET Framework весит немало) -- это GDI+.
Максимальная переносимость (при минимальной удобности) - это 100% winapi. Если не лень таскать пару-тройку dll -- то mfc, ибо удобнее. Наконец, максимальные удобства при минимальной переносимости (.NET Framework весит немало) -- это GDI+.
ты написал полнейшую ахинею
Сюда можно добавить Java + JRE...
НА самом деле мне кажется, что правильный ответ на поставленный вопрос: Delphi
НА самом деле мне кажется, что правильный ответ на поставленный вопрос: Delphi
на поставленнный вопрос не может быть "правильного" ответа
Дай, пожалуйста, свой ответ.
Максимальная переносимость (при минимальной удобности) - это 100% winapi. Если не лень таскать пару-тройку dll -- то mfc, ибо удобнее. Наконец, максимальные удобства при минимальной переносимости (.NET Framework весит немало) -- это GDI+.
Реально полную хуйню написал.
GDI+ - это апи для 2д графики. К .НЕТ никакого отношения не имеет. ГУИ на нем писАть тоже не очень прикольно, потому что это апи для 2д графики, и кнопочек, едитов и прочей хни там нет.
Вындовс Формс наверное имелись в виду.
А дельфевые компонентики, наверное, удобнее винформов. Но! Щаз рядом со мной сидит человек, который пытается писАть на дельфе. И ему очень от этого плохо =)
ЗЫ: .НЕТ фреймворк 1.1 весит 20 метров.
О!
Есть такая весч - QT. Оно даже кросплатформенное. Сам я с ним не обсчался, но некоторые люди говорили, что кросплатформенность - не единственное его достоинство.
Есть такая весч - QT. Оно даже кросплатформенное. Сам я с ним не обсчался, но некоторые люди говорили, что кросплатформенность - не единственное его достоинство.
поясни вот это
visual studio 7 тоже делает exe, но без farmework он не работает. Такой exe-шник устраивает?
Платформа windows... максимально переносимый
в итоге хочется exe'шник
visual studio 7 тоже делает exe, но без farmework он не работает. Такой exe-шник устраивает?
Есть QT под windows?
net framework, да?
Вообще, я тут глянул Visual Studio .NET, он хочет чото типа гига для установки, это, по-моему, очень дофига.
Вообще, я тут глянул Visual Studio .NET, он хочет чото типа гига для установки, это, по-моему, очень дофига.
1Гб сейчас стоит меньше $1
сам framework - 24 мб дистриб
да, QT под Windows есть.
> 1Гб сейчас стоит меньше $1
продай мне винт на 1Гб за $1, с гарантией
продай мне винт на 1Гб за $1, с гарантией
> 1Гб сейчас стоит меньше $1
продай мне винт на 1Гб за $1, с гарантией
чувак, дороже выйдет

В мой винт нельзя установить дополнительные гигабайты.
> продай мне винт на 1Гб за $1, с гарантией
Во-первых, про винт в оригинальном сообщение ничего не говорилось.
Во-вторых, можешь приносить бакс и юзать гиг места на z81, например
Во-первых, про винт в оригинальном сообщение ничего не говорилось.
Во-вторых, можешь приносить бакс и юзать гиг места на z81, например

> Во-первых, про винт в оригинальном сообщение ничего не говорилось.
Ну флешку пусть продаст.
Какие ещё бывают локальные носители со сравнимой скоростью и надёжностью?
> Во-вторых, можешь приносить бакс и юзать гиг места на z81, например
Продай место Глебу, он поставит туда Visual Studio и расскажет о впечатлениях
Ну флешку пусть продаст.
Какие ещё бывают локальные носители со сравнимой скоростью и надёжностью?
> Во-вторых, можешь приносить бакс и юзать гиг места на z81, например
Продай место Глебу, он поставит туда Visual Studio и расскажет о впечатлениях

в качестве API для GUI - QT просто супер - очень просто, удобно, красивая модель
недостаток qt - две лицензии GPL и платная
под винду бесплатна только 2ая версия
в качестве альтернативы могу предложить wxWidgets
кросплатформеная, чуть менее удобная чем qt, но под LGPL
недостаток qt - две лицензии GPL и платная
под винду бесплатна только 2ая версия
в качестве альтернативы могу предложить wxWidgets
кросплатформеная, чуть менее удобная чем qt, но под LGPL
Если нужна максимальная переносимость+нормальный GUI - скорее всего это только java (swing).
JBuilder позволяет без особых проблем создавать java-gui, но руками трогать код не рекомендуется
exe-шника не будет, но необходимые файлы с собой взять можно будет (хотя есть проги, которые и ехе делать умеют - микрософтовская java, например)
JBuilder позволяет без особых проблем создавать java-gui, но руками трогать код не рекомендуется
exe-шника не будет, но необходимые файлы с собой взять можно будет (хотя есть проги, которые и ехе делать умеют - микрософтовская java, например)
qt-2.3.0 под винду халявная
штука на самом деле неудобная, тк писать приходится все руками, а всякие вещи типа QTdesigner'а там скорее ради прикола.
зато перекомпилять результат под Линух занимает около 5 минут времени (Makefile состряпать)
штука на самом деле неудобная, тк писать приходится все руками, а всякие вещи типа QTdesigner'а там скорее ради прикола.
зато перекомпилять результат под Линух занимает около 5 минут времени (Makefile состряпать)
под 3-м QT уже писать становится нормально, в принципе.
под 2-м - да, пиздец, я помню позапрошлое лето...
под 2-м - да, пиздец, я помню позапрошлое лето...
ну блин - ты ж не бось имеешь ввиду дизигнер второй ветки qt
под 3й он даже приличным стал
под 3й он даже приличным стал
точно не знаю, но концепция там по-моему такая же
.ui парой доведенных до автоматизма команд перегоняется в .cpp и .h соответственно
сделаешь новый .ui, он затрет старый .cpp, в котором у меня уже много чего добавлено (гриды там или русские надписи)
приходится извращаться и объединять новый и старывй cpp-шники руками, а когда они оба по 500 строк, то это геморно как-то
.ui парой доведенных до автоматизма команд перегоняется в .cpp и .h соответственно
сделаешь новый .ui, он затрет старый .cpp, в котором у меня уже много чего добавлено (гриды там или русские надписи)
приходится извращаться и объединять новый и старывй cpp-шники руками, а когда они оба по 500 строк, то это геморно как-то
так все таки.
пока на ум приходят .NET (ни разу не смотрел. хороший там набор библиотек и визуальный редактор?) и Delphi(формы клепаются на лету, но меня от него воротит)..
Какая сейчас самая простая и удобная среда для написания GUI??
пока на ум приходят .NET (ни разу не смотрел. хороший там набор библиотек и визуальный редактор?) и Delphi(формы клепаются на лету, но меня от него воротит)..
акая сейчас самая простая и удобная среда для написания GUI?
вообще-то та, которую сам лучше всего знаешь

Но! мне из всех сред больше всего нравится последняя Visual Studio конечно. Хотя делфи я знаю намного лучше

>вообще-то та, которую сам лучше всего знаешь
этот критерий и у меня и у соула не основной видимо.:) мне нужно выбирать среду для разработки гуи в новом проекте. можно пересесть с этого долбанного дельфи на что-то более прогрессивное и удобное:)
этот критерий и у меня и у соула не основной видимо.:) мне нужно выбирать среду для разработки гуи в новом проекте. можно пересесть с этого долбанного дельфи на что-то более прогрессивное и удобное:)
Ну тогда выбор очевиден.
И по поводу qt - наверное это хоршо, но вот что с ней будет завтра - я не знаю. Скорее всего сдохнет. Так что я бы не стал qt в кач-ве библиотеки советовать.
да и писать ручками все что давно можно делать более эффективно - изврат
И по поводу qt - наверное это хоршо, но вот что с ней будет завтра - я не знаю. Скорее всего сдохнет. Так что я бы не стал qt в кач-ве библиотеки советовать.
да и писать ручками все что давно можно делать более эффективно - изврат
почему это qt сдохнет?

почему сейчас не пишут на owl и vcl с mfc настанет скоро конец?
И по поводу qt - наверное это хоршо, но вот что с ней будет завтра - я не знаю. Скорее всего сдохнет. Так что я бы не стал qt в кач-ве библиотеки советовать.если я не ошибаюсь, с кутэ3 идёт крайне пристойное сдк
да и писать ручками все что давно можно делать более эффективно - изврат
и по этой и не только причине писать на нём вполне себе даже
если ошибаюсь, поправьте
эй
аналогии неочевидны
под кде ни на чём писать больше нельзя
аналогии неочевидны
под кде ни на чём писать больше нельзя
ну так они имели в виду qt под windows. Изначально ведь так вопрос ставился - gui под windows (но переносимая, о чем лучше вообще не мечтать (особенно о полной переносимости). Такого не будет никогда и MS об этом позаботится, уверяю)
например, Kerio WinRoute Firewall (кстати, вовсе не кроссплатформенный продукт) использует QT для своей админки.
а уж если говорить о кроссплатформенных прогах, типа SIM и т.п....
в общем, идея ясна.
ну, я, например, не очень сейчас знаю, на чем ещё можно писать пристойное переносимое ГУИ. (wxWindows ?)
кстати, QT ещё и под Mac бывает, и под Embedded Linux. вообще, отличная штука!
а уж если говорить о кроссплатформенных прогах, типа SIM и т.п....
в общем, идея ясна.
ну, я, например, не очень сейчас знаю, на чем ещё можно писать пристойное переносимое ГУИ. (wxWindows ?)
кстати, QT ещё и под Mac бывает, и под Embedded Linux. вообще, отличная штука!
РАзные gui возможно только пересечь в одной библиотеке. В итоге получается некое подмножество, ограниченные возможности, много гемора (ручного кодирования непредсказуемых багов. имхо.
ну так они имели в виду qt под windowsи что?
основная фишка кутэ -- в переносимости
за счёт неё ребята деньги зарабатывают
и немалые, замечу
и юзается это многими конторами, которые пишут спец-ПО у которого требование номер один -- мультиплатформенность
это, например, военные, банки и прочие закрытые по самое не балуй товарищи
так что кутэ жив будет
тут можно не волноваться
а про кде я сказал, чтоб напомнить, насколько линукс-версия кутэ востребована
gui под windows (но переносимая, о чем лучше вообще не мечтать. Такого не будет никогда и MS об этом позаботится, уверяю)Qt?
Kylix?
РАзные gui возможно только пересечь в одной библиотеке. В итоге получается некое подмножество, ограниченные возможности, много гемора (ручного кодирования непредсказуемых багов. имхо.ещё раз и по-русски
я тебя не понял, объяснись
и юзается это многими конторами, которые пишут спец-ПО у которого требование номер один -- мультиплатформенностьо!
http://adastra.ru/ru/
вот они тоже юзают QT!
точно знаю.
допустим я обрабатываю нажати правой клавиши мыши. Такое редко бывает? А в маке есть она, правая клавиша? А между тремя осками еще больше различий. Как ты представляешь себе возможность разработки универсального кода? Все-равно будет много условной компиляции, проверки платформ и версии.
Ну а если qt под windows будет развиватся и дальше и сделает оболочку над framework - использовать такой наворот я бы не стал.
Ну а если qt под windows будет развиватся и дальше и сделает оболочку над framework - использовать такой наворот я бы не стал.
допустим я обрабатываю нажати правой клавиши мыши. Такое редко бывает? А в маке есть она, правая клавиша? А между тремя осками еще больше различий. Как ты представляешь себе возможность разработки универсального кода?ну дык извините
а)
ты обрабатываешь скрол мыши
такое редко бывает?
а если у мыши колёсика нет?
ну ты понял
б)
ессно, если ты пишешь междужопия, рассчитанные на разные платформы, ты должен или рассчитывать на пересечение их возможностей или писать с учётом особенностей каждой, но с гемором
но писать-то ты так или иначе будешь под ОДНОЙ БИБЛИОТЕКОЙ
Ну а если qt под windows будет развиватся и дальше и сделает оболочку над framework - использовать такой наворот я бы не стал.собственно, почему?
не пох ли, над чем оно оборачивает?
главное, что один код работает везде
бтв
крайне сомневаюсь, что такое будет
нет смысла
ибо:
А) фреймворк и сам потенциально и почти практически мультиплатформен
Б) в виндах он как и кутэ тоже суть обёртка над апи
ты обрабатываешь скрол мышиха, ну ты сравнил. Я тебя понял, но в рамках одной платформы это исключения, в рамках разных - обычное дело.
такое редко бывает?
а если у мыши колёсика нет?
но писать-то ты так или иначе будешь под ОДНОЙ БИБЛИОТЕКОЙя бы предпочел писать под разными, но ПРОСТОЙ ЛЕГКО СОПРОВОЖДАЕМЫЙ код.
не пох ли, над чем оно оборачивает?может и пох, но число багов растет по правилу пересечения уязвимостей как их произведение, как минимум
главное, что один код работает вездечерез пару версий добиться этого станет все сложнее
фреймворк и сам потенциально и почти практически мультиплатформенточнее теоретически
в виндах он как и кутэ тоже суть обёртка над апину это в текущих виндах. В следующих он станим родным api
ха, ну ты сравнил. Я тебя понял, но в рамках одной платформы это исключения, в рамках разных - обычное дело.ну-ка поприводи ещё таких примеров
хотя бы тройку
я бы предпочел писать под разными, но ПРОСТОЙ ЛЕГКО СОПРОВОЖДАЕМЫЙ код.так не бывает
точнее теоретическидля особо талантливых
я ж не зря написал "почти практически"
go www.mono-project.com
о!
знаешь, OpenGL - переносимая библиотека.
однако, под Windows есть wgl, под X - glX, которые привязывают GL к системе. и, наверняка, если ты будешь писать ДЕЙСТВИТЕЛЬНО переносимое приложение, ты абстрагируешься от wgl и glX, сделав соответствующую небольшую прослойку кода?
можно ведь будет, наверное, тоже сделать один дополнительный уровень абстракции, на котором принимать во внимание правую кнопку мыши и её отсутствие?
P.S. в QT тоже что-то есть относительно GL, кстати =)
знаешь, OpenGL - переносимая библиотека.
однако, под Windows есть wgl, под X - glX, которые привязывают GL к системе. и, наверняка, если ты будешь писать ДЕЙСТВИТЕЛЬНО переносимое приложение, ты абстрагируешься от wgl и glX, сделав соответствующую небольшую прослойку кода?
можно ведь будет, наверное, тоже сделать один дополнительный уровень абстракции, на котором принимать во внимание правую кнопку мыши и её отсутствие?
P.S. в QT тоже что-то есть относительно GL, кстати =)
я вроде уже написал все, что хотел, дальше мы только будем толочь воду в ступе
Приведи пример хоть web приложения, написанного на asp.net, хостящегося под линухом, использующем mono? Заебесся саппортить это чудо (если оно заработает ).
Приведи пример хоть web приложения, написанного на asp.net, хостящегося под линухом, использующем mono? Заебесся саппортить это чудо (если оно заработает ).

Приведи пример хоть web приложения, написанного на asp.net, хостящегося под линухом, использующем mono? Заебесся саппортить это чудо (если оно заработает ).надо попробовать, наверное, я вот не пробовал, а ты?
какие из последних выпущенных игр написаны на OpenGL ?
э, не
стой
стой
я бы предпочел писать под разными, но ПРОСТОЙ ЛЕГКО СОПРОВОЖДАЕМЫЙ код.пример такого решения в студию
мб DOOM3 ?
и желания никакого не возникает 

и желания никакого не возникаетэто уже предрассудки =)
Wolfenstein?
какие из последних выпущенных игр написаны на OpenGL ?тааааак
приехали
а с гл-то у нас что не так?
кстати, в вышеупомянутой AdAstra писали проект на QT + GL.
наверное, это не просто так.
мне кажется, что именно для переносимости.
наверное, это не просто так.
мне кажется, что именно для переносимости.
да все так. Вот и вопрос задать нельзя
Только достоверные примеры пожалуйста приведите, а не догадки ваши
Только достоверные примеры пожалуйста приведите, а не догадки ваши
хорошо.
DOOM 3.
DOOM 3.
ты уверен? 

Wolfenstein
на 99%.
дело в том, что:
1. id всегда писала гамы на GL.
2. они делают DOOM3 и для Linux (если ещё не сделали а писать на разных графических библиотеках DOOM3 - лишний гемор, вроде бы.
дело в том, что:
1. id всегда писала гамы на GL.
2. они делают DOOM3 и для Linux (если ещё не сделали а писать на разных графических библиотеках DOOM3 - лишний гемор, вроде бы.
плюс один процент от меня
на гл
это точно
на гл
это точно
ну круто, молодцы id software.
Вот только это не gui приложение
Вот только это не gui приложение

ну так мы уже и не QT обсуждаем, а GL =)
было б странно, если бы id написали DOOM3 на QT
было б странно, если бы id написали DOOM3 на QT
изначально мы обсуждали gui и переносимость, не так ли?

это было бы не просто странно
было б странно, если бы id написали DOOM3 на QT

это было бы не просто странно
да, все верно =)
однако в процессе спора мы перекинулись на ГЛ зачем-то (потому что я сравнил разницу между glx и wgl с разницей между платформами, на которых используется QT и, кстати, упомянул метод решения проблемы - написание дополнительной прослойки).
можем вернуться к QT, если пожелаешь.
однако в процессе спора мы перекинулись на ГЛ зачем-то (потому что я сравнил разницу между glx и wgl с разницей между платформами, на которых используется QT и, кстати, упомянул метод решения проблемы - написание дополнительной прослойки).
можем вернуться к QT, если пожелаешь.
да, да, все так. Но я наверное еще постов десять назад написал, что дальше мы будет толочь воду в ступе, чем собсвенно и занимаеся. Ты хочешь продолжить это?
Я уже не особо...
Я уже не особо...
Я бы хотел, чтобы пришли к какому-нибудь консенсусу, если это возможно.
Хотя, конечно, не имею ничего против варианта, где каждый останется при своем мнении.
Хотя, конечно, не имею ничего против варианта, где каждый останется при своем мнении.
2 Quercus:
Почему молчишь? =)
Тебя не устраивает ни один из предложенных исходов?
Почему молчишь? =)
Тебя не устраивает ни один из предложенных исходов?
устраивает, но те доводы, которые вы мне привели не показались мне значимыми. Так что не вижу причин для консенсуса
Переносимость - утопия, поскольку она неприбыльна. Исключения лишь подтверждают это.
Переносимость - утопия, поскольку она неприбыльна. Исключения лишь подтверждают это.Мы резко не согласны с твоим последним утверждением, но спорить не будем, т.к. хотим сразу перейти ко второму предложенному мной варианту =)
Спасибо за беседу =)
P.S. Это не только от меня, но ещё и от .
Спасибо за беседу =)
P.S. Это не только от меня, но ещё и от .
> Переносимость - утопия, поскольку она неприбыльна.
Правильно, прибыльнее переписывать проект при каждом удобном случае, и брать за это деньги.
Правильно, прибыльнее переписывать проект при каждом удобном случае, и брать за это деньги.

кстати, добавлю в список приложений, написаных на qt - Opera
все сказаное Пашей и Мэдом подтверждаю.
единственный серезный минус кроссплатформености делает дуальная лицензия
а вообще прежде чем спорить прочитайте http://www.trolltech.com/
все сказаное Пашей и Мэдом подтверждаю.
единственный серезный минус кроссплатформености делает дуальная лицензия
а вообще прежде чем спорить прочитайте http://www.trolltech.com/
кстати, добавлю в список приложений, написаных на qt - Operaэто вроде как лажа
No, only the linux version of Opera uses QT.
Also, from version 7, very little of QT is used. The earlier versions of Opera for linux had their entire UI built with QT, but now as little as possible of QT is put to use. For example, the menus are QT, but things like window contents, dialogs, buttons etc are built using Opera's own crossplatform UI engine called Quick.
If it was easily possible, Opera would most likely stop using QT completely, but some services that it offers (like easier printing) is a daunting task to reimplement so Opera still links with QT.
вот я тоже так думал, поэтому и не стал писать Opera.
Оставить комментарий
germafrodita
Какая сейчас самая простая и удобная среда для написания GUI?Платформа windows, в итоге хочется exe'шник, максимально переносимый, но если это будет что-то типа .нет, то тоже не страшно. Главное, чтобы просто было.
Я когда-то давно писал на winapi и mfc, но сейчас, наверное, это уже совсем не актуально?