Blog de notícias, informações, estudos e cursos relacionados à Java.

15 outubro 2005

Características da Linguagem Java

E ai pessoal!
Como estão indo as coisas?

Caso algum dado esteja errado, vocês tem total liberdade para me corrigirem. Assim vocês aprendem comigo e eu aprendo com vocês. Em breve iremos colocar a mão na massa. Mas é importante, no momento, conhecermos algumas características da linguagem Java.

A linguagem de programação Java possui algumas características importantes. São elas:

Portabilidade: por ser uma linguagem interpretada, o Java pode ser executado em qualquer plataforma ou equipamento que possua um interpretador Java, e que tenha sido especialmente compilado para o sistema a ser utilizado;

Robustez: os recursos da linguagem e do ambiente para o tempo de execução garantem que o código não derrube o sistema de alguém que "tropece" em uma home page contendo uma animação;

Segurança: além de proteger o sistema do cliente contra possíveis ataques não-intencionais, o ambiente também deve proteger contra ações premeditadas. Muito tempo e esforço dos desenvolvedores de Java está sendo aplicado para que a linguagem se desenvolva nesse sentido;

Orientação a Objetos: Java é uma linguagem totalmente orientada a objetos, o que permite a herança e a reutilização de códigos de forma dinâmica e estática;

Dinamismo: por ter um projeto orientado a objetos, o dinamismo faz parte da natureza do Java, o que permite a extensibilidade durante a execução;

Alto Desempenho: a linguagem Java suporta vários recursos de alto desempenho, como multithreading, compilação just-in-time e utilização de código nativo.

Facilidade: a linguagem é derivada da linguagem C e C++, sendo assim familiar. Além disso, o ambiente retira do programador a esponsabilidade de gerenciar a memória e os ponteiros.

Como na maioria das linguagens de programação, você compila ou interpreta um programa para que ele possa funcionar em seu computador. Em Java os dois processos acontecem.

Quando você faz um programa em Java e o compila, o compilador java transforma seu programa em uma linguagem intermediária chamada bytecode. O bytecode é uma espécie de codificação que traduz tudo o que foi escrito no programa para um formato que o interpretador Java entenda e seja capaz de executar. A compilação ocorre apenas uma vez. A interpretação ocorre toda vez que o programa é executado.

A figura 1 ilustra este conceito.

O mecanismo que interpreta o bytecode gerado pelo compilador Java é a Máquina Virtual Java, ou JVM (Java Virtual Machine, em inglês). A JVM é, em poucas palavras, um mecanismo que permite executar código em Java em qualquer plataforma. Segundo a definição da Sun, a JVM pode ser entendida como "uma máquina imaginária implementada via software ou hardware que executa instruções vindas de bytecodes". Assim, graças a JVM, é possível desenvolver aplicações para uma infinidade de plataformas.

Para servir de exemplo, suponha que você desenvolveu uma aplicação que rode na plataforma Windows. Com pouca ou nenhuma modificação esta aplicação poderá rodar na plataforma Linux ou no MacOS. Basta que estas plataformas tenham uma JVM instalada. Alguma dúvida?

A figura 2 ilustra bem este conceito.


Caso venha a surgir dúvidas, entrem em contato.
Terei o maior prazer em ajuda-los. Ok?

No próximo post vamos falar sobre a plataforma Java.
Te vejo lá?

Até mais.

Atc.,
Kirk Patrick

(Data prevista do próximo post 16/10/2005)

História do Java

E ai pessoal.
Tudo beleza?

Pois bem, hoje, conforme prometi (ver post anterior), vamos iniciar nosso curso de Java. Mas antes de colocarmos a mão na massa, vamos falar um pouco sobre Java. Sobre sua história, principais características e o mercado que ela movimenta.

Como tudo aconteceu

Java está em todo lugar. Das torradeiras às sondas espaciais utilizadas pela NASA, ela tem sido largamente utilizada em milhares de projetos, produtos e serviços ao redor do mundo. Muito tem se falado sobre Java. Mas afinal, o que é Java? Quais suas origens e quais seus propósitos? De onde vem todo o seu sucesso?

Java é uma linguagem orientada a objetos (eu sei que você já sabia disto), desenvolvida pela Sun Microsystems (você também já sabia disto). Inicialmente elaborada para ser uma linguagem utilizada em eletrodomésticos, ela teve seu grande boom em 1995, devido ao sucesso da World Wide Web. Vou explicar.

No início de 1990, Naughton, Gosling e Sheridan começaram a definir as bases para o projeto de uma nova linguagem de programação, apropriada para eletrodomésticos, sem os problemas já tão conhecidos de linguagens tradicionais como C e C++. O consumidor era o centro do projeto, e o objetivo era construir um ambiente de pequeno porte e integrar esse ambiente em uma nova geração de máquinas para "pessoas comuns". A especificação da linguagem terminou em agosto de 1991, e a ela deu-se o nome de "Oak" [Carvalho]. Por problemas de copyrigth (já existia uma linguagem chamada Oak) o nome foi mudado em 1995 para Java, em homenagem à ilha de Java, de onde vinha o café consumido pela equipe da Sun.

