2009-09-08 2 views
25

Я пишу приложения на Java, и я ищу способы ускорить программирование графического интерфейса. Структуры привязки помогают, но конкретное приложение, над которым я сейчас работаю, не будет слишком сильно выигрывать от этого (он не отображает много данных, просто много способов манипулировать данными). Я чувствую, что слишком много времени уделяю написанию кода GUI котельной, как добавление слушателей действий, выкладка компонентов и т. Д. Хотя я не разработчик C#, я слышал, что XAML работает очень хорошо и видел JAXX, который похоже, похож на XAML. Я также смотрю на Groovy Swing Builder. Просто кажется, что существует так много вариантов, может быть, даже слишком много.Альтернативы Java GUI

Может ли кто-нибудь поделиться своими мыслями об альтернативах написанию простого кода Java UI?

Кроме того, мне было бы интересно обсудить, как перенести существующий код Java Swing, чтобы использовать некоторые из этих параметров.

спасибо, Джефф

+5

Я избегал писать приложения Java GUI, когда это возможно из-за этого.Мне также интересны предложения. –

+2

У меня было такое же чувство, пока я не попытаюсь использовать создателя графического интерфейса Netbeans. Кроме того, игра с JavaFX немного, и я думаю, что это действительно может ускорить работу графического интерфейса (но у него не было много времени играть с ним). – NawaMan

+0

Я рассмотрел использование GUI-создателей, но, по-моему, я просто чувствую, что слишком много генерируется GUI-код (похоже на его ручную запись). Правда, создатель GUI помогает ускорить процесс, но он не устраняет код плиты котла, который имеет тенденцию появляться повсюду (я знаю, что под капотом такие вещи, как XAML, все еще генерируют код во время выполнения, но, по крайней мере, t должен поддерживать код). –

ответ

3

Griffon - это структура Groovy для создания приложений для настольных приложений Java. По общему признанию, если вы еще не знаете Groovy, вам нужно будет изучить (некоторые части) новый язык, чтобы эффективно использовать его, но повышенная производительность стоит того, на мой взгляд.

+0

Согласен. Когда я написал этот вопрос, я все еще был немного новичком, но писал его в течение последних нескольких лет. Сейчас Griffon немного более зрелый и кажется разумной основой для использования в настольных средах. –

+1

Стоит отметить, что вы можете также создать приложение Griffon с чистой Java, см. Http://griffon.codehaus.org/guide/latest/guide/tips.html#nonGroovyArtifacts для справки. – aalmiray

1

Я не специалист в программировании GUI, но вы пробовали использовать NetBeans as a platform для вашего приложения?

+0

Кажется, это для больших приложений. Это может быть контрпродуктивным. Смотрите это «введение»: http://netbeans.dzone.com/videos/free-netbeans-platform-crash – OscarRyz

5

Я рекомендую использовать Clojure Это позволяет быстро писать графические интерфейсы Java без шаблона.

3

Вы должны обязательно использовать IDE с построителем GUI.

IntelliJ IDEA и NetBeans имеют очень хорошие графические интерфейсы, они позволяют автоматически связывать объекты и значительно уменьшать объем усилий, необходимых для создания графического интерфейса, а не делать это полностью вручную.

+0

Как поклонник разработчиков пользовательского интерфейса, я чувствую, что должен добавить: если вы используете один, не бросайте хорошие стандарты окна. Когда вы добавляете виджет, всегда называйте его хорошо и избегайте мусора двойного щелчка-автоматического добавления-прослушивателя. –

7

Макеты:

Для макетов, я отказался от JDK макета менеджеров в пользу JGoodies Forms инструмента. Я нахожу его гораздо более эффективным. Он читается на более высоком уровне и значительно уменьшает количество кода, связанного с макетами.

+0

Согласен. Я тоже использую это. Определенно помогает. –

+0

DesignGridLayout также может многое помочь в аспектах макета, если в вашем пользовательском интерфейсе есть только формы. – jfpoilpret

+0

+1 для JGoodies Forms –

3

Я согласен с другими, что привязка к NetBeans кажется опасной - особенно при работе с другими разработчиками. Я использовал (коммерческий) Swing Designer (с помощью «экземпляров») плагин для Eclipse с довольно большим успехом - мне нравится в этом, так это то, что он совершает кругосветные поездки, генерируя код, который вы можете свободно изменять вручную. Не идеальна, но хорошая экономия времени.

Но самая большая разница в моем программировании Swing заключалась в обнаружении лучших менеджеров макетов. Я пошел из FormLayout (хорошо), в TableLayout (лучше), но теперь я не использую ничего, кроме MiGLayout (невероятно).

10

Как насчет использования MiGLayout?

Это чрезвычайно просто изучить и использовать. Я настоятельно рекомендую его вам. В моем последнем проекте это помогло мне сократить много времени для реализации большого количества графического интерфейса.

+0

Я проверю это. Благодарю. –

+0

MigLayout сделал разработку очень простой и простой для меня. – binarycreations

2

Вы можете попробовать ZK (лучшая открытая Java-платформа для создания корпоративных веб-приложений и мобильных приложений). http://www.zkoss.org/

Смежные вопросы