Conhecendo o JAVA

O que é Java?

Java é uma linguagem orientada a objetos desenvolvida inicialmente pela empresa Sun e depois pela Oracle. A sintaxe geral está muito próxima do C, mas o Java não é uma sobreposição do C e a sua sintaxe é muito mais clara que a do C++.

As vantagens do Java são muitas. Antes de tudo, podemos citar sua liberdade, sua comunidade, seu ecossistema e sua sustentabilidade. Além disso, devemos citar o bytecode, que garante ao Java uma portabilidade completa para muitos sistemas. E ainda, a importância da API de base que oferece todos os serviços básicos em particular para a construção de interfaces gráficas. Finalmente, podemos citar a adaptabilidade do Java em muitas áreas, tanto para a web quanto para sistemas embarcados.

Uma lista de sistemas com implementação Java: Microsoft Windows, MacOS, Solaris, Linux, AIX, OS / 2, IRIX, Unixware, HP / UX, Digital Unix, AmigaOS, BeOS, OpenVMS, FreeBSD, SunOS, RiscOS.

O Java também é suportado por diferentes famílias de processadores: Intel 32, 64 bits, etc.

Existem várias distribuições do Java:

  • Java SE (Standard Edition ou “edição padrão”) é a versão do Java destinada a desktops, laptops e determinadas plataformas ou smartphones incorporados com capacidade de processamento, memória e armazenamento suficientes para fazê-lo funcionar. Essa versão do Java define uma API padrão presente de forma idêntica em todas as plataformas e, portanto, possibilita a criação de aplicativos de linha de comando ou de interfaces gráficas que podem ser executados em um grande número de máquinas. Quando falamos sobre JDK, JVM, JRE nesta FAQ, nos referimos principalmente ao Java SE.
  • Java ME (Micro Edition) é a versão do Java destinada para plataformas incorporadas, dispositivos de pagamento com cartões, consoles e unidades de disco, telefones e outros dispositivos com capacidades limitadas de computação, memória ou armazenamento. Esta plataforma abrange um grande número de configurações e perfis levando em conta uma grande quantidade de dispositivos com diferentes capacidades de processamento.
  • Java EE (Enterprise Edition) é a versão do Java feita para servidores corporativos e servidores Web, para implementar rede e serviços Web. Inclui o Java SE, mas também possui APIs adicionais para definir mapeamentos objeto relacionais, arquiteturas multicamadas ou distribuídas e serviços Web.
  • O Android é uma versão especial do Java projetada pela Google para rodar em sua própria máquina virtual Dalvik. Ele roda no Linux em dispositivos, telefones, tablets, relógios, pulseiras de corrida, etc. A Google assumiu parte da API JavaSE e adicionou uma API Android específica da plataforma. Quase todos os conceitos discutidos nesta FAQ são aplicáveis ao Android, sujeitos ao nível de compatibilidade entre a versão do JDK mencionada no QR e a versão do Android SDK que você está usando.

Para começar

Não é fácil começar a desenvolver se você nunca programou antes. É por isso que é muito importante começar com bons recursos e não se apressar com a linguagem de programação.

Para pessoas que já conhecem a programação e as linguagens orientadas a objetos, aprender Java não deve ser muito complicado.

Obviamente, você precisará de uma ou mais ferramentas para desenvolver em Java. No entanto, para começar, é aconselhável usar um bloco de notas simples, compilar e executar seus programas na linha de comando. Isso ajudará você a entender como o Java funciona. Depois, é claro, você pode desenvolver algo com um IDE mais avançado: RAD ou Java IDE.

É aconselhável usar Eclipse, Netbeans ou IntelliJ para desenvolver seus aplicativos Java. Todas essas ferramentas são multi plataformas, gratuitas, de melhor desempenho e muito poderosas.

Mas eu quero ir mais longe 

Como desenvolver interfaces gráficas com Java?

Para desenvolver interfaces gráficas em Java, você tem várias opções:

  • AWT: é o primeiro framework gráfico Java. Ele usa os componentes do sistema para desenhar a interface gráfica, por isso é limitado em componentes.
  • Swing: é o sucessor do AWT. Todos os componentes são desenhados diretamente em Java. O que o torna mais lento que o AWT, mas essa diferença é muito pequena nas últimas versões do Java.
  • JavaFX: é uma estrutura Java que permite criar RIA (Rich Internet Application) criada pela Sun Microsystems e agora publicada pela Oracle. Essa estrutura visa substituir o AWT / Swing no futuro como uma biblioteca gráfica do Java SE (Standard Edition — a versão do cliente da JVM para computadores desktop). De fato, o desenvolvimento oficial do AWT / Swing está parado.
  • SWT: essa estrutura gráfica não está disponível com a API Java padrão. Foi criada pela equipe de desenvolvimento do Eclipse. Como o AWT, ela usa diretamente os componentes do sistema, mas emula os componentes indisponíveis desenhando-os.

Veja como começar com essas estruturas:

Como gerenciar banco de dados com Java?

A primeira maneira de gerenciar banco de dados é usar a API do JDBC, que é padrão Java. Em seguida, você pode avançar para estruturas de mapeamento objeto / relacional, como a especificação JPA geral, por meio da implementação mais difundida do Hibernate ou até mesmo usar uma estrutura de persistência menor, como o iBatis.

Aqui estão os recursos que serão úteis para o seu aprendizado: lista de links em português sobre JDBC JPA HIBERNATE:

Como fazer programação Web com Java?

A programação Web com Java é muito variada. Em primeiro lugar, existe a distribuição Java EE que inclui um grande número de especificações JSR (CDI, JSP, Servlet, JAX-RS, JAX-WS, EJB, JSF…). Além dessas, há outras estruturas (Struts, Spring MVC, JSF, Wicket, GWT, Play Framework, Seam…).

Aqui estão alguns recursos que podem ser úteis para você:

Tutoriais em português para GWT.

Tutoriais sobre Spring MVC.

Tutoriais sobre JSF.

Como desenvolver para dispositivos móveis com Java?

A distribuição Java ME permite o desenvolvimento em dispositivos móveis (ou, de maneira mais geral, em sistemas embarcados). Você também pode escolher desenvolver para Android.

Aqui estão alguns recursos que podem ser úteis para você:

Comece no J2ME com o perfil MIDP:

Os Primeiros Passos para o Desenvolvimento de Aplicativos para Celulares.

Como fazer 2D/3D com Java ?

Com o Java, você também pode fazer desenhos 2D e 3D (gráficos). Você pode usar APIs diferentes para fazer isso: Java2D, Java3D, JOGL, LWJGL e alguns outros mecanismos gráficos. Aqui estão alguns recursos para ajudar você a começar com gráficos, para introdução ao JOGL, primeiros passos com a biblioteca Java 3D e APIs 3D para Java.

Mostramos aqui uma primeira visão geral da linguagem Java. Mais uma vez, recomendamos que você consulte os tutoriais online e faça vários testes. Somente a prática fará com que você entenda a linguagem JAVA e suas possibilidades.

Não deixe de pesquisar por conta própria os conteúdos online, vídeos e fóruns, tanto em inglês, quanto em português, ou outra língua que você tenha domínio. E, qualquer dúvida, deixe seu comentário.