Oi, como está o seu estudo?
Nesse post, nós vamos conversar sobre Lógica de Programação com Java. Se você está começando a estudar esses conceitos ou está tendo o primeiro contato com Java, fique tranquilo.
Tudo aqui é bem simples e feito especialmente para você entender. Você vai conhecer um pouco do surgimento do Java, depois como essa linguagem funciona e posteriormente, como aplicar a lógica a ela.
História do Java

Era o início da década de 90. James Gosling, esse carinha da foto, um cientista de programação canadense, trabalhou em conjunto com sua equipe, em uma empresa chamada Sun Microsystems, criando assim a linguagem JAVA.
Contudo, a origem de Java é um tanto curiosa. James e sua equipe estavam trabalhando em um projeto que idealizava a construção de um controle interativo, com touchscreen e funcionalidades que conhecemos atualmente, por meio de smartphones e demais dispositivos eletrônicos.
Para isso, eles desenvolveram uma linguagem específica, que atendesse as especificidades do projeto.
Para esse projeto, denominado Star Seven, a linguagem Oak surgiu. Dizem que ele a batizou assim por causa de um majestoso carvalho que podia avistar de sua janela.
Foi nessa época também que o mascote tão conhecido pelos javeiros, o Duke, foi criado.

O Duke era como um assistente nesse dispositivo interativo da Star Seven. Ele guiava o usuário e mostrava como utilizar o aparelho.
Todavia, o projeto não foi para a frente. A internet emergiu, e em 1995, James teve de adaptar a linguagem Oak para a web.
Surge assim o Java. Batizado em homenagem as ilhas de Java, especialmente por causa do seu forte café.
Atualmente a linguagem pertence a Oracle, que a comprou em 2008 e é uma das linguagens mais utilizadas e mais reconhecidas do mundo.
Também é a linguagem oficial dos aplicativos android e diversos sistemas para desktops que encontramos por aí.
Mas antes de falarmos mais sobre Java, vamos entender alguns conceitos básicos.
Programa, linguagem de máquina e compilador
Você sabe o que é um programa? Bem, nada mais é do que uma sequência de instruções, feita por meio de algoritmos que a gente executa tanto no computador quanto em outros dispositivos.
Esses algoritmos são feitos em linguagem de alto nível, que se aproximam da nossa compreensão e são, de certa forma, convertidos para a linguagem de baixo nível, chamadas de linguagem de máquina.
Desse modo, dependendo da arquitetura do computador ou dispositivo o programa pode ou não funcionar.
Isso porque, algumas linguagens funcionam em apenas uma arquitetura e precisam ser adaptados para outros sistemas operacionais. Alguns precisam até mesmo da reescrita de código.
Já outras linguagens possuem uma tecnologia que as permitem executar o programa em várias arquiteturas ao mesmo tempo, poupando o programador de ter que reescrever o código.
A linguagem Java possui essa característica. O seu código uma vez escrito, funciona em vários sistemas operacionais, desde é claro, que estes atendam a alguns requisitos.
Compilador
Mas o que é essa tecnologia que consegue converter o código tanto para linguagem de máquina quanto para outra arquitetura?
A resposta é o compilador e a máquina virtual.
O compilador é o responsável por traduzir a linguagem de alto nível em linguagem de máquina.
E o mais interessante é que além de disso, ele gera arquivos executáveis específicos para arquiteturas distintas. Então o código fonte só precisa ser feito uma única vez.
A partir disso, o compilador converte esse código para um determinado sistema operacional e também para a linguagem de baixo nível.
Só que o compilador não faz essa mágica totalmente sozinho.
Máquina Virtual
Sem a máquina virtual, o compilador não seria capaz de converter o código para diversas plataformas como vemos com frequência hoje em dia.
É a máquina virtual que permite essa conversão. Pense na máquina virtual como uma ponte entre o código fonte traduzido pelo compilador até a linguagem de máquina no computador.
Assim, quando o programador escreve o código-fonte em uma determinada linguagem, o compilador o reescreve para uma linguagem que a máquina virtual entende e é ela quem vai traduzir esse código para a linguagem de máquina.
E isso acontece para todas as arquiteturas que possuírem essa tecnologia.
Versões do Java
Para programadores, o Java possui 3 plataformas:
- JAVA ME – Java Micro Edition (Para Dispositivos e Embarcados Móveis)
- JAVA SE – Java Standard Edition (Para Desktops e Servidores)
- JAVA EE – Java Enterprise Edition (Para Aplicações Corporativas)
Contudo, geralmente utilizamos o JAVA SE para aprender a programar, nos familiarizar com a linguagem e desenvolver sistemas.
Por fim, dentro dessa plataforma, temos que conhecer alguns elementos:
- JVM – Java Virtual Machine ( A máquina virtual que falamos ali em cima)
- JRE – Java Runtime Environment ( É preciso instalar para que a aplicação execute)
- JDK – Java Development Kit ( Kit de desenvolvimento Java para programadores)
Todos esses três precisam ser instalados no computador para que a aplicação funcione. Contudo, no computador que vai apenas executar, basta a JRE.
No próximo post, daremos início aos princípios básicos da lógica de programação com Java.
É sempre importante revisarmos esses conceitos teóricos para entendermos como um programa realmente funciona.
Caso você não queira perder o próximo post, basta inscrever-se no blog.