VCL, MFC, wxWidgets, Swing, Qt, WinForms etc.
От: SteMage Россия  
Дата: 07.12.05 08:34
Оценка: 1 (1)
В теме http://www.rsdn.ru/Forum/Message.aspx?mid=1504479
Автор: Orifiel
Дата: 24.11.05
уже вроде бы началось обсуждение данной темы. Хотелось бы обсудить нынешнее состояние дел в области разработки UI для десктоп систем. Какие есть библиотеки, плюсы и минусы и когда и при каких условиях стоит выбирать то или иное решение. Интересует несколько вопросов, которые как мне кажется интересуют каждого. Разделим приложения условно на 4 части. Простенькие утилитки и достаточно простое Shareware — 1. Shareware среднего уровня типа (SQL Navigator, XML Spy) с возможностью в дальнейшем существенно вырасти в размере — 2. Систему среднего уровня типа Кадры и Бухгалтерия для фирмы до 200 человек (условно) — 3. И Enterprise Системы, когда может быть несколько тысяч пользователей — 4. Хотелось бы услышать мнения людей по данному поводу. Очень хотелось бы, чтобы люди осветили несколько моментов: плюсы и минусы решения, переносимость, время освоения инструмента опытным и неопытным программистом, возможность использовать часть данного решения в разработке решения для интернет сайта компании или реализации работы с приложением, сложность интеграции с другими продуктами в том числе и ввиде встраивания, как компонента в другое приложение, стоимость покупки данного решения и стоимость эксплуатации результата работы. Вроде ничего актуального не забыл.

Сразу внесу свое скромное мнение по этому поводу.

VCL/VCL.NET
1 не пригоден. Мешает размер библиотеке да и стоимость великовата.
2 вполне подходящее решение. Стоимость довольно высока, но размер библиотеки уже не имеет большого значения.
3 возможно одно из лучших. Есть возможность использовать часть решения для Weba, но стоимость хостинга будет очень высокой. Есть неплохие возможности интеграции с другими приложениями.
4 сносное. Придется фактически писать аналог J2EE серверов в некотором ужатом виде. Остальные плюсы в силе.
Кросплатформенность практически отсутствует.
Освоение не опытным программистом 1,5 года опытным 0,5 года. Имеется в виду умение делать не тривиальные операции.

WinForms
1 не пригоден. Мешает размер библиотеки. Плюс проблемы с поддержкой будут.
2 вполне подходящее решение. Размер библиотеки уже не имеет большого значения. Есть много дополнительных возможностей. И их количество по логике должно только расти.
3 вполне подходящее решение. Очень хорошие возможности интеграции с другими приложениями.
4 вполне подходящее решение. Однако платформа .NET пока еще не достаточно развита для таких решений ИМХО.
Кросплатформенность сейчас практически отсутсвует в будущем возможны варианты.
Освоение не опытным программистом 1,5 года опытным 0,5 года. Имеется в виду умение делать не тривиальные операции.

Swing
1 не пригоден.
2 ни могу ничего сказать.
3 ни могу ничего сказать.
4 Видимо вполне пригоден.
Кросплатформенность средняя, поскольку если интерфейс хороший, то под Mac OS он не должен выглядеть как под Windows ИМХО (очень глубокое).
Немного поработал, то что увидел вызвало тихий ужас. ПО сравнению с VCL и WinForms тихий ужас.
Re: VCL, MFC, wxWidgets, Swing, Qt, WinForms etc.
От: reductor  
Дата: 07.12.05 08:47
Оценка:
Здравствуйте, SteMage, Вы писали:

SM>В теме http://www.rsdn.ru/Forum/Message.aspx?mid=1504479
Автор: Orifiel
Дата: 24.11.05
уже вроде бы началось обсуждение данной темы. Хотелось бы обсудить нынешнее состояние дел в области разработки UI для десктоп систем. Какие есть библиотеки, плюсы и минусы и когда и при каких условиях стоит выбирать то или иное решение. Интересует несколько вопросов, которые как мне кажется интересуют каждого. Разделим приложения условно на 4 части. Простенькие утилитки и достаточно простое Shareware — 1. Shareware среднего уровня типа (SQL Navigator, XML Spy) с возможностью в дальнейшем существенно вырасти в размере — 2. Систему среднего уровня типа Кадры и Бухгалтерия для фирмы до 200 человек (условно) — 3. И Enterprise Системы, когда может быть несколько тысяч пользователей — 4. Хотелось бы услышать мнения людей по данному поводу. Очень хотелось бы, чтобы люди осветили несколько моментов: плюсы и минусы решения, переносимость, время освоения инструмента опытным и неопытным программистом, возможность использовать часть данного решения в разработке решения для интернет сайта компании или реализации работы с приложением, сложность интеграции с другими продуктами в том числе и ввиде встраивания, как компонента в другое приложение, стоимость покупки данного решения и стоимость эксплуатации результата работы. Вроде ничего актуального не забыл.


