



Согласно Википедии, явного победителя нет (хотя вы можете отредактировать это, если хотите). Неизбежно, вы можете написать тесты, которые будут показывать один быстрее, чем другой. Swing имеет больше свободы для оптимизации со стороны Java. SWT позволяет проводить больше оптимизаций в оконной системе.
Вероятно, большее влияние на производительность окажет поведение вашего приложения. Сосредоточьтесь на том, чтобы ваш код был чистым (и при необходимости сделайте небольшое профилирование).
Если это так, то разве Swing не является победителем, поскольку он наиболее способен имитировать тему ОС?
Конечно нет! SWT использует собственные виджеты, поэтому вы не сможете лучше себя вести с Swing.
Я считаю, что Swing лучше справляется с собственными виджетами. Ему не нужно заниматься исправлением собственных API-интерфейсов. Где Swing терпит неудачу, так это там, где у вас есть подключаемые движки, как в Linux.
Хорошо, Том, Википедия была исправлена по твоей просьбе. en.wikipedia.org/w/…;)
Посмотрим, на сколько хватит :)
на протяжении многих лет существует больше приложений, написанных с использованием Swing, чем SWT. Но удобство использования SWT в Windows превосходит Swing. Но есть исключения (http://www.amazon.com/Rich-Client-Programming-Plugging-NetBeans/dp/0132354802).
Существует более широкое сообщество приложений RCP, разработанных с использованием SWT. Хотя приложения RCP, использующие Netbeans, НЕ такие большие, это очень важно.
С выходом Java 6 UPDATE 10 производительность приложений Swing должна быть довольно хорошей. Тем не менее, это улучшение производительности может относиться и к приложениям SWT.
BR,
~ А
Несколько лет назад Swing был медленным, поэтому SWT был разработан для выполнения собственных вызовов API в системах. Однако производительность Swing значительно улучшилась, и это уже не так. SWT нестандартен, в то время как Swing официально является частью спецификации Java. JavaFX также будет построен на основе Swing. Если ваша работа не требует написания плагинов для Eclipse, я бы использовал Swing.
Чтобы увидеть действительно хорошее приложение, разработанное на Swing, взгляните на Java IDE Jetbrain. Вы можете попробовать это в течение 30 дней.
http://www.jetbrains.com/idea/
Конечно, Netbeans от Sun - это тоже чистое приложение Swing, и оно бесплатное.
Нет приложения медленного качания. Просто плохо написано. То же относится и к SWT. Большинство приложений лучше реагируют из-за архитектуры ядра Eclipse. До J6 было несколько проблем с серыми окнами во время периодов отсутствия ответа, но это вполне решалось с использованием подхода с полной двойной буферизацией в свинговых PLAF. Нет лучшего UI-фреймворка. Есть только лучше написанная программа, которая должным образом использует многопоточность, чтобы избежать зависания пользовательского интерфейса. Лично я предпочитаю Swing :)
Конечно, есть приложения с медленным свингом; Я использовал несколько. Я также использовал несколько медленных SWT-приложений.
«быстрее» - это субъективно. Оба могут быстро бегать, но проще сделать что-нибудь глупое, чтобы выстрелить себе в ногу с помощью Swing и сделать его Чувствовать медленным.
Тем не менее, я считаю, что с Swing легче работать на уровне кода, чем с SWT.
Сегодня обе платформы работают быстро. Предлагаю проверить эти критерии:
Технологические решения в отношении инструментария виджетов кажутся мне довольно тонким леденцом. Когда дело доходит до фреймворка приложения, вам придется проделать значительную работу, и IMHO гораздо важнее. Я считаю, что единственный аргумент в пользу SWT - это его родной L&F. С другой стороны, большинство пользовательских интерфейсов в настоящее время склонны к неродному L&F. Вы четко видите это в тенденции приложений Eclipse RCP к использованию среды форм, которая рисует настраиваемые градиенты и разделы и не является собственным интерфейсом в любом случае (то же самое относится к e4, проекту разработки eclipse v4). Подводя итог, если в вашем проекте есть опция RCP, я бы использовал Eclipse RCP (то есть SWT). Полнота, живость и темп этой платформы непревзойденны. Если RCP не вариант, Spring RCP мне кажется довольно убедительным (который основан на Swing).
возможный дубликат Настольное приложение Java: SWT против Swing