|
O objetivo principal da cria��o da linguagem de programa��o Java era torn�-la port�til, simples e segura.
Al�m disso, tamb�m existem alguns recursos excelentes que desempenham um papel importante na popularidade dessa linguagem.
Os recursos do Java tamb�m s�o conhecidos como chav�es Java.
Uma lista dos recursos mais importantes da linguagem Java � fornecida abaixo:
- Simples
- Orientada a Objeto
- Port�til
- Plataforma independente
- Protegida
- Robusta
- Arquitetura neutra
- Interpretada
- Alta performance
- Multithread
- Distribu�da
- Din�mica
Simples
Java � muito f�cil de aprender e sua sintaxe � simples, limpa e f�cil de entender.
De acordo com a Sun, a linguagem Java � uma linguagem de programa��o simples porque:
- A sintaxe Java � baseada em C++ (� mais f�cil para os programadores aprenderem depois de C++).
- O Java removeu muitos recursos complicados e pouco usados, por exemplo, ponteiros expl�citos, sobrecarga de operadores etc.
- N�o h� necessidade de remover objetos n�o referenciados porque h� uma Coleta de Lixo Autom�tica em Java.
Orientada a Objeto
Java � uma linguagem de programa��o orientada a objetos. Tudo em Java � um objeto. Orientada a objetos significa que organizamos nosso
software como uma combina��o de diferentes tipos de objetos que incorporam dados e comportamentos.
A programa��o orientada a objetos (OOPs) � uma metodologia que simplifica o desenvolvimento e a manuten��o de software, fornecendo
algumas regras.
Os conceitos b�sicos de OOPs s�o:
- Objeto
- Classe
- Heran�a
- Polimorfismo
- Abstra��o
- Encapsulamento
Plataforma independente
Java � independente de plataforma porque � diferente de outras linguagens como C, C++, etc., que s�o compiladas em m�quinas espec�ficas
da plataforma, enquanto Java � uma linguagem de grava��o �nica, executada em qualquer lugar. Uma plataforma � o ambiente de hardware
ou software no qual um programa � executado.
Existem dois tipos de plataformas baseadas em software e hardware. Java fornece uma plataforma baseada em software.
A plataforma Java difere da maioria das outras plataformas no sentido de que � uma plataforma baseada em software que � executada no
topo de outras plataformas baseadas em hardware. Possui dois componentes:
- Ambiente de execu��o
- API (Interface de Programa��o de Aplicativos)
O c�digo Java pode ser executado em v�rias plataformas, por exemplo, Windows, Linux, Sun Solaris, Mac/OS etc.
O c�digo Java � compilado pelo compilador e convertido em bytecode. Esse bytecode � um c�digo independente de plataforma,
pois pode ser executado em v�rias plataformas, ou seja, Write Once and Run Anywhere (WORA).
Protegida
Java � mais conhecida por sua seguran�a. Com Java, podemos desenvolver sistemas livres de v�rus. O Java est� protegido porque:
- Nenhum ponteiro expl�cito.
- Programas Java s�o executados dentro de uma sandbox de m�quina virtual.
- Carregador de Classes: O Classloader em Java faz parte do Java Runtime Environment (JRE), que � usado para carregar classes Java
dinamicamente na Java Virtual Machine. Ele adiciona seguran�a, separando o pacote para as classes do sistema de arquivos local daquelas
que s�o importadas de fontes de rede.
- Verificador de Bytecode: verifica os fragmentos de c�digo em busca de c�digo ilegal que possa violar o acesso direto aos objetos.
- Gerenciador de seguran�a: determina quais recursos uma classe pode acessar, como leitura e grava��o no disco local.
A linguagem Java fornece esses t�tulos por padr�o. Alguma seguran�a tamb�m pode ser fornecida por um desenvolvedor de aplicativos
explicitamente atrav�s de SSL, JAAS, criptografia etc.
Robusta
Robusta significa simplesmente forte. Java � robusta porque:
- Ela usa um forte gerenciamento de mem�ria.
- Faltam indicadores que evitam problemas de seguran�a.
- H� uma coleta autom�tica de lixo em Java que � executada na Java Virtual Machine para se livrar de objetos que n�o est�o mais sendo
usados por um aplicativo Java.
- H� manipula��o de exce��o e o mecanismo de verifica��o de tipo em Java. Todos esses pontos tornam a linguagem Java robusta.
Arquitetura Neutra
Java � arquitetura neutra porque n�o h� recursos dependentes da implementa��o, por exemplo, o tamanho dos tipos primitivos � fixo.
Na programa��o C, o tipo de dados int ocupa 2 bytes de mem�ria para arquitetura de 32 bits e 4 bytes de mem�ria para arquitetura de
64 bits. No entanto, ele ocupa 4 bytes de mem�ria para arquiteturas de 32 e 64 bits em Java.
Port�til
Java � port�til porque facilita o transporte do bytecode Java para qualquer plataforma. N�o requer nenhuma implementa��o.
Alta Performance
Java � mais r�pida que outras linguagens de programa��o interpretadas tradicionais porque o bytecode Java est� "pr�ximo" ao c�digo nativo.
Java � uma linguagem interpretada, por isso � mais lenta do que as linguagens compiladas, como por exemplo, C, C++ etc.
Distribu�da
Java � distribu�da porque facilita os usu�rios a criar aplicativos distribu�dos em Java. RMI e EJB s�o usados para criar aplicativos
distribu�dos. Esse recurso do Java nos permite acessar arquivos chamando os m�todos de qualquer m�quina na Internet.
Multi-threaded
Um encadeamento � como um programa separado, executando simultaneamente. Podemos escrever programas Java que lidam com muitas tarefas
ao mesmo tempo, definindo v�rios encadeamentos. A principal vantagem do multiencadeamento � que ele n�o ocupa mem�ria para cada thread.
Ele compartilha uma �rea de mem�ria comum. Os threads s�o importantes para multim�dia, aplicativos da Web etc.
Din�mica
Java � uma linguagem din�mica. Ela suporta carregamento din�mico de classes. Isso significa que as classes s�o carregadas sob demanda.
Ela tamb�m suporta fun��es de seus idiomas nativos, ou seja, C e C++.
Java suporta compila��o din�mica e gerenciamento autom�tico de mem�ria (Coleta de Lixo).
*****
|