Это нормально, если я начну создавать свинговые приложения, используя Netbeans GUI Builder? - PullRequest
4 голосов
/ 03 сентября 2010

Я изучил основы свинга и основы обработки событий из head first java ... Затем я прочитал несколько учебных пособий по разработке приложений свинга с использованием netbeans ...

, и мне понравилось это какмне не нужно заботиться о макетах и ​​прочем ...

Но я прочитал на одном из форумов, что мне следует правильно изучать свинг, а не использовать netbeans напрямую ...

ЭтоСмутил меня немного ....

Пожалуйста, предложите лучший способ освоить разработку приложений Swing ....

заранее спасибо

Ответы [ 4 ]

4 голосов
/ 03 сентября 2010

Ну, я вижу, что я иду вразрез с большинством здесь; -)

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

Создатели графического интерфейса обрабатывают действительно повторяющуюся работу и мешают вам делать самые обычные глупые вещи . Недостатком является то, что тот же подход также не позволит вам делать действительно умные вещи . В конце концов, вы столкнетесь с чем-то, что вы не можете сделать через GUI Builder, и вам нужно будет совать код. Таким образом, вы не можете относиться к генераторам кода как к черным ящикам, где вам не нужно знать, что происходит внутри. Как минимум, вам нужны белые коробки. Пусть строитель GUI делает свою магию, но понимает эту магию и ее ограничения.

Потренируйтесь, создав очень простой графический интерфейс. Пройдите через код и поймите, что он делает. Внесите изменения через конструктор и посмотрите, как изменяется сгенерированный код. Попробуйте изменить код самостоятельно, чтобы подтвердить правильность понимания. *

Если вы чего-то не понимаете, нажмите JavaDocs, Swing Trail или просмотрите Java2S Swing Tutorials .

Если вы все еще застряли, попробуйте добрые люди на Java Ranch или здесь на StackOverflow .

* Netbeans помещает сгенерированный код в защищенные блоки и не позволяет вам редактировать их напрямую. Однако вы можете открыть файл в другом редакторе, чтобы проверить изменения. Кроме того, вы можете многое сделать, чтобы повлиять на генерацию кода, используя вкладку code в окне properties.

0 голосов
/ 03 сентября 2010

Я думаю, что вы ответили сами ... вы хотите освоить разработку приложений Swing ... все, что вы делаете с помощью автогенерации, не зная, почему или как, по моему мнению, не справляется;)

0 голосов
/ 03 сентября 2010

Если вы хотите быть хозяином, то вы должны хотя бы знать, как это делать голыми руками. Более того, это также поможет вам, если вы будете использовать другие наборы инструментов для графического интерфейса (основные принципы набора инструментов для графического интерфейса более или менее одинаковы, imho).

0 голосов
/ 03 сентября 2010

Это зависит от того, что вы видите своей целью.Не существует «идеального» подхода для комфортного использования Java и Swing, он всегда зависит от того, каким должен быть результат.

Большинство предприятий зависят от стабильности и скорости, программистам нужно писать код быстро и стабильно,Если вы пишете сложные интерфейсы вручную, это становится уродливым, когда речь идет о скорости и точности одновременно.Вы никогда не сможете написать более качественный код с точки зрения «он работает», чем это может сделать пользовательский интерфейс NetBeans.Кроме того, никто, вероятно, не взглянет на ваш код, как только приложение будет запущено и запущено.

Если вы хотите познакомиться с Swing только с целью узнать его без более глубокого намерения, я всегдаЯ бы порекомендовал изучать его наизусть без сетевых компонентов, так как вы, вероятно, познакомитесь с большей частью его функциональных возможностей быстрее, чем наоборот.

С одной стороны, если я хочу чему-то научиться, я хочу научиться этомус нуля, так что я бы, вероятно, пошел сам писать свинг-код и, в конце концов, использовать netbeans для его генерации, когда я полностью в состоянии понять, что генерируется.С другой стороны, если мне нужно быстро писать приложения и мне не платят за детали, я бы просто использовал netbeans.

...