Java – Visão Geral

23 07 2008

Introdução/Histórico

Em 1990 um grupo liderado por James Gosling e outros desenvolvedores da Sun MicrosSystems iniciou o desenvolvimento de uma linguagem, independente de plataforma, que atendesse vários dispositivos eletrônicos como aparelhos de microoondas, video-cassetes e etc. Batizaram essa linguagem inicialmente de OAK, porém já havia uma linguangem com esse nome e foram obrigados a escolher um outro, daí Java.

O que é Java?

Basicamente e de forma bem simplista, é um conjunto formado por:

  • Uma linguagem de alto nível para desenvolvimento orientado a objetos;
  • Um pré-compilador(gerador de bytecodes) de código fonte;
  • Uma máquina Virtual(JVM) que interpreta o código pré-compilado para uma plataforma específica.

Principais Características

  • Orientação à objetos;
  • Portabilidade, pois o mesmo bytecode pode ser interpretado em qualquer plataforma;
  • Grande número de bibliotecas disponibilizadas através da Core API.

Entendendo sobre as versões do Java

Há um padrão de nomenclatura adotado para definir as versões do java, veja: 1.2.3a-000

Onde:

  • 1 – indica a versão base.
  • 2 – indica mudanças de biblioteca.
  • 3 – indica bug-fixes, ou seja, não ocorre mudança de bibliotecas. A partir do Java 2 a itenção é ter uma versão de bug-fixes a cada trimestre.
  • a – em alguns poucos casos surgiram versões com uma letra no final. Isso indica uma versão que foi lançada para corrigir um bug de segurança.
  • 000 – a partir da versão do Java 2, a letrinha no final foi substituida por três números, mas significam a mesma coisa que o “a”.

Histórico

  • 1995: Versão 1.0 – 8 pacotes e 212 classes
    • Criação do AWT, primeira biblioteca de criação de interfaces gráfica (o resultado visual depende de bibliotecas gráficas da plataforma);
  • 1997: Versão 1.1 – 23 pacotes e 504 classes
    • Melhora na manipulação de eventos, inner classes e JVM;
    • Suporte à Swing (biblioteca gráfica que o resultado visual não depende de plataforma)
  • 1999: Versão 1.2 (Java 2) – 59 pacotes e 1509 classes
    • Criação do primeiro Kit de Desenvolvimento, chamado SDK
    • Incusão do Swing no core api
    • Criação da Collections API;
  • 2000: Versão 1.3 – 76 pacotes e 1842 classes
    • Melhoria de performance com a criação da Hotspot para JVM.
  • 2002: Version 1.4 – 135 pacotes e 2991 classes
    • Melhorias na IO API
    • Suporte a XML
  • 2004: Versão 5.0
    • Início mais rápido e melhor uso de memória da JVM
    • Alterações na linguagem(generics, ehanced for, varargs, autoboxing, annotations)
    • Melhoria nas funcionalidades de multithreading
  • 2006: Versão 6.0
    • Melhorias na performance
    • Suporte a Scripting
    • JDBC 4.0 Annotations
    • Ferramentas de monitoramento e gerenciamento

Definições: JRE, JDK, JEE, JSDK, JVM, JCP, API, etc

  • Veja as definições destes anacônios aqui!

Estrutura de Programação

A estrutura de programação composta basicamente por:

  • um arquivo contendo um código fonte que deve ser salvo com a extensão .java;
  • um pré-compilador que transformará esse arquivo em um bytecode;
  • uma JVM que é um interpretador do bytecode para uma plataforma específica.

Ferramentas de Programação (Linha de comando e IDE’s)

O JDK vem com varios utilitários para linha de comando, exemplo:

  • javac – compilador padrão;
  • java – executor dos códigos pré-compilados;
  • javadoc – gerador de documentação.

Existem ainda IDE´s,  ambientes integrados, que disponibilizam de forma gráfica os componentes de linha de comando. Esta interface visual proporciona agilidade e ganho de produtividade, no entanto recomendo para quem está começando ficar na linha de comando até adiquirir familiaridade com a linguagem e saber os detalhes básicos da mesma. Dentre as IDE’s mais utilizadas atualmente, posso citar: Eclipse, NetBeans e JDeveloper.

Instalação e Configuração

Existe uma instalação específica para cada plataforma (Windows, Linux, Mac, etc).

É necessário configurar algumas variáveis de ambiente (path, classpath) para iniciar o desenvolvimento de aplicações.