• Nenhum resultado encontrado

Java Linguagem de programação

N/A
N/A
Protected

Academic year: 2021

Share "Java Linguagem de programação"

Copied!
5
0
0

Texto

(1)

®

Linguagem Java

O que é o Java?

Java é uma linguagem de programação, apresentada ao mercado em 1995, pela Sun Microsystems, que provocou e ainda provoca excitação e entusiasmo em programadores, analistas e projetistas de software.

Mas por que o Java provoca essa reação?

Simplesmente porque é o resultado de um trabalho de pesquisa e desenvolvimento de mais do que uma simples linguagem de programação, ou seja, de todo um ambiente de desenvolvimento e execução de programas que reúne um conjunto ímpar de facilidades: é

completamente orientada a objetos, muito robusta, possui extrema portabilidade, permite a

operação em rede e distribuição, incorpora diversas características voltadas à segurança e, finalmente, permite sua distribuição em diversos ambientes, destacando-se a Internet.

Segundo sua especificação, o Java poderia ser assim caracterizado:

"O Java é uma linguagem de programação de propósito geral, concorrente, com base em

classes e orientada a objetos. Foi projetada para ser simples o bastante para que a maioria

dos programadores se torne fluente com ela. A linguagem Java tem relação com C e C++,

mas é organizada de maneira diferente, com vários aspectos de C e C++ omitidos e algumas idéias de outras linguagens incluídas"

Resumindo: o Java é uma linguagem não apenas adequada às necessidades de seu próprio

tempo, mas voltada para o futuro.

Histórico

Conhecer como surgiu o Java e quais foram os primeiros acontecimentos relacionados ajudam a entender seu 'espírito'. Segundo James Gosling (1999), um dos pais da linguagem, a história do Java é a seguinte.

Tudo começou em 1991, com um pequeno grupo de projetos da Sun Microsystems, denominado Green, que pretendia criar uma nova geração de computadores portáteis inteligentes, capazes de se comunicar de várias maneiras, ampliando suas potencialidades de uso. Para tanto, decidiu-se criar também uma nova plataforma para o desenvolvimento desses equipamentos, de forma que seu software pudesse ser portado para os mais diferentes tipos de equipamentos. A primeira escolha de uma linguagem de programação para tal desenvolvimento foi C++, aproveitando suas características e a experiência dos integrantes do grupo no desenvolvimento de produtos. Mas mesmo o C++ não permitia realizar com facilidade tudo aquilo que o grupo imaginava.

Gosling decidiu, então, pela criação de uma nova linguagem de programação, a qual pudesse conter tudo aquilo que era considerado importante e que, ainda assim, fosse simples, portátil e fácil de programar. Surgiu assim a linguagem interpretada Oak (carvalho, em inglês), batizada dessa forma dada a existência de uma dessas árvores em frente ao escritório de Gosling. Para dar suporte à linguagem, também surgiu o Green OS e uma interface gráfica padronizada.

(2)

®

Após dois anos de trabalho, o grupo finaliza o Star7 (ou *7) — um avançado PDA {Personal

Digital Assistant) — e, em 1993, surge a primeira grande oportunidade de aplicação dessa

solução da Sun em uma concorrência pública da Time-Warner para o desenvolvimento de uma tecnologia para TV a cabo interativa, injustamente vencida pela SGI (Silicon Graphics

Inc.).

Devido a problemas de copyright, o Oak recebe o novo nome Java, mas continua sem uso definido até 1994, quando, estimulados pelo grande crescimento da Internet, Patrick Naughton e Jonathan Payne desenvolveram o programa navegador WebRunner, capaz de efetuar o download e a execução de código Java via Internet. Esse navegador, sob o nome HotJava, e

a linguagem Java foram então apresentados formalmente pela Sun, em maio de 1995, no

SunWorld’95, quando o interesse pela solução mostrou-se explosivo. No início de 1996, a