Em 1992, Oak foi utilizada pela primeira vez em um projeto chamado Projeto Green, que tinha por propósito desenvolver uma nova interface de usuário para controlar os aparelhos de uma casa. Tal interface consistia em uma representação animada da casa, que era exibida em um computador manual [chamado star seven, bisavô dos palmtops de hoje], e que tinha uma tela sensível ao toque que permitia a manipulação dos eletrodomésticos. Essa interface era totalmente escrita em Oak, e evoluiu para um projeto de interface para redes de televisão pay-per-view. Contudo, o padrão proposto por esses dois projetos não vingou, e outros padrões, pelo menos em sistemas de TV pay-per-view vêm tomando conta do mercado. Um personagem animado desses projetos, Duke, tornou-se um dos símbolos de Java.

Em meados de 1993, pode-se dizer que Oak ia "mal das pernas". Os projetos propostos não eram economicamente viáveis, e não se via um grande futuro no desenvolvimento de aparelhos que suportassem essa nova linguagem. Justamente nessa época, a World Wide Web estava em seu nascimento, trazendo um novo horizonte para a Internet. (É importante lembrar que a Internet já existia muito antes do surgimento da WWW. A WWW nada mais é que um conjunto de protocolos que permite um acesso mais amigável aos recursos disponíveis na Internet. Dentre esses protocolos, por exemplo, o mais conhecido em geral é o de transferência de hipertexto [http]). Com o lançamento do primeiro browser do mercado, o Mosaic, ocorreu à equipe de desenvolvimento da Sun que uma linguagem independente de plataforma, segura e robusta como a que estava sendo desenvolvida para eletrodomésticos caberia como uma luva para uso na Internet, uma vez que um aplicativo gerado nessa linguagem poderia rodar nos diversos tipos de computadores ligados na Internet, rodando qualquer sistema operacional, de PCs rodando OS/2 a estações RISC rodando AIX Unix, ou SparcStations rodando Solaris, os programas escritos nessa linguagem que viria a ser conhecida por Java seriam o modelo para qualquer aplicativo Web.

Com o novo ânimo trazido pelo advento da WWW, a equipe da Sun desenvolveu um browser totalmente escrito em Java, tendo-o terminado no início de 1995 e denominado-o HotJava. O grande diferencial de HotJava para outros browsers da época (como o Mosaic, o Netscape Navigator e o Lynx) é que ele permitia a inserção de programas escritos em Java dentro de páginas HTML comuns. HotJava como browser foi um fiasco comercial, mas abriu os olhos dos desenvolvedores para um fato muito importante: as páginas HTML estariam fadadas a serem estáticas e sem ações embutidas em si, não houvesse uma linguagem padrão na qual fossem escritos programas que pudessem ser embutidos nas páginas Web. HotJava demonstrou que isso era possível (ou seja, incluir um programa, no caso escrito em Java, em uma página HTML rodando em um browser preparado para dar suporte à execução do programa, no caso o próprio HotJava). O grande "pulo do gato" de Java veio logo a seguir, quando a Netscape anunciou que sua próxima versão do browser Navigator, iria dar suporte a aplicativos Java embutidos em documentos HTML. Em seguida, a Microsoft anunciou o mesmo para o seu Internet Explorer. E Java estourou no mundo, a Sun contabilizava inúmeros downloads de seu JDK, diversas empresas desenvolveram IDEs para a programação em Java, e vieram JavaScript, JavaBeans, a briga deste com ActiveX, e...

E a Internet jamais foi a mesma.
[Fonte: InfoWester]

No próximo post vou falar sobre as características do Java.
Te vejo lá?

Atc.,
Kirk Patrick

14 outubro 2005

Apresentação

Bem-vindo ao Java Clube!
Este é um blog dedicado à tecnologia Java.
Neste blog você irá encontrar notícias e informações relacionados ao universo Java.

Se você sempre teve o desejo de aprender Java, mas não tinha dinheiro para pagar um curso ou ninguém quis te ensinar e quem sabe você teve foi preguiça mesmo de pesquisar e correr atrás, você está no lugar certo. Aqui, neste blog, voce irá aprender "step by step" a linguagem Java.

Vamos começar com uma forte ênfase em Orientação a Objetos e depois vamos caminhando pelo vasto universo da tecnologia Java (J2SE, J2EE e J2ME).

No próximo post vamos começar um estudo (curso) de Orientação a Objetos. Vamos mastigar esse monstro chamado Orientação a Objetos que assusta e dá nó na cabeça de muita gente. Vamos mostrar pra ele quem manda no pedaço.

Então? Estamos combinados?
Nos vemos no próximo post?

Então até lá!
Um abraço a todos.

Atc.,
Kirk Patrick
(Previsão do próximo post: 15/10/2005)