С чего начать Java GUI Framework?

Я довольно новичок в Java.

У меня есть инструмент, написанный на C#, который я хочу перенести на Java.

Я использую Eclipse и думал начать с WindowBuilder.

Однако меня довольно смущает разнообразие вариантов (GWT, SWT, Swing), и чем больше я гуглю, тем больше путаюсь.

Мне нужен чистый графический интерфейс, ничего слишком сложного, и я хотел бы работать с самой простой структурой, желательно той, которая максимально похожа на стиль C#.

Что вы можете порекомендовать мне?

5 ответов

Я должен сказать, что самой "простой" (то есть самой документированной и самой старой) платформой (из трех) явно является Swing.

Ознакомьтесь с руководствами по Oracle Swing.

При использовании Swing следует помнить о некоторых вещах (например, он называется "не ориентированным на многопотоковое исполнение", но, например, посмотрите этот поток), но в целом я бы рекомендовал его в качестве отправной точки для разработки графического интерфейса в Java.

SWT (Standard Widget Toolkit) изначально был разработан для Eclipse, а GWT (Google Web Toolkit) используется для веб-приложений.

Попробуйте Java Qt, это довольно круто с C++

Я думаю, что свинг довольно прост, поэтому я бы начал с свинга

Лучший способ начать, если вы пришли из C#, это установить IDE Netbeans. В нем есть все виды мастера для создания новых форм, и у вас есть высококачественный визуальный редактор, похожий на тот, что в Visual Studio.

После этого вы можете редактировать "код позади", чтобы использовать его для программного управления компонентами. Я полагаю, что Eclipse тоже может это сделать, но, на мой взгляд, Netbeans очень стабилен и поставляется со всем, работающим по умолчанию, без потерь времени при настройке или установке плагинов...

Также, если вам нужна сложная среда стыковки окон, она также интегрирована в Netbeans, и у вас есть мастер для создания "Rich Client Plateform Application":

Как и в Eclipse RCP, он опирается на ядро платформы Netbeans с удаленным плагином IDE. И у него есть интересные функции, такие как создание кроссплатформенного установщика и наличие плагинов внутри вашего приложения...

Удачи,

Renaud

Я довольно широко использовал Swing и GWT. Как уже упоминалось, Swing - хороший выбор для автономного Java-приложения. Я не могу высказать свое мнение о Swing против SWT, потому что я никогда не использовал SWT. Но сколько приложений в настоящее время автономно? Не так много.

Если вы хотите, чтобы к вашему приложению обращались из браузера, вы, вероятно, захотите использовать пользовательский интерфейс на основе JavaScript. Существует много основанных на javascript средах пользовательского интерфейса, например, YUI, Dojo, Prototype, JQuery и т. Д. Что использовать? Если вам нравится программирование на Javascript (не просто овладеть языком, кстати), вы можете использовать одну или несколько из этих платформ. Тем не менее, если вы новичок в Java и не знаете javascript, GWT может быть очень хорошим выбором, так как он, как правило, устраняет необходимость знать javascript (вы пишете весь свой код на Java, и компилятор генерирует для вас высоко оптимизированный javascript, и почти всегда сглаживает все различия между браузерами - это большое дело). Я использую GWT уже больше года, и я очень рекомендую его. Он может использоваться с движком приложений Google или с любой другой серверной технологией. У меня был бы один вопрос: можно ли эффективно использовать GWT для автономного приложения? Я бы предположил, что есть способы сделать это, но я не исследовал это. Если это так, я бы также склонялся к использованию GWT для отдельного приложения, потому что тогда ваш код может быть повторно использован для веб-интерфейса, если это автономное приложение в конечном итоге станет веб-активированным.

Другие вопросы по тегам