Mundo Java de Espectativas

Ola a todos, o objetivo dessa consulta é para que eu possa fazer as coisas de forma eficiente e eficaz eviando fazer perguntas sem foco e objetivo.

Uso o sistema operacional Insigne GNU/Linux baseado em Debian. Meu objetivo é entrar para o mundo de desenvolvimento usando a plataforma JAVA.
Como iniciante, leio muita coisa, pessoas recomendado isso e aquilo, que deixa muito disperso as informações.
Se alguém tem vontade de explicar desde o principio acharam um discípulo.
Estou precisando muito saber, livros que realmente são bons para aprender JAVA, e as ferramentas que realmente vale a pena instalar e trabalhar.
Só preciso saber como buscar as informações, por favor alguem me ajude e abrir meus horisontes. Fico no aguardo de respostas.

Quanto a duvida de se adotar a lingugem java, gostaria de dizer q java é uma linguem q nasceu voltada para grandes aplicações e web(q geralmente são grandes aplicaçõies =P). De um tempo pra cá java tem investido também no desenvolvimento em desktop, mas claramente essa n é a sua vocação, afinal o desempenho de java para aplicações stand alone é sofrível. Se vc deseja fazer programas desktop ou jogos definitivamente java n é a linguagem mais indicada.
Agora q falei os contras falarei dos prós: Java é uma linguagem de alto níovel com o maior acervo de bibliotecas(se n for, n sei quem é, pq a APi do java é abusrdamente grande), essa vantagem é excepcional pq vc tem a sua mão soluções testadas e certificadas, q farão com q vc economize tempo e trabalho reinventando a roda. Java é uma linguagem naturalmente multithread, ou seja ela disponibilizaz naturalmente ferramentas de alto nivel para se desenvolver aplicações concorrentes, um dos maiores trunfos do java reside na portabilidade, pelo fato de java rodar “sobre” uma maquina virtual “JVM” (java virtual machine), ou seja, vc faz um sistema em java e roda em qualuer ambiente com a JVM, em Linux, Windows, Mac, etc. Em outras palavras, ESCREVA UM ÚNICO CODIGO E RODE SEU SISTEMA EM QUALQUER PLATAFORMA!!! (excepcional). Vale lembra q é justamente essa portabilidade do java q torna o desempenho da mesma, em alguns momentos, sofrível. Mas isso acontece mais em aplicações desktop (definitivamente n é a vocaçãod e java).

O ideal era vc falar mais sobre sua experiência, mas ja q n falou vou supor alguns cenários.

Se vc ja tem experiencia em programar em qualquer outra linguagem de programação, n precisa comprar livro, consulte o guj e o bom e velho Google q vc pega legal.

Se vc é iniciante em OO e n sabe nenhuma linguagem, dai sim, aconselho q compre um livro, para aprender a linguagem nd melhor q o Java como programar do Deitel. Ele é mio confuso em alguns conceitos de OO, mas como disse, para aprender a linguagem em si, considero ele o melhor.

Espero ter sio util, detalha mais tua experiencia q posso te dá mais dicas.

Boa caraaa!!! :wink:

Acolon:

Mas então que linguagem vc recomendaria para aplicações desktop? .Net?

[quote=tamanini]Acolon:

Mas então que linguagem vc recomendaria para aplicações desktop? .Net?[/quote]

Para aplicações Desktop eu recomendaria Java também! Existem ferramentas como o SwingBean que dão muita produtividade neste tipo de aplicação! Vale a pena conferir!

http://swingbean.sourceforge.net

No caso esse swingBean, ele seria um complemento da linguagem java? Um plugin que pode ser adicionado em qualquer IDE, tipo o Eclipse?

[quote=acolon]Quanto a duvida de se adotar a lingugem java, gostaria de dizer q java é uma linguem q nasceu voltada para grandes aplicações e web(q geralmente são grandes aplicaçõies =P).
[/quote]

Er… não :slight_smile:

Aplicações wbe geralmente são simples, ou pequenos aplicativos ou front-ends apra sistemas maiores e Java não surgiu para elas mas foi adaptado.

Você já viu o Jude, Netbeans, Eclipse, JCreator, FreeMind…? Java não tem desemepnho sofrível em desktop, as pessoas que não sabem usar Swing e eu concordo que não é tão simples) :wink:

Novamente provavelmente o problema é no modo como você usa Swing. Provavelmente você deve ter tido problemas com o modelo de threads dele.

Java possui compiladores JIT que eliminam boa parte do peso de ter uma VM.
O ideal era vc falar mais sobre sua experiência, mas ja q n falou vou supor alguns cenários.

Discordo, um bom llivro é essencial para aprender a paltaforma de verdade e não apenas apertar parafusos.

[quote=pcalcado][quote=acolon]Quanto a duvida de se adotar a lingugem java, gostaria de dizer q java é uma linguem q nasceu voltada para grandes aplicações e web(q geralmente são grandes aplicaçõies =P).
[/quote]

Er… não :slight_smile:

Aplicações wbe geralmente são simples, ou pequenos aplicativos ou front-ends apra sistemas maiores e Java não surgiu para elas mas foi adaptado.

Você já viu o Jude, Netbeans, Eclipse, JCreator, FreeMind…? Java não tem desemepnho sofrível em desktop, as pessoas que não sabem usar Swing e eu concordo que não é tão simples) :wink:

Novamente provavelmente o problema é no modo como você usa Swing. Provavelmente você deve ter tido problemas com o modelo de threads dele.

Java possui compiladores JIT que eliminam boa parte do peso de ter uma VM.
O ideal era vc falar mais sobre sua experiência, mas ja q n falou vou supor alguns cenários.

Discordo, um bom llivro é essencial para aprender a paltaforma de verdade e não apenas apertar parafusos.
[/quote]

além de um bom livro, um curso pode melhorar sua curva de aprendizado. Nem que seja para aumentar suas dúvidas…

[quote=tectsanches]Ola a todos, o objetivo dessa consulta é para que eu possa fazer as coisas de forma eficiente e eficaz eviando fazer perguntas sem foco e objetivo.

Uso o sistema operacional Insigne GNU/Linux baseado em Debian. Meu objetivo é entrar para o mundo de desenvolvimento usando a plataforma JAVA.
[/quote]

Eu utilizo uma iMac para programar e um notebook com o Ubuntu 10.10 os dois funcionam muito bem para programar em Java para Web, agora para Desktop não tenho nenhum experiência.

No começo não recomendo você utilizar nenhum IDE para programar. Em questão de literatura recomendo os seguinte livros e apostilas:

“Use a Cabeça Java!” - Kathy Sierra & Bert Bates:
http://www.submarino.com.br/produto/1/1074847/use+a+cabeca!+java

Apostila “FJ11 - Java e Orientação a Objetos”:
http://www.caelum.com.br/curso/fj-11-java-orientacao-objetos/

Apostila “FJ21 - Java para Desenvolvimento Web”:
http://www.caelum.com.br/curso/fj-21-java-web/

Apostila “Laboratório Java com Testes, XML e Design Patterns”:
http://www.caelum.com.br/curso/fj-16-laboratorio-java-testes-xml-design-patterns/

Se for possível após ter lido o livro da Kathy recomendo você fazer a Formação Java da Caelum, eu fiz e foi muito bom!

Acredito que após ter lido o livro e apostilas citadas acima você vai acabar achando muitos caminhos para buscar informação, como o GUJ e outras literaturas.

Se precisar de ajuda e só chamar!

Abraço!