É comum que as pessoas confundam conceitos distintos devido a nomes, características ou estruturas similares. Um exemplo clássico dessa confusão ocorre entre as linguagens de programação Java e JavaScript.
A mera semelhança nos nomes de Java e JavaScript já é suficiente para gerar confusão. Mas, será que elas realmente compartilham semelhanças em termos de aplicações, estrutura e funcionalidades?
Ou será que a confusão se limita apenas à similaridade dos nomes?
Vamos explorar essas questões para desvendar a verdade.
Java
Java é uma linguagem de programação de alto nível, estruturada em classes e orientada a objetos. É também uma linguagem de propósito geral, o que significa que pode ser utilizada em diversas aplicações. O código Java compilado pode ser executado em qualquer sistema, tornando-a independente de plataforma. Ela segue o princípio “Escreva uma vez, execute em qualquer lugar”. Tudo o que é necessário é um JRE (Java Runtime Environment) para que o código seja executado.
É uma das linguagens de programação mais populares da atualidade, com recursos que atraem desenvolvedores em todo o mundo. Estima-se que mais de 3 bilhões de dispositivos utilizem Java.
Características
Cada linguagem de programação possui um conjunto de características únicas e comuns. Abaixo, vamos destacar algumas das principais características do Java:
Orientação a Objetos
Java é uma linguagem de programação completamente orientada a objetos. Tudo em Java é tratado como um objeto, seguindo o paradigma da programação orientada a objetos, o que facilita a resolução de diversos problemas.
Independência de Plataforma
Como mencionado anteriormente, Java é independente de plataforma. Seu código pode ser executado em diferentes sistemas e plataformas, desde que haja um ambiente JRE disponível.
Alto Desempenho
Java utiliza um compilador chamado JIT (Just-in-Time) que possibilita alto desempenho na execução do código. Java combina a utilização de compilador e interpretador, resultando em uma execução mais rápida em comparação com outras linguagens.
Multi-threading
A capacidade de multi-threading permite que várias tarefas sejam executadas simultaneamente, o que economiza tempo. Em Java, é possível dividir tarefas maiores e utilizar multi-threading para executá-las de forma mais eficiente do que no método tradicional.
Um pouco de história
A Sun Microsystems criou Java em 1995. Inicialmente, o nome da linguagem era Oak. Posteriormente, foi renomeada para Java pelo Dr. Java (James Gosling) e sua equipe, devido à existência de uma empresa com o mesmo nome.
Aplicações
Java pode ser utilizado no desenvolvimento de quatro tipos principais de aplicações:
Vamos explorar cada um deles:
#1. Aplicações Autônomas
Aplicações autônomas, também conhecidas como aplicações de desktop, são aquelas que usamos diariamente em nossos computadores, como navegadores, softwares de produtividade, aplicativos de mídia, jogos, etc.
O kit de ferramentas Java Swing é utilizado para o desenvolvimento de aplicações desktop baseadas em Windows. Já para o desenvolvimento de aplicações desktop baseadas em Ubuntu, pode-se utilizar a estrutura de aplicativos de plataforma cruzada QT. O Qt Jambi é projetado especialmente para Java baseado em QT.
#2. Aplicações Web
Utilizamos diversas aplicações web diariamente, como Twitter, Youtube, WordPress, entre outras. Em Java, é possível criar aplicações web com o auxílio de frameworks como Spring, Hibernate, Servlet, etc.
#3. Aplicações Corporativas
Aplicações corporativas são aquelas de alto nível que processam grandes quantidades de dados e usuários com alta segurança. Aplicações bancárias são um bom exemplo desse tipo de aplicação. O desenvolvimento dessas aplicações em Java pode ser feito com o uso do EJB (Enterprise Java Bean).
#4. Aplicações Móveis
Todo o sistema operacional Android foi desenvolvido com Java. Apesar do surgimento de diversos frameworks de plataforma cruzada, o Google ainda sugere Java para o desenvolvimento de aplicações Android. O desenvolvimento pode ser feito utilizando Java e o Android Studio.
JavaScript
JavaScript é uma linguagem de programação leve, interpretada ou compilada just-in-time. É uma das linguagens de programação mais populares, sendo fundamental para o funcionamento da World Wide Web, junto com HTML e CSS.
Inicialmente, era conhecida como a linguagem de script da web. No entanto, com o surgimento de ambientes como Node e Deno, ela passou a ser executada em diversas plataformas.
JavaScript é uma linguagem de programação de alto nível, multiparadigma, dinâmica e baseada em protótipos. Ela segue as especificações do ECMAScript. Todo aplicativo web utiliza JavaScript para a interação com o usuário, não existindo alternativas.
Características
Vamos analisar algumas características marcantes do JavaScript:
Dinâmico
JavaScript não utiliza tipagem. Essa característica é tanto uma vantagem quanto uma desvantagem para os desenvolvedores. Facilita a escrita de código, mas dificulta a depuração. Existe um superconjunto do JavaScript, o TypeScript, que adiciona tipagem à linguagem.
Independência de Plataforma
JavaScript pode ser executado em qualquer navegador com um motor JavaScript. Além disso, pode ser executado em diversos ambientes usando Node e outras ferramentas JavaScript.
Assíncrono e Síncrono
JavaScript permite a codificação assíncrona e síncrona. A execução síncrona faz com que as instruções sejam executadas uma após a outra, dependendo da execução da anterior. Já a execução assíncrona permite que as instruções sejam executadas sem esperar a conclusão das anteriores.
Funções
As funções em JavaScript são poderosas e são os blocos de construção da linguagem. Permitem diferentes sintaxes e modos de escrita.
Navegador
Em um navegador, é possível realizar praticamente tudo o que um aplicativo web necessita. JavaScript permite manipular o DOM, realizar validações de dados, controlar abas do navegador, modo de tela, etc.
Um pouco de história
Brandan Eich criou o JavaScript em 1995 enquanto trabalhava como programador na Netscape. Ele desenvolveu a linguagem em apenas 10 dias, um feito impressionante.
Inicialmente, o JavaScript era chamado de Mocha. Posteriormente, foi renomeado para LiveScript e, finalmente, para JavaScript.
A mudança de LiveScript para JavaScript ocorreu devido a um contrato de licença entre a Sun e a Netscape. A mudança de nome foi uma estratégia de marketing, já que Java era uma linguagem de programação muito popular na época.
Mas o que é ECMAScript? O JavaScript cresceu muito nos dois primeiros anos após seu lançamento. A Netscape não conseguiu manter tudo sozinha. Por isso, a Netscape entregou a responsabilidade para a ECMA (European Computer Manufacturers Association) para manter e desenvolver as especificações da linguagem. As especificações são rotuladas como ECMA-262 e ECMAScript.
Aplicações
JavaScript permite desenvolver diversos tipos de aplicações. Vamos explorar algumas delas:
#1. Aplicações Web
JavaScript foi criado para a web. Não é surpresa que ele possa ser usado para o desenvolvimento de aplicações web. Existem diversos frameworks como React, Vue, Angular, etc., que facilitam esse processo. Todos esses frameworks foram escritos em JavaScript.
#2. Aplicações Autônomas
Electron é uma estrutura para o desenvolvimento de aplicações desktop multiplataforma. Ele permite desenvolver aplicações desktop utilizando HTML, CSS e JavaScript. O Github criou e mantém o Electron. O principal editor de texto para desenvolvedores JavaScript, o VS Code, também foi desenvolvido utilizando JavaScript.
#3. Aplicações Móveis
JavaScript também pode ser utilizado no desenvolvimento de aplicações móveis, embora não seja tão eficiente quanto Java nesse caso. No entanto, é possível desenvolver aplicações móveis multiplataforma com o uso de frameworks como React Native, Ionic, etc.
#4. Jogos
É possível desenvolver jogos para celular e navegador utilizando JavaScript. Existem diversos motores JavaScript como Phaser, Pixi.js, Babylon.js, etc., que facilitam o desenvolvimento de jogos multiplataforma.
Java vs. JavaScript
Você conseguiu encontrar alguma semelhança ou relação entre Java e JavaScript?
Provavelmente não (exceto pelo acordo entre as empresas). Essa é a única relação entre as duas linguagens. Java e JavaScript são completamente diferentes em semântica e sintaxe.
Código
Vejamos um programa “Hello, World” em ambas as linguagens.
Java
class Main { public static void main(String[] args) { System.out.println("Hello, World!"); } }
JavaScript
<!DOCTYPE html> <html> <head> <title>etechpt.com</title> <link href="https://wilku.top/understanding-java-vs-javascript/style.css" rel="stylesheet" type="text/css" /> </head> <body> <script> alert("Hello, World!"); </script> </body> </html>
console.log("Hello, World!");
Observando os programas em Java e JavaScript, é possível notar que não há similaridade entre eles. São completamente diferentes.
Convenção de Nomes
A convenção de nomenclatura utilizada por Java e JavaScript é similar. Ambas utilizam a convenção camelCase como padrão.
É possível comparar recursos específicos entre Java e JavaScript, mas esses aspectos são comuns entre diversas linguagens de programação. No geral, os pontos centrais de criação e uso de Java e JavaScript são completamente diferentes.
Conclusão
Como demonstrado, não há semelhanças substanciais entre Java e JavaScript. São duas linguagens distintas e importantes em suas respectivas áreas. A confusão entre elas geralmente ocorre devido à similaridade dos nomes. Ambas são linguagens de programação populares. Existe até mesmo um site chamado JavaScriptIsNotJava que reforça a ideia de que JavaScript e Java são duas linguagens distintas.
Bons estudos 🙂