- O que é Java?
- O que é a plataforma Java?
- Definição e significado de Java
- Para que é usado o Java?
- História da Linguagem de Programação Java
- Versões Java
- Características Java
- Componentes da linguagem de programação Java
- Java Development kit (JDK)
- Porque usar JDK?
- Java Virtual Machine (JVM):
- Porquê JVM?
- Java Runtime Environment (JRE)
- Por que usar JRE?
- Diferentes tipos de plataformas Java
- O que é um PC?
- O que é a linguagem Assembly?
- O que são Assembler e Compilador?
- Como funciona o Java Virtual Machine?
- Como a Plataforma Java é independente?
O que é Java?
Java é uma linguagem de programação de uso geral, baseada em classes e orientada a objetos, projetada para ter menos dependências de implementação. É uma plataforma computacional para o desenvolvimento de aplicações. Java é rápido, seguro e confiável, portanto. É amplamente utilizada para o desenvolvimento de aplicações Java em laptops, data centers, consoles de jogos, supercomputadores científicos, telefones celulares, etc.
O que é a plataforma Java?
Java Platform é uma coleção de programas que ajudam os programadores a desenvolver e executar aplicativos de programação Java de forma eficiente. Ela inclui um motor de execução, um compilador e um conjunto de bibliotecas. É um conjunto de softwares e especificações para computadores. James Gosling desenvolveu a plataforma Java na Sun Microsystems, e a Oracle Corporation adquiriu-a mais tarde.
Neste tutorial de Java, você aprenderá –
- O que é Java?
- O que é plataforma Java?
- Definição e significado de Java
- Para que é usado Java?
- História da linguagem de programação Java
- Versões Java
- Características Java
- Componentes da linguagem de programação Java
- Diferentes tipos de plataformas Java
- O que é um PC?
- O que é a linguagem Assembly?
- O que são Assembler e Compiler?
- Como funciona a máquina virtual Java?
- Como é independente da plataforma Java?
>
>
Este vídeo apresenta a plataforma Java, e explica porque Java é uma plataforma, bem como uma linguagem de programação.
Clique aqui se o vídeo não estiver acessível
Definição e significado de Java
Java é uma linguagem multi-plataforma, orientada a objetos e centrada em rede. É uma das linguagens de programação mais utilizadas. Java também é usada como plataforma de computação.
É considerada como uma das linguagens de programação rápidas, seguras e confiáveis preferidas pela maioria das organizações para construir seus projetos.
Para que é usado o Java?
Aqui estão algumas aplicações Java importantes:
- É usado para desenvolver aplicações Android
- Ajuda-o a criar software empresarial
- Aplicações de Java para telemóveis
- Aplicações de computação científica
- Uso para grandes análises de dados
- Programação Java de dispositivos de hardware
- Uso para tecnologias Server-Side como Apache, JBoss, GlassFish, etc.
História da Linguagem de Programação Java
Aqui estão marcos importantes da história da linguagem Java:
- A linguagem Java foi inicialmente chamada de OAK.
- Originalmente, foi desenvolvida para lidar com dispositivos portáteis e set-top boxes. Oak foi um enorme fracasso.
- Em 1995, a Sun mudou o nome para “Java” e modificou a linguagem para aproveitar o crescente negócio de desenvolvimento www (World Wide Web).
- Later, em 2009, a Oracle Corporation adquiriu a Sun Microsystems e tomou posse de três importantes ativos de software da Sun: Java, MySQL, e Solaris.
Versões Java
Aqui está um breve histórico de todas as versões Java com a sua data de lançamento.
Versões Java | Data de lançamento |
JDK Alfa e Beta | 1995 |
JDK 1.0 | 23rd Jan 1996 |
JDK 1.1 | 19 de fevereiro de 1997 |
J2SE 1.2 | 8 de dezembro de 1998 |
J2SE 1.3 | 8 de Maio de 2000 |
J2SE 1.4 | 6 de Fevereiro de 2002 |
J2SE 5.0 | 30 Set 2004 |
Java SE 6 | 11th Dez 2006 |
Java SE 7 | 28 Jul 2011 |
Java SE 8 | 18º Mar 2014 |
Java SE 9 | 21º Set 2017 |
Java SE 10 | 20º Mar 2018 |
JAVA SE 11 | 25º Set 2018 |
JAVA SE 12 | 19th Mar 2019 |
JAVA SE 13 | 17th Set 2019 |
JAVA SE 14 | 17th Mar 2020 |
JAVA SE 15 | 15 Set 2020 (última versão Java) |
Características Java
Aqui estão algumas características Java importantes:
- É uma das linguagens de programação fáceis de usar para aprender.
- Escrever código uma vez e executá-lo em quase qualquer plataforma de computação.
- Java é independente de plataforma. Alguns programas desenvolvidos em uma máquina podem ser executados em outra máquina.
- Foi projetado para construir aplicações orientadas a objetos.
- É uma linguagem multithreaded com gerenciamento automático de memória.
- É criado para o ambiente distribuído da Internet.
- Facilita a computação distribuída como sua centrada na rede.
Componentes da linguagem de programação Java
Um programador Java escreve um programa em uma linguagem legível por humanos chamada Código Fonte. Portanto, a CPU ou Chips nunca compreendem o código fonte escrito em qualquer linguagem de programação.
Estes computadores ou chips entendem apenas uma coisa, que é chamada de linguagem ou código de máquina. Estes códigos de máquina funcionam ao nível da CPU. Portanto, seriam códigos de máquina diferentes para outros modelos de CPU.
No entanto, você precisa se preocupar com o código da máquina, já que programar é tudo sobre o código fonte. A máquina entende este código fonte e os traduz em código compreensível para a máquina, que é um código executável.
Todas estas funcionalidades acontecem dentro dos 3 componentes da plataforma Java a seguir:
Java Development kit (JDK)
JDK é um ambiente de desenvolvimento de software utilizado para fazer applets e aplicações Java. A forma completa do JDK é o Java Development Kit. Os desenvolvedores Java podem usá-lo em Windows, macOS, Solaris e Linux. JDK ajuda-os a codificar e executar programas Java. É possível instalar mais de uma versão do JDK no mesmo computador.
Porque usar JDK?
Aqui estão as principais razões para usar JDK:
- JDK contém ferramentas necessárias para escrever programas Java e JRE para executá-los.
- Inclui um compilador, lançador de aplicações Java, Appletviewer, etc.
- Compiler converte código escrito em Java em código byte.
- O lançador de aplicações Java abre um JRE, carrega a classe necessária, e executa seu método principal.
Java Virtual Machine (JVM):
Java Virtual Machine (JVM) é um motor que fornece um ambiente de tempo de execução para conduzir o código ou aplicações Java. Ele converte o bytecode Java em linguagem de máquina. JVM é uma parte do Java Run Environment (JRE). Em outras linguagens de programação, o compilador produz código de máquina para um determinado sistema. No entanto, o compilador Java produz código para uma máquina virtual conhecida como Java Virtual Machine.
Porquê JVM?
Aqui estão as razões importantes para usar JVM:
- JVM fornece uma forma independente de plataforma para executar código fonte Java.
- Tem numerosas bibliotecas, ferramentas e frameworks.
- Embora você execute um programa Java, você pode executar em qualquer plataforma e economizar muito tempo.
- JVM vem com o compilador JIT (Just-in-Time) que converte código fonte Java em linguagem máquina de baixo nível. Portanto, ele roda mais rápido que uma aplicação normal.
Java Runtime Environment (JRE)
JRE é um software que é projetado para executar outros softwares. Ele contém as bibliotecas de classes, a classe loader e JVM. Em termos simples, se você quiser executar um programa Java, você precisa do JRE. Se você não é um programador, você não precisa instalar JDK, mas apenas JRE para rodar programas Java.
Por que usar JRE?
Aqui estão as principais razões para usar o JRE:
- JRE contém bibliotecas de classes, JVM, e outros arquivos de suporte. Ele não inclui nenhuma ferramenta para desenvolvimento Java como um depurador, compilador, etc.
- Ele usa classes de pacotes importantes como bibliotecas matemáticas, swing, utilitárias, lang, awt, e runtime.
- Se você tem que executar applets Java, então o JRE precisa estar instalado no seu sistema.
Diferentes tipos de plataformas Java
Existem quatro tipos diferentes de plataformas de linguagem de programação Java:
1. Plataforma Java, Edição Padrão (Java SE): A API do Java SE oferece a funcionalidade central da linguagem de programação Java. Ela define todas as bases de tipo e objeto para classes de alto nível. É utilizada para redes, segurança, acesso a banco de dados, desenvolvimento de interface gráfica de usuário (GUI), e análise de XML. 4. Java FX: O JavaFX é uma plataforma para o desenvolvimento de aplicativos ricos para internet usando uma API leve de interface com o usuário. Ele utiliza mecanismos gráficos e de mídia acelerados por hardware que ajudam o Java a tirar proveito de clientes de maior desempenho e uma API moderna de alto nível e aparência para conexão a fontes de dados em rede.
Para entender a linguagem de programação Java, precisamos entender algum conceito básico de como um programa de computador pode executar um comando e executar a ação.
O que é um PC?
Um computador é um dispositivo electrónico capaz de executar cálculos. Todos sabemos que é composto por um monitor, teclado, mouse e memória para armazenar informações. Mas o componente mais importante do computador é um PROCESSOR. Tudo isto pensa em computador, mas a questão é como o computador faz este pensamento? Como ele entende o texto, imagens, vídeos, etc.?
O que é a linguagem Assembly?
O computador é um dispositivo electrónico, e só pode compreender sinais electrónicos ou sinais binários. Por exemplo, o sinal eletrônico de 5 volts pode representar o número binário 1, enquanto 0 volts pode representar o número binário 0. Assim, o seu PC é continuamente bombardeado com estes sinais.
Oito bits de tais sinais são agrupados para interpretar Texto, numérico e símbolos.
Por exemplo, o símbolo # é identificado pelo computador como 10101010. Da mesma forma, o padrão para adicionar uma função é representado por 10000011.
Isto é conhecido como computação de 8 bits. O processador do dia atual é capaz de decodificar o tempo de 64 bits. Mas qual é a relação deste conceito com a linguagem de programação JAVA? Vamos entender estes como um exemplo.
Se você quiser dizer ao computador para adicionar dois números (1+2) representados por alguns números binários (10000011), como você vai dizer isso para o seu computador? Sim, vamos usar a linguagem assembly para que o nosso código seja executado.
“A linguagem assembly é a forma mais elementar das linguagens de desenvolvimento de software”.
Vamos dar o comando a um computador neste formato, como mostrado abaixo. O seu código para adicionar dois números nesta linguagem estaria nesta ordem.
- Disponibilizar número 1 no local da memória digamos A
- Disponibilizar número 2 no local da memória digamos B
- Adicionar conteúdo do local A & B
- Resultados da loja
Mas como vamos fazer isso? Nos anos 50, quando os computadores eram enormes e consumiam muita energia, você convertia seu código de montagem em código de máquina correspondente a 1 e 0 usando folhas de mapeamento. Mais tarde, este código será perfurado nos cartões da máquina e alimentado para o computador. O computador irá ler estes códigos e executar o programa. Isto seria um longo processo então até ASSEMBLER vir para ajudar.
O que são Assembler e Compilador?
Com o avanço da tecnologia, foram inventados dispositivos i/o. Você poderia digitar seu programa diretamente no PC usando ASSEMBLER. Ele o converte no código da máquina correspondente (110001…) e o alimenta para o seu processador. Voltando ao nosso exemplo de adição de (1+2), o assembler irá converter este código em código de máquina e saída.
Que além disso, você também terá que fazer chamadas para criar funções do Sistema Operacional fornecidas para exibir a saída do código.
But alone the assembler is not involved in this process; it also requires the compiler to compile the long code into a small chunk of codes. Com o avanço das linguagens de desenvolvimento de software, todo este código assembly poderia encolher em apenas uma linha de impressão f 1+2 A com o software chamado COMPILER. Ele é usado para converter o seu código da linguagem c em código de montagem. O assembler converte-o em código de máquina correspondente. Este código de máquina será transmitido para o processador. O processador mais comum usado no PC ou Computadores é o processador Intel.
Os compiladores atuais vêm empacotados com assembler podem converter diretamente o seu código de linguagem superior em código de máquina.
Agora, suponha que o sistema operacional Windows roda neste processador Intel, uma combinação de sistema operacional mais o processador é chamado de PLATFORM. A plataforma mais comum no mundo é o Windows, e a Intel é chamada de Plataforma Wintel. As outras plataformas populares são AMD e Linux, Power PC, e Mac OS X.
Agora, com uma mudança no processador, as instruções de montagem também serão alteradas. Por exemplo, as instruções de montagem também serão alteradas:
- Adicionar instrução na Intel pode ser chamada ADDITION para AMD
- OU ADD Matemática para Power PC
E, com uma mudança no Sistema Operacional, o nível de chamadas de nível de SO e a natureza também mudarão.
Como desenvolvedor, eu quero que meu programa funcione em todas as plataformas para maximizar minhas receitas. Então eu teria que comprar compiladores separados que convertem meu comando print f em código de máquina nativo.
Mas os compiladores são caros, e há uma chance de problemas de compatibilidade. Então comprar e instalar um compilador separado para diferentes sistemas operacionais e processadores não é viável. Então, o que pode ser uma solução alternativa? Entre na linguagem Java.
Como funciona o Java Virtual Machine?
Usando a Máquina Virtual Java, este problema pode ser resolvido. Mas como ele funciona em diferentes processadores e S.O. Vamos entender este processo passo a passo.
Passo 1) O código para exibir a adição de dois números é System.out.println(1+2), e salvo como um arquivo .java.
Passo 2) Usando o compilador java o código é convertido em um código intermediário chamado bytecode. A saída é um arquivo .class.
Passo 3) Este código não é entendido por nenhuma plataforma, mas apenas por uma plataforma virtual chamada Máquina Virtual Java.
Passo 4) Esta Máquina Virtual reside na RAM do seu sistema operacional. Quando a Máquina Virtual é alimentada com este bytecode, ela identifica a plataforma em que está trabalhando e converte o bytecode no código da máquina nativa.
Apesar de trabalhar no seu PC ou navegar na web, sempre que vir um destes ícones, tenha a certeza de que a máquina virtual java está carregada na sua RAM. Mas o que torna o Java lucrativo é que o código, uma vez compilado, pode ser executado não só em todas as plataformas de PC, mas também em celulares ou outros gadgets eletrônicos que suportam Java.
Hence,
“Java é uma linguagem de programação assim como uma Plataforma”
Como a Plataforma Java é independente?
Como o compilador C, o compilador Java não produz código executável nativo para uma máquina em particular. Ao invés disso, o Java produz um formato único chamado bytecode. Ele é executado de acordo com as regras estabelecidas na especificação da máquina virtual. Portanto, Java é uma linguagem independente de plataforma.
Bytecode é compreensível para qualquer JVM instalado em qualquer SO. Em resumo, o código fonte java pode ser executado em todos os sistemas operacionais.
Sumário:
- Java é uma linguagem de programação multi-plataforma, orientada a objetos e centrada em rede Java é uma linguagem de programação de propósito geral, baseada em classes e orientada a objetos.
- Java Platform é uma coleção de programas que ajudam programadores a desenvolver e executar aplicações Java eficientemente.
- Meaning of Java: Java é uma linguagem de programação multi-plataforma e centrada em rede.
- É usado principalmente para desenvolver aplicações Android e Enterprise Software.
- 2009, a Oracle Corporation adquiriu a Sun Microsystems e tomou posse de três importantes ativos de software da Sun: Java, Solaris e MySQL.
- A última versão do Java lançada em 15 de setembro de 2020
- A melhor característica do Java é que é uma das linguagens de programação mais fáceis de aprender.
- Os quatro tipos de plataformas de linguagem de programação Java são: 1) Plataforma Java, Standard Edition (Java SE) 2) Plataforma Java, Enterprise Edition (Java EE) 3) Plataforma Java, Micro Edition (Java ME) 4) JavaFX
- Um computador é um dispositivo eletrônico capaz de realizar cálculos.
- O computador só entende sinais eletrônicos ou sinais binários.
- Assembler é uma tecnologia avançada que converte o núcleo da fonte para o código da máquina correspondente (110001…) e alimenta o seu processador.