Será que estou estudando da forma correta?

15 respostas
cgomesnet

Rapaz, já passei da metade do livro Use a Cabeça: Java e por enquanto acho que tem algo de errado na forma como estou estudando.

O primeiro ponto é que leio os textos, fica tudo muito claro durante a leitura, porém onde aplicar aquilo tudo? Na parte do swing, não da pra desenhar telas em código, jamais ficariam perfeitamente alinhadas e do jeito que deve ficar como quando você usa uma boa IDE como o NetBeans.

Minha principal preocupação é a questão da orientação a objetos, eu estou fazendo telas no netbeans porém tenho que duplica-las através do crtl+c e ctrl+v para utilizar pq não tem como criar uma variavel de instancia para todos aqueles componentes dentro do frame e reutilizar o código certo??

Tão me entendendo ou compliquei??? Java é assim também na parte web ou vc criar interfaces web é mais simples que o swing???

15 Respostas

ateubh

isso não é culpa do java… todas as linguagens são assim :wink:

afdestro

claro que é possível deixar perfeitamente alinhado usando uma ide que não seja netbeans… uso o eclipse e nao tenho problema nenhum…
acho q vc nao tah sabendo aplicar a orientação a objeto… me pareceu q vc tah programando em java como se fosse um delphi…
web eu acho mais facil sim… pois eh soh html com java no meio basicamente…

cassio

Amigo, se você deixasse de lado o NetBeans (pelo menos por um tempo) e aprendesse Swing escrevendo todo o código, veria que apenas com o bloco de notas + console você consegue criar interface gráfica com todo tipo de formatação que uma IDE lhe proporciona, só que a diferença é que vc realmente irá aprender o que está fazendo.
Sou totalmente contra o uso de IDEs para quem está aprendendo a linguagem. Na verdade acho que no início vc deveria até mesmo esquecer o Swing e as GUIs e focar mais em OO e nas peculiaridades do Java…

xgucax

Hoje em dia a criação de interface gráfica para desktop e para web está muito parecida para mim. Não digo na codificação ou utilização de linguagens, mas na idéia de estruturação.
O que seria um gridbaglayout a não ser uma table html cheia de definições de espaçamento, alinhamento e margens? JtextField é um input text!..
Com relação à programação de interfaces gráficas por meio de IDE, eu discordo pois acho que a API é bastante clara e estável para sabermos exatamente aonde estamos colocando cada componente. Com certeza o processo mais produtivo é através de uma IDE, mas com isso surgem outras impedâncias como por exemplo o código genérico e pouco intelegível criado.
Com relação à variável de instãncia, não sei qual é seu problema. Mas veja se o uso de padrões de projeto não lhe auxiliam nisso, afinal o bonito da Orientação à Objetos é a cooperação entre os objetos :wink:
E por último, EU acho mais difícil implementar a interface no ambiente Web pois há recursos muito limitados. Há a maldita despadronização CROSS-BROWSERS e a arquitetura de sistemas web (com requests e responses) as vezes nos atrapalham um pouco.

Dieval_Guizelini

Eu acho que você não tem que se preocupar com o método de estudo que você está utilizando… se esta estudando já está a meio caminho para melhorar…

Com relação ao uso das IDE eu discordo da maioria acima, o uso de IDE assegura produtividade e quanto a modificar determinados elementos no NetBeans é possível sim. normalmente o método construtor invoca o init… e depois você pode redefinir ou modificar qualquer elemento ou usar o panel de propriedades para isso.

O próprio Java tende a se “reinventar” nas questões de baixa produtividade, veja por exemplo o Java 6 com relação a console:

Console console = System.console(); String name = console.readLine("Informe o seu nome: ");

Quando comecei em Java este recurso seria muito bem vindo (hehehe).

Com relação ao layout de tela, acho que você deve dar mais atenção as propriedades e a API da swing nestes quesitos porque eles podem ajudar em muito. A alternativa mínima sempre bem vindo é o jgoodies (http://www.jgoodies.com/).

Com relação ao aspecto NetBenas x Eclipse, o Eclipse é melhor em vários aspectos, mas está longe de ser perfeito e de ser o melhor para todas as aplicações. O editor gráfico do NetBenas supera em muito o Eclipse e o editor EE do 5.5 (que tem um monte de bug) mostra um caminho sem paralelo ainda no Eclipse… o positivo nesta história é que a competição está fazendo com que as duas ferramentas melhorem… basta acompanha a evolução nos últimos dois anos para ver.

Boa sorte com sua interface.

:lol:

P

Concordo com a maioria aqui, e ainda digo mais tenho mais facilidade em construir interfaces graficas codificando do que usando uma visual editor.

Recomendo como os outros fizeram a você não começar a programas já usando IDEs, ou se usar apenas o básico deles, autocomplete, compilação automatica.

Entender a arquitetura do swing é um grande passo p/ aprender java e noções muito importantes de OO, e se você conseguir já vai se sentir muito mais a vontade com a linguagem.

O netbeans te prende a um código travado dependente de plataforma IDe e embaralhado não vejo vantagem nenhuma em usar.

cgomesnet

Realmente, como foi dito acima… eu estou programando igualzinho no delphi/VB :frowning:

Quando chegar em casa eu irei postar uma screenshot da tela de cadastro de fornecedores do meu sistema e mostrarei pra vocês e vcs me digam se é possivel fazer aquilo através de bloco de notas.

Meu, sem chances, no netbeans foi dificil pra caramba por conta dos borders, imagina no braço…, mas a questão não é a minha limitação mas sim se da pra fazer OO usando a IDE netbeans e arrastando e colando.

Esse é o ponto!!!

Dieval_Guizelini

O uso da swing obriga o uso de OO de qualquer forma, a questão que você deve estar colocando é:

Na classe da minha janela, o componente que pretendo usar:
É UM ou TEM UM.

se É UM, é possível registrar o seu componente na paleta de componentes do netbean e depois arrastar e usar em outras janelas…

se TEM UM componente padrão da API então é apenas arrastar e usar…

lembre-se que a maior parte dos componentes mais complexos como List, combos, tables e etc separam a implementação da view do modelo e o modelo é você que define e é no modelo que fica os “dados” que estarão disponíveis na interface.

fw

cassio

Cara, na moral… Arrastar e soltar para montar interface gráfica é produtivo, mas tbm deixa o código sujo pra caramba… isso é bom pra quando vc já tem DOMÍNIO sobre todos os aspectos do Swing… caso contrário isso vai te deixar BURRO.

Acho que vc está querendo colocar o carro na frente dos bois… Está querendo fazer GUI sem saber OO…
Posso estar errado, mas é essa a impressão que tenho.

P

cgomesnet:
Realmente, como foi dito acima… eu estou programando igualzinho no delphi/VB :frowning:

Quando chegar em casa eu irei postar uma screenshot da tela de cadastro de fornecedores do meu sistema e mostrarei pra vocês e vcs me digam se é possivel fazer aquilo através de bloco de notas.

Meu, sem chances, no netbeans foi dificil pra caramba por conta dos borders, imagina no braço…, mas a questão não é a minha limitação mas sim se da pra fazer OO usando a IDE netbeans e arrastando e colando.

Esse é o ponto!!!

É claro que a quetão não é sua limitação e sim sua falta de experiencia com OO creio eu.

Sim claro que é possível, pode se levar mais tempo, mas no final o resultado é mais satisfatório.

Ou você acha que todas essas aplicações graficar, vide games e editores gráficos… Você acha que tudo isso é programado usando “drag and drop” e visual editor express ?

Estude mais, pratique mais, você nao tem limitação nenhuma, o problema é que você leu apenas metada de um livro para iniciantes java, é natural você estar cheio de duvidas e incertezas, ate programadores com anos de experiência prática sente dificuldades em relação a OO.

cgomesnet

Olá a todos, como havia dito, aqui está a tela que mencionei… no arrastar e colar já foi um parto, imagina em código (mas é oq eu quero), gostaria de saber se é necessário usar papel marcado os milimetros para desenhar ou regua etc para contar os pixels o.O

cassio

Opa! Dá pra fazer na mão sim poxa!

Dá uma estudada nos layouts disponíveis para os contêiners Swing, com certeza vc vai achar um que te atenda. Na maioria das vezes acabo metendo um layout null nos meus frames, mas isso por falta de paciência. Sei que o mais correto é utilizar os layout managers e tal… Acho que o GridBagLayout faz isso ai pra vc :slight_smile:

herbertins

aprovaitando o topico, alguem sabe alguma apostila que fale tudo sobre o swing. quero estudar, mais jpanel, JLabel, JPanel eu jah sei o basico queria me aprofundar mais.

obs: se for em portugues melhor, pois demoro duas horas para ler uma pagina em ingles heheheh

abs a todos

T

cgomesnet:
Olá a todos, como havia dito, aqui está a tela que mencionei… no arrastar e colar já foi um parto, imagina em código (mas é oq eu quero), gostaria de saber se é necessário usar papel marcado os milimetros para desenhar ou regua etc para contar os pixels o.O

Quando se fala de reaproveitamento de código e formulários, você pode pensar em componentização. Por exemplo, seus campos de entrada (CPF, CNPJ, UF, CEP, telefone, email) que serão usados em N projetos podem ser reaproveitados, mas não via copy & paste.

Você pode derivar uma classe CPFTextField a partir de JFormattedTextField (por exemplo), com os parâmetros adequados (como a máscara e os listeners que implementam a validação) já preenchidos, e pode cadastrar essa classe na palette do NetBeans. Uma vez feito isso, você pode usar essa mesma classe em N projetos.

T

A mesma coisa quanto à barra de botões. Você pode criar um panel, e criar vários métodos que habilitam e desabilitam os botões adequados, e associam listeners ou actions para tratar a navegação no banco de dados.

Criado 13 de dezembro de 2006
Ultima resposta 5 de mar. de 2007
Respostas 15
Participantes 9