Netscape Corp. lança a versão 2.0 de seu navegador Navigator, que incorpora as capacidades

de efetuar o download e realizar a execução de pequenas aplicações Java, então chamadas

appiets.

Numa iniciativa inédita, a Sun decide disponibilizar um conjunto de ferramentas de desenvolvimento Java gratuitamente para a comunidade de software, embora detenha todos os direitos relativos à linguagem e às ferramentas de sua autoria.

Surge assim, em meados de 1996, o Java Developer's Kit 1.02 (JDK 1.02). As plataformas inicialmente atendidas foram: Sun Solaris e Microsoft Windows 95/NT. Dado que a especificação da linguagem e do ambiente de execução também foram colocadas publicamente disponíveis, progressivamente, foram aparecendo kits para outras plataformas, tais como IBM OS/2, Linux e Appiet Macintosh.

Um ano após seu anúncio, ocorre o primeiro grande evento da linguagem Java, a 'JavaOne Conference', que vem sendo realizada regularmente para apresentação de novas características, casos de sucesso, produtos e tecnologias associadas. E assim tem início a história de sucesso do Java.

Em 1997, torna-se disponível o JDK 1.1, que inclui grandes melhorias para o desenvolvimento de aplicações gráficas e distribuídas. No final de 1998, uma outra grande série de adições, melhorias e correções são incorporadas ao kit, iniciando o que a Sun denomina oficialmente família Java 2.

Neste ponto, o JDK passa a ser denominado Java 2 SDK (Software Developer's Kit} e é disponibilizado nas formas Standard Edition e Enterprise Edition.

Atualmente, a Sun vem liberando novas versões ou correções quase que semestralmente, bem como novas APIs (Appiícatíon Programmíng Interfaces) para o desenvolvimento de aplicações específicas. A última versão disponível é o Java 2 SDK 1.3.

Características importantes

A linguagem Java exibe importantes características que, em conjunto, a diferenciam de outras linguagens de programação. Dentre as características citadas de forma quase unânime por vários autores (Gosling & McGilton, 1996 ; Crawford, 1998A; Deitei & Deitei, 1998; Horstmann & Cornell, 2000), destacamos alguns pontos-chave:

é orientada a objetos, independente de plataforma, sem ponteiros, sem performance, dotada de mecanismos de segurança e permite multíthreading.

(3)

®

Orientado a objetos

Java é uma linguagem puramente orientada a objetos, pois, com exceção de seus tipos primitivos dados, tudo em Java são classes ou instâncias de uma classe. Atende a todos os requisitos necessários para uma linguagem ser considerada orientada a objetos, que, resumidamente, são: oferecer mecanismos de abstração, encapsulamento e hereditariedade.

Independente de plataforma

Java é uma linguagem independente de plataforma, ou seja, os programas Java não são

compilados para uma plataforma de hardware específica, mas, sim, para uma forma intermediária de código destinada à máquina virtual Java, denominada JVM (Java Virtual

Machine). O formato intermediário é chamado de bytecodes, uma espécie de linguagem de

máquina da JVM que utiliza instruções e tipos primitivos de tamanho fixo, ordenação

big-endian e uma biblioteca de classes padronizada. A máquina virtual Java é, na verdade, um

interpretador de bytecodes para a plataforma na qual eles são executados. Por ser possível implementar uma JVM para qualquer plataforma, um mesmo programa Java pode ser executado em qualquer arquitetura que disponha de uma JVM, obtendo-se assim a independência de plataforma.

Sem ponteiros

Java não possui ponteiros, isto é, Java não permite a manipulação direta de endereços de memória nem exige que os objetos criados sejam explicitamente destruídos, livrando os programadores de uma tarefa complexa. Toda a manipulação de variáveis e objetos se dá por intermédio de referências. Além disso, a JVM possui um mecanismo automático de gerenciamento de memória, conhecido como automatic garbage collector, que recupera a memória alocada para objetos não

mais referenciados pelo programa.

Performance

A linguagem Java foi projetada para ser compacta, independente de plataforma e para a utilização em rede, o que levou à decisão de ser interpretada por intermédio dos esquemas de bytecodes.

Sendo uma linguagem interpretada, sua performance é razoável, não podendo ser comparada à velocidade de execução de código nativo. Para superar essa limitação, várias JVM existentes dispõem de compiladores just in time (JIT), capazes de compilar os bytecodes em código nativo durante a carga do programa, possibilitando uma melhora significativa na performance dos programas Java, equiparando-os ao desempenho obtido com programas nativos.

Segurança

Considerando a possibilidade de que as aplicações possam ser obtidas através de uma rede, a linguagem Java possui mecanismos de segurança que podem, no caso de appiets, evitar, por exemplo, qualquer operação no sistema de arquivos da máquina-alvo, minimizando problemas de segurança. Tal mecanismo é flexível o suficiente para determinar se uma appiet

è considerada segura, especificando nesta situação diferentes níveis de acesso ao

(4)

®

Permite multíthreading

Java oferece recursos para o desenvolvimento de aplicações capazes de executar múltiplas rotinas concorrentemente, possibilitando sua sincronização. Cada uma dessas rotinas é como um fluxo de execução independente, usualmente denominado thread. As threads sã um importante recurso de rogramação para a construção de aplicações mais sofisticadas. Além das características comentadas, Java é também uma linguagem bastante robusta, que icentiva o controle detalhado de erros. Oferece ainda tipos inteiros, ponto flutuante e aritmética ompatíveis com as especificações do IEEE, e ompatibilidade com caracteres UNICODE; inclui ecanismos de reflexão (determinação em tempo de execução dos tipos dos objetos em uso, além

de outras informações), sendo extensível dinamicamente, além de ser naturalmente voltada para o esenvolvimento de aplicações em rede ou aplicações distribuídas.

Mesmo com tudo isso, o Java ainda é uma linguagem sintática e estruturalmente simples, o que a torna uma linguagem de programação única.

Recursos necessários

Para trabalharmos com o ambiente Java, é necessário, no mínimo, o uso de um Java Software

Developer's Kit (daqui para a frente, referenciado apenas como JDK) e um editor de textos

ASCII simples, tal como o Bloco de Notas de qualquer versão do Microsoft Windows. Além do JDK, é fundamental termos em mãos a documentação de suas bibliotecas, a qual é fornecida separadamente.

Recomendamos o uso de um JDK fornecido pela Sun, preferencialmente em uma versão superior à 1.2.2.

Adicionalmente, também é desejável o uso de um navegador compatível com o Java, tal como o Sun HotJava, Netscape Communicator 4.5 ou o Microsoft Internet Explorar 4 ou versões superiores destes softwares.

Editores de texto voltados para a programação, capazes de exibir a sintaxe Java em destaque e ar a construção e a utilização de macros, também podem ser de grande valia, embora não sejam essenciais.

Outras informações sobre a plataforma Java, tal como novas versões, APIs adicionais, artigos,estudos de casos, dicas e exemplos, podem ser obtidas na Internet,

O Sun Java Software Developer's Kit

O Sun Java Software Developer's Kit, ou simplesmente JDK, é composto de quatro partes básicas,que são:

-Um conjunto de ferramentas para desenvolvimento de aplicações Java.

-Uma extensa biblioteca de classes padronizadas Java, denominada Java Standard API. -Um ambiente de execução Java.

-Exemplos, código-fonte das porções públicas e a documentação das APIs.

(5)

®

-Uma máquina virtual Java. -Um visualizador de appiets.

-Um programa para geração de documentação. -Um utilitário para criar e manter arquivos compactados Java Archive.

Com essas ferramentas, é possível a criação desde pequenas aplicações até sistemas distribuídos que operam em rede.

A biblioteca padrão incluída contém centenas de classes distribuídas em vários pacotes chamados de packages. Nesses packages, residem as classes básicas da linguagem; os recursos para o desenvolvimento de aplicações gráficas, miniaplicativos (appiets), manipulação de imagens e gráficos 2D; transferência de dados via 'arrastar e soltar1;

comunicação em rede; distribuição de aplicações; acesso a bancos de dados; internacionalização; construção de componentes Java (chamados JavaBeans) etc.

O ambiente de execução permite tanto a execução de aplicações tradicionais, gráficas ou não, construídas por meio do Java, como de miniaplicativos Java que podem

posteriormente ser incorporados em páginas HTML.

O ambiente de execução Java e sua constituição serão detalhados na próxima seção ("O ambiente Java").

Além das ferramentas comentadas, o JDK inclui outras que possibilitam a depuração e a otimização de programas, o desenvolvimento de aplicações distribuídas, o teste isolado de componentes construídos, a construção de aplicações adaptáveis a diferentes idiomas e países, a criação e o uso de certificados de segurança, além de utilitários que permitem a integração do Java com outras linguagens de programação.

Os exemplos e o código-fonte das partes públicas são fornecidos para auxiliar o estudo e o aprimoramento no Java. A documentação, fornecida separadamente, é essencial tanto para o estudo como para o trabalho de desenvolvimento, pois a biblioteca Java é extensa e

contém recursos que só se tornam evidentes através da documentação.

Embora o JDK não constitua um ambiente visual de desenvolvimento, isto é, um IDE

(Integrated Development Environment) semelhante ao Microsoft VisualBasic ou Borland Delphi, destaca-se o fato de que, apenas com seu uso, ainda é possível o desenvolvimento

de aplicações gráficas relativamente complexas. Isso ressalta que o JDK é, de fato, o padrão em termos de ferramenta para desenvolvimento Java.

A Sun oferece gratuitamente o Forte, um ambiente visual de desenvolvimento Java que pode ser integrado ao JDK. Outros fabricantes de software, tais como Microsoft, Borland, Symantec e IBM, oferecem comercialmente outros ambientes visuais de desenvolvimento Java, cada um com suas peculiaridades. Tais ferramentas são, respectivamente, Visual J++, JBuilder, VisualCafe e VisuolAge forjava, e como o Forte se destinam ao aumento de produtividade de programadores Java.

Referências

Documentos relacionados

As ferramentas para retirada do lacre tipo "porca louca" e instalação dos tipos "abraçadeira" e "metálico com fecho plástico" devem ser fornecidas em

Objetivo específico foi avaliar duas ligas metálicas básicas (Ni-Cr e Co-Cr) comparadas a uma liga áurica quanto à resistência à ruptura e limite de resistência.. H2) A liga de

A aplicação será denominada de SIDOC (Sistema de Documentos Eletrônicos), e utilizará como tecnologia a linguagem de programação Java na sua plataforma JEE (Java

Norte Área Metropolitana do Porto Escola Básica Manuel António Pina, Oliveira do Douro, Vila Nova de Gaia 296510 2012. Norte Área Metropolitana do Porto Escola Básica Agustina

tenha sido escrito por um amigo e de resto você nunca teve qualquer sentimento em relação a qualquer palavra, as palavras o aborrecem mais do que qualquer outra coisa então como

Art.7º - Na hipótese de não ser alcançada a Mediação ou se assim decidirem as partes em comum acordo, a controvérsia poderá ser submetida à Arbitragem, observada a existência

Necessidades Fisiológicas (fome, sede, sono, higiene, conforto, estimulação …) Necessidade de Segurança (defesa, protecção, estabilidade, ausência de dor,

Projeto JSF (Java JavaServer Faces – especificação para o desenvolvimento na plataforma WEB utilizando a linguagem Java e componentes voltados para este ambiente), JPA (Java