А че никто никогда XPToolkit не вспоминает?
По-моему, замечательная вещь. И по переносимости и по простоте и по расширяемости.
И по возможностям :)
Правда скорость конечно не ахти.

http://www.mozilla.org/xpfe/
Re: VCL, MFC, wxWidgets, Swing, Qt, WinForms etc.
От: minorlogic Украина  
Дата: 07.12.05 09:08
Оценка: 1 (1)
GTK забыли.
Ищу работу, 3D, SLAM, computer graphics/vision.
Re: VCL, MFC, wxWidgets, Swing, Qt, WinForms etc.
От: 4wd Россия  
Дата: 07.12.05 09:31
Оценка:
VCL/VCL.NET
Вряд ли вообще на сегодня решения Borland могут рассматриваться как серьезная альтернатива решениям Microsoft. Плюсом является относительная простота, что имеет значение при разработке только небольших программ. Отсутствие переносимости VCL и явная кривизна VSL.NET — минусы, которые нельзя не учитывать при разработке сколько-нибуть сложных систем. О стоимости не говорю, т.к. не верю, что в России кто-то платит за средства разработки.

WinForms
Очень простое решение, переносимость в будущем будет только расти вместе с проектом mono, правда на сегодня явно низкая. Что касается размеров системы, ИМХО это значения не имеет.

Swing
В десктоп-приложениях редкость. Сложно и неэффективно.

GTK/GTK#
Это просто страшно. Врагу не пожелаю на этом писать интерфейс.
Re: VCL, MFC, wxWidgets, Swing, Qt, WinForms etc.
От: Cyberax Марс  
Дата: 07.12.05 09:54
Оценка:
SteMage wrote:

> Swing

> Кросплатформенность средняя, поскольку если интерфейс хороший, то под
> Mac OS он не должен выглядеть как под Windows ИМХО (очень глубокое).

Нет, под MacOS он будет выглядеть как MacOS — там специальная тема,
написаная самими яблочниками.

> Немного поработал, то что увидел вызвало тихий ужас. ПО сравнению с

> VCL и WinForms тихий ужас.

Hint: посмотри IDEA.

--
С уважением,
Alex Besogonov (alexy@izh.com)
Posted via RSDN NNTP Server 2.0
Sapienti sat!
Re[2]: VCL, MFC, wxWidgets, Swing, Qt, WinForms etc.
От: Cyberax Марс  
Дата: 07.12.05 10:06
Оценка: 8 (2)
reductor wrote:

> А че никто никогда XPToolkit не вспоминает?


Он пока в глубоком сне (хотя начинает шевелиться) — лучше брать FireFox
или Mozilla, там _гораздо_ более новые версии компонентов.

> По-моему, замечательная вещь. И по переносимости и по простоте и по

> расширяемости.
> И по возможностям
> Правда скорость конечно не ахти.

У меня коллега делает на нем следующую версию программы TaxCalc
(http://taxcalc.co.uk). В принципе, сделано очень неплохо.

Но есть несколько "но": скорость работы не очень высока, а требования по
памяти наоборот. Требует брать с собой несколько мегабайт Mozilla SDK,
кроме того версии XUL'а в FireFox и Mozilla немного различаются.

Еще большой проблемой является слишком большая абстрагированность XBL и
XUL, ухудшеная отсутствием нормальной документации. Поэтому сначала
"врубиться" в то как все устроено будет достаточно сложно.

В качестве практического совета пишущим реальные приложения на XUL —
скачайте http://www.activestate.com/Products/Komodo/ . Она написана на
XUL и там можно посмотреть исходники части на JavaScript+XUL.

--
С уважением,
Alex Besogonov (alexy@izh.com)
Posted via RSDN NNTP Server 2.0
Sapienti sat!
Re[3]: VCL, MFC, wxWidgets, Swing, Qt, WinForms etc.
От: reductor  
Дата: 07.12.05 10:12
Оценка: +1
Здравствуйте, Cyberax, Вы писали:

C>reductor wrote:


>> А че никто никогда XPToolkit не вспоминает?


C>Он пока в глубоком сне (хотя начинает шевелиться) — лучше брать FireFox

C>или Mozilla, там _гораздо_ более новые версии компонентов.

>> По-моему, замечательная вещь. И по переносимости и по простоте и по

>> расширяемости.
>> И по возможностям :)
>> Правда скорость конечно не ахти.

C>У меня коллега делает на нем следующую версию программы TaxCalc

C>(http://taxcalc.co.uk). В принципе, сделано очень неплохо.

C>Но есть несколько "но": скорость работы не очень высока, а требования по

C>памяти наоборот. Требует брать с собой несколько мегабайт Mozilla SDK,
C>кроме того версии XUL'а в FireFox и Mozilla немного различаются.

Они там сейчас вроде слили все в один репозиторий, хотя там у них действительно черт ногу сломит
Но вообще для stanalone-приложений лучше брать XUL Runner: http://wiki.mozilla.org/XUL:Xul_Runner

ну или написать свой небольшой раннер и брать остальное из репозитория

C>Еще большой проблемой является слишком большая абстрагированность XBL и

C>XUL, ухудшеная отсутствием нормальной документации. Поэтому сначала
C>"врубиться" в то как все устроено будет достаточно сложно.

Да, я помню как сам врубался — с документацией там не фонтан, пришлось за некоторыми вещами в исходники лазить.
Все обматерил. Но результат того стоил.

C>В качестве практического совета пишущим реальные приложения на XUL —

C>скачайте http://www.activestate.com/Products/Komodo/ . Она написана на
C>XUL и там можно посмотреть исходники части на JavaScript+XUL.

Да. Только комодо написан на Python+XUL
И где-то валялись фирменный ActiveState'овские байндинги для питона к XPCOM.
Re[3]: VCL, MFC, wxWidgets, Swing, Qt, WinForms etc.
От: SteMage Россия  
Дата: 07.12.05 12:07
Оценка:
Здравствуйте, Cyberax, Вы писали:

C>reductor wrote:


>> А че никто никогда XPToolkit не вспоминает?


C>Он пока в глубоком сне (хотя начинает шевелиться) — лучше брать FireFox

C>или Mozilla, там _гораздо_ более новые версии компонентов.

>> По-моему, замечательная вещь. И по переносимости и по простоте и по

>> расширяемости.
>> И по возможностям
>> Правда скорость конечно не ахти.

C>У меня коллега делает на нем следующую версию программы TaxCalc

C>(http://taxcalc.co.uk). В принципе, сделано очень неплохо.

C>Но есть несколько "но": скорость работы не очень высока, а требования по

C>памяти наоборот. Требует брать с собой несколько мегабайт Mozilla SDK,
C>кроме того версии XUL'а в FireFox и Mozilla немного различаются.

C>Еще большой проблемой является слишком большая абстрагированность XBL и

C>XUL, ухудшеная отсутствием нормальной документации. Поэтому сначала
C>"врубиться" в то как все устроено будет достаточно сложно.

C>В качестве практического совета пишущим реальные приложения на XUL —

C>скачайте http://www.activestate.com/Products/Komodo/ . Она написана на
C>XUL и там можно посмотреть исходники части на JavaScript+XUL.

C>--

C>С уважением,
C> Alex Besogonov (alexy@izh.com)


Я в курсе, что IDEA написана с использованием Swing. То есть для систем класса Enterprice Swing подходит .
Или имеете в виду, что IDEA настолько лучше JBuilder'a или Eclipse, что использовать там Swing просто радость? Но ведь интересны не только системы класса Enterprice.
Re[4]: VCL, MFC, wxWidgets, Swing, Qt, WinForms etc.
От: Cyberax Марс  
Дата: 07.12.05 12:37
Оценка:
SteMage wrote:

> Я в курсе, что IDEA написана с использованием Swing. То есть для

> систем класса Enterprice Swing подходит .
> Или имеете в виду, что IDEA настолько лучше JBuilder'a или Eclipse,
> что использовать там Swing просто радость?

JBuilder — это вообще отстой. В Eclipse'е используется свой графический
тулкит — SWT, отношения к Swing не имеющий. _Использовать_ хорошие
Swing'овые приложения вполне удобно.

--
С уважением,
Alex Besogonov (alexy@izh.com)
Posted via RSDN NNTP Server 2.0
Sapienti sat!
Re[5]: VCL, MFC, wxWidgets, Swing, Qt, WinForms etc.
От: SteMage Россия  
Дата: 07.12.05 12:45
Оценка:
Здравствуйте, Cyberax, Вы писали:

C>JBuilder — это вообще отстой. В Eclipse'е используется свой графический

C>тулкит — SWT, отношения к Swing не имеющий. _Использовать_ хорошие
C>Swing'овые приложения вполне удобно.

Не знаю а мне JBuilder нравится . То есть все таки суть в том, что IDEA очень хорошая среда разработки. То что Swing подходит для приложений Enterprice уровня я понял. Но ведь помимо удобно пользовать результат работы, есть еще стоимость решения, скорость разработки и т.д. Т.е. я и на WinApi лет за 5 напишу супер пупер прогу, которой если я хоть немного знаю Юзабилити будет удобно пользоваться. Вот только с использованием VCL я напишу ее, за 6 месяцев. То есть посчитать время освоения и п.р. То ведь, тогда выбор очевидно будет не в пользу WinApi.
Re[2]: VCL, MFC, wxWidgets, Swing, Qt, WinForms etc.
От: _wqwa США  
Дата: 08.12.05 14:16
Оценка:
Здравствуйте, 4wd, Вы писали:

4wd>GTK/GTK#

4wd>Это просто страшно. Врагу не пожелаю на этом писать интерфейс.
На чем основано мнение?
Про GTK# не скажу, не использовал,
А про GTK могу сказать следующее: библиотека продумана, легка в освоении (сравнительно документирована ну... есть пробелы, правда), легка в использовании, довольно толстая по размеру (неск. МБ), кроссплатформенна, без оговорок.
Неужели?!
Кто здесь?!
Re[2]: VCL, MFC, wxWidgets, Swing, Qt, WinForms etc.
От: reductor  
Дата: 08.12.05 14:25
Оценка:
Здравствуйте, 4wd, Вы писали:

4wd>GTK/GTK#

4wd>Это просто страшно. Врагу не пожелаю на этом писать интерфейс.


У GTK при всей его ужасности, отвратительной портабельности и прочем, есть одно большое достоинство — оно написано на Си.
Значительно упрощает подвязывание к другим языкам.
Re[5]: VCL, MFC, wxWidgets, Swing, Qt, WinForms etc.
От: SteMage Россия  
Дата: 09.12.05 06:51
Оценка:
Здравствуйте, Cyberax, Вы писали:

C>SteMage wrote:


>> Я в курсе, что IDEA написана с использованием Swing. То есть для

>> систем класса Enterprice Swing подходит .
>> Или имеете в виду, что IDEA настолько лучше JBuilder'a или Eclipse,
>> что использовать там Swing просто радость?

C>JBuilder — это вообще отстой. В Eclipse'е используется свой графический

C>тулкит — SWT, отношения к Swing не имеющий. _Использовать_ хорошие
C>Swing'овые приложения вполне удобно.

C>--

C>С уважением,
C> Alex Besogonov (alexy@izh.com)

Посмотрел IDEA 5.0. ИМХО работа со Swing реализована хуже, чем JBuilder. А в остальном в общем-то по лучше или так же. Однако тем кто привык работать в IDEA JBuilder скорее всего будет не нравится JBuilder уж очень по разному там делаются некоторые вещи, что с непривычки сильно отнимает время и достает. Так что пока ничего кроме пригодности для Enterprice систем о Swinge толком сказать не могу.
Re: VCL, MFC, wxWidgets, Swing, Qt, WinForms etc.
От: EXO Россия http://www.az.inural.ru
Дата: 09.12.05 07:59
Оценка:
Попробую ответить по шаблону

Здравствуйте, SteMage, Вы писали:
SM> 1 Простенькие утилитки и достаточно простое Shareware — 1.

SM> 2 Shareware среднего уровня типа (SQL Navigator, XML Spy) с возможностью в дальнейшем существенно вырасти в размере — 2.


SM> 3 Систему среднего уровня типа Кадры и Бухгалтерия для фирмы до 200 человек (условно) — 3.


SM> 4 И Enterprise Системы, когда может быть несколько тысяч пользователей — 4.



SM>Сразу внесу свое скромное мнение по этому поводу.


MFC
1 Ограниченно пригоден. Есть проблемы с совместимостью dll и сложностью разработки.
2 Ограниченно пригоден.
3 Не пригоден. Слишком дорогая разработка.
4 Ограниченно пригоден. Проблемы с кроссплатформенностью.


wxWidgets
1. Ограниченно пригоден. Тяжеловат.
2. Ограниченно пригоден. Вполне нормальное решение. Но если писать проект на C++ получится сложно, а на скриптовых языках могут быть проблемы с защитой от взлома.
3. Пригоден. Особенно в комплекте со скриптовыми языками. (Защита там на сервере обычно делается)
4. Ограниченно пригоден. Большой размер дистрибутива может быть критичен.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.