Я должен создать приложение GUI в Java. Я просто понял, что у меня есть различные дополнительные способы пойти (SWT, и Swing среди них).
Я уже узнал, что существует много дискуссий о том, какой путь лучше, и я не хочу переходить в глубоко в эти обсуждения (я - новичок).
Я не забочусь обо всех аспектах дилеммы. У меня просто есть перечисленный рев нескольких основных требований:
Исходя из ваших требований, я бы сказал Swing. SWT имеет более специфичный для платформы вид, но Java поставляется со встроенным Swing, нет необходимости возиться с внешними библиотеками, как с SWT, хотя использование Eclipse может сделать это намного проще (я все еще разрабатываю довольно много своих вещей из командная строка к сожалению).
Они оба просты в использовании (ну, легко, когда вы привыкнете к менеджерам компоновки) и будут отлично работать на обеих желаемых платформах, но поскольку единственное отличие, которое вас, кажется, заботит, это "без каких-либо дополнительных уловок , настройки и установки », я бы остановился на Swing.
Это мой совет. Не стесняйтесь принимать, игнорировать или даже называть меня старым болваном. Не обижусь: -)
Я бы предложил использовать библиотеки Java Swing, если вы не знакомы с разработкой Java GUI. Они очень хорошо документированы, и существует множество учебных пособий в режиме онлайн, в том числе на веб-сайте Sun Java ( здесь ).
Разработка графического интерфейса в Java не очень проста, но доступные инструменты постоянно улучшаются. Рекомендуется опробовать среду IDE NetBeans с хорошим визуальным дизайнером для графических компонентов. Я не использовал GUI-дизайнер Eclipse IDE, но я также собираю его хорошее. Вам нужно будет обойти голову вокруг модели MVC, но это должен быть хороший опыт обучения.
Короче говоря, мой голос идет за использование Swing/JFC, особенно если вы новичок в разработке Java GUI.
EDIT - Вы можете легко управлять внешним видом Java APP. Если вы используете независимую платформу (Metal), ваш графический интерфейс будет выглядеть в основном идентично в Windows и Linux. Конечно, приложение Java будет работать в Windows * nux только при наличии поддерживаемого JVM.
-121--3565866-Я считаю, что визуальный редактор перетаскивания Netbeans и предварительно подключенный шаблон приложения Swing Desktop гораздо проще использовать то, что поставляется в комплекте с Eclipse, поэтому я бы предложил это.
Он автоматически создаст исполняемый файл jar и позволит вам создать средство запуска Java Web Start, если вы хотите. И будучи Java, она не зависит от ОС.
Вот ссылка на учебные пособия быстрого запуска .
-121--3565871-Я не могу добавить комментарий, потому что я здесь новый (пожалуйста, измените меня, чтобы я мог прокомментировать), но выбор Swing или SWT зависит от используемой среды IDE.
Если вы используете Eclipse, то оба в порядке.
Если вы используете бесплатный выпуск IntelliJ IDEA, вы предпочитаете использовать Swing, потому что редактор графического интерфейса IDE - "Только Swing".
Я так понимаю, вы используете Eclipse?
Исходя из ваших требований, я рекомендую использовать Swing:
Обратите внимание, что API-интерфейсы похожи, а иногда и идентичны, поэтому изучение одного дает вам преимущество перед другим.
По моему опыту, если вы хотите, чтобы разработка Swing была простой, вам нужно . Если вам нужна хорошая производительность, лучше подойдет SWT.
ПРИМЕЧАНИЕ. В последний раз я занимался разработкой графического интерфейса на Java 4 года назад.
Я бы посоветовал вам использовать библиотеки Swing Java, если вы не знакомы с разработкой графического интерфейса пользователя Java. Они очень хорошо задокументированы, и в Интернете есть множество учебных пособий, в том числе на веб-сайте Sun Java ( здесь ).
Разработка графического интерфейса на Java не очень проста, но доступные инструменты постоянно совершенствуются. Я предлагаю вам попробовать IDE NetBeans, в которой есть хороший визуальный дизайнер для компонентов графического интерфейса. Я не использовал конструктор графического интерфейса Eclipse IDE, но мне кажется, что он хорош. Вам нужно будет разобраться в шаблоне MVC, но это должен быть хороший опыт обучения.
Короче говоря, я голосую за использование Swing / JFC, особенно если вы новичок в разработке графического интерфейса Java.
РЕДАКТИРОВАТЬ - Вы можете очень легко управлять внешним видом Java-приложения. Если вы используете независимый от платформы (Metal) внешний вид, ваш графический интерфейс будет выглядеть практически идентично в Windows и Linux. Конечно, приложение Java будет нормально работать в Windows * nux, если установлена поддерживаемая JVM.
Swing,
SWT работает в Ubuntu, но не так хорошо, как в Windows, по крайней мере, по моему опыту. Основная причина выбора SWT заключается в том, что вы хотите создать свое приложение на платформе Eclipse RCP (где вы получаете стыкуемые представления / редакторы, механизм плагинов, автоматические обновления, роли пользователей, справочный браузер, механизм предпочтений и т. приложение, чтобы иметь безупречный внешний вид.
Я считаю, что визуальный редактор перетаскивания Netbeans и предварительно настроенный шаблон настольного приложения Swing намного проще в использовании, чем то, что поставляется вместе с Eclipse, поэтому я бы предлагаю это.
Он автоматически создаст исполняемый файл jar, а также позволит вам создать средство запуска Java Web Start, если хотите. И будучи Java, он не зависит от ОС.
Я только что выполнил два Годовой проект создания бизнес-приложения, поэтому я явно сосредоточился на удобстве использования и скорости.
В конце концов, мое решение явно привело к SWT по следующим причинам:
Мы очень довольны SWT, но у него есть некоторые недостатки: