Oracle Java: como evitar riscos e otimizar?

Share on facebook
Share on google
Share on twitter
Share on linkedin
Share on email

O Java está na maioria das plataformas, entretanto, muitas pessoas não a conhecem ou sequer sabem que ela existe. Muitos conhecem o Java como sinônimo de uma linguagem de programação orientada a objetos para desenvolvimento de aplicativos, mas o termo também se refere às inúmeras aplicações que utilizamos em nosso dia-a-dia quando navegamos na Internet.

Recentemente, foi encerrada uma longa disputa judicial entre a Google e Oracle sobre o uso de Java no Android, quando a Suprema Corte dos Estados Unidos concedeu uma vitória para a Alphabet, marca mãe do Google.

A justiça determinou que a companhia não violou leis federais de propriedade intelectual para desenvolver o sistema Android. Os juízes da Suprema Corte revogaram um parecer anterior, que favorecia a Oracle e considerava que o código fonte do Android não fazia uso justo da base do Java. A empresa afirma que a concorrente copiou “estrutura, sequência e organização” de 37 APIs do Java para o Android.

Afinal, algumas redes sociais como por exemplo Facebook e Twitter, utilizam o Java em seu back-end.  O próprio java no android, já mencionado e que utilizamos em nossos smartphones, assim como os aplicativos que instalamos nele, são desenvolvidos nessa linguagem. A ferramenta de mineração e aprendizagem de dados por inteligência artificial Weka, uma das mais populares e utilizadas do mundo, foi totalmente escrito em Java.

A Oracle estima que mais de 3 bilhões de dispositivos no mundo todo utilizam algum produto Java. Desse modo, é possível calcular a influência global da companhia, que não se restringe unicamente aos negócios de tecnologia. Além disso, recursos da plataforma se encontram em outras aplicações, o que faz do licenciamento uma tarefa imprescindível para a boa condução dos negócios.

A assinatura do Java permite fazer uso da versão LTS, com suporte, correção de bugs, e atualizações de segurança garantidos durante o período da assinatura. Também inclui suporte, o qual é realizado através do OTN, onde serão abertos os chamados e realizados os downloads dos updates.

Caso não saiba o que é o Java SE, ou o Java RE, e como ele pode afetar os custos em licenciamento de software na sua organização, esse artigo é para você.

Origens do Java

A história começa em 1991, em San Hill Road empresa filiada a Sun (da qual hoje pertence a empresa Oracle), formado pelo time de engenheiros lliderados por Patrick NaugthonSun Fellow e James Gosling. O grupo estava iniciando um projeto denominado Projeto Green, que consistia na criação de tecnologias modernas de software para empresas eletrônicas de consumo. A ideia principal do Java era que os aparelhos eletrônicos se comunicassem entre si.

O Java foi o primeiro a utilizar decodificares de televisões interagindo em dispositivos portáteis e outros produtos eletrônicos de consumo, foi do mesmo jeito que foi iniciado em 1991, possuindo portabilidade para qualquer ambiente e do desenvolvimento para múltiplas plataformas, em ambientes de eletrônicos de consumo, desde então o Java vem liderando o mercado em termos de linguagem.

Os aplicativos Java possuem uma característica fundamental que permite o desenvolvimento de software sem se preocupar com o tipo de sistema ou plataforma que precisa ser desenvolvida e preparada.

O Java tem feito bastante sucesso tanto entre os programadores quanto usuários comuns por permitir um rápido desenvolvimento e por ter a capacidade de rodar seu código fonte em qualquer sistema que possua suporte à Java Virtual Machine (JVM), ou Máquina Virtual Java. Outras máquinas virtuais e JDKs que podem aumentar a produtividade do desenvolvedor, como o GraalVM Enterprise e o Azul Java, também estão disponíveis para uso. Para ter a Máquina Virtual Java em seu sistema é necessário instalar o JRE (Java Runtime Environment).

Muitos sites, normalmente com conteúdo multimídia (ou mesmo seu internet banking), necessitam que o usuário instale o Java para funcionar corretamente.

Licenciamento: O que mudou após a compra da Sun Microsystems pela Oracle

A Sun anunciou no JavaOne 2006 que o Java se tornaria um software livre de código fonte aberto. A Sun liberou a máquina virtual HotSpot e o compilador como software livre sob a GNU General Public License em 13 de novembro 2006, com uma promessa de que o resto do JDK (que inclui o JRE) seria colocada sob a GPL em Março de 2007. Seguindo a sua promessa de liberar uma JDK plenamente compilável baseada quase totalmente em software livre e de código fonte aberto, no primeiro semestre de 2007, a Sun lançou o código fonte completo da biblioteca de classe sob a GPL em 8 de maio de 2007.

Em 20 de abril de 2009, a Oracle anuncia que comprou a Sun Microsystems por 7,4 bilhões de dólares, impulsionando a desenvolvedora de softwares corporativos no setor de hardware. A empresa é conhecida por ter sistemas baseados nos chips Sparc. Também possui uma carteira vasta de softwares, que inclui o sistema operacional Solaris, o banco de dados de código fonte aberto MySQL e a linguagem de programação Java.

Após a compra da Sun Microsystems pela Oracle, toda a propriedade intelectual da Sun Microsystems foi incorporada pela Oracle, e com isso, o contrato de licenciamento do Java sofreu diversas alterações ao longo do tempo passando de um contrato Open-Source (GPL) para um contrato baseado em licenciamento (BCL/OTN).

Com essa mudança, vieram várias questões como:

  • Posso continuar usando o Java SE gratuitamente?
  • E sobre receber suporte e atualizações?
  • Posso distribuir o Java SE?

Contrato Oracle BCL (Binary Code License) para produtos Java SE

A Oracle continuou a oferecer o uso do Java SE gratuitamente sob o chamado contrato Binary Code License (BCL). Este uso é restrito e gratuito somente se as seguintes condições forem atendidas.

  • Você só pode usar os componentes do Java Standard Edition (por exemplo, JDK, JRE, JavaFX, JRockit JDK) internamente em sua organização para executar seus aplicativos Java (desenvolvidos internamente ou aplicativos de terceiros).
  • Os componentes do Java Standard Edition devem estar sendo usados ​​em desktops ou servidores para uso de propósito geral.
  • Você tem permissão para usar recursos comerciais (por exemplo, Java Flight Recorder, Java Mission Control) com a finalidade de projetar, desenvolver e testar seus programas (por exemplo, seu aplicativo Java desenvolvido internamente) sem qualquer requisito de licença.
  • Você tem permissão para distribuir os componentes do software Java Standard Edition, desde que não modifique ou remova qualquer componente dele. Além disso, você precisa se certificar de que o usuário final concorda com o contrato padrão BCL.

Contrato OTN (Oracle Technology Network) para Oracle Java SE

A partir do Java versão 11 (mais precisamente o lançamento do JDK 11), ou a versão 8u202, o Java Standard Edition não está mais disponível sob o contrato BCL. Em vez disso, os direitos de uso são regidos pelo contrato de licença da Oracle Technology Network (OTN).

Aqui estão os termos mais importantes do contrato de licença OTN, em comparação com o contrato OBCL:

  • Você ainda pode usar os componentes do Java Standard Edition (por exemplo, JDK, JRE, JavaFX, JRockit JDK) internamente em sua organização. No entanto, sob o contrato de licença OTN, você só pode usar o Java Standard Edition com a finalidade de desenvolver, testar, criar protótipos e demonstrar seu aplicativo (desenvolvimento de software).
  • Você não precisa mais fazer nenhuma diferenciação entre computadores e / ou servidores de uso geral e não geral.
  • O uso de recursos comerciais para qualquer tipo de processamento de dados, negócios, fins comerciais ou de produção não é permitido sob o Contrato de Licença OTN.
  • Você não tem permissão para distribuir, fornecer ou transferir o programa Java para terceiros.
  • Você não tem permissão para remover ou modificar nenhum programa Java.

Como com todos os outros produtos Oracle, se você deseja usar o programa Java para qualquer propósito diferente daqueles expressamente permitidos no contrato OTN, você deve obter de uma licença válida que permita tal uso.

Oracle Java Versões

Modelos de licenciamento Java

A Oracle vendia três licenças comerciais diferentes para Java:

  • Java SE Advanced
  • Java SE Advanced Desktop
  • Java SE Suite

Esses programas eram vendidos em uma métrica Named User Plus e / ou Processor (Java SE Advanced Desktop foi licenciado apenas em Named User Plus) na qual você pagava por uma licença e uma taxa de suporte. Desde janeiro de 2019, este modelo de licenciamento não está mais disponível. Em vez disso, a Oracle só disponibiliza seus programas Java Standard Edition por meio das chamadas assinaturas:

  • Java SE Subscription
  • Java SE Desktop Subscription

Oracle JDK vs Oracle OpenJDK

Até o Java 11, você podia baixar o JDK da Oracle e usá-lo para uso em produção com suporte pago ou uso em outros ambientes gratuitamente. A partir do Java 11, a Oracle introduziu duas compilações JDK diferentes:

  • Oracle JDK (comercial) – gratuito, desde que você não o use em um ambiente de produção. Você receberá atualizações e inclui suporte.
  • Oracle OpenJDK (código aberto) – gratuito em qualquer ambiente, como qualquer biblioteca de código aberto. Quando se trata de obter as atualizações de segurança, é menos frequente, pois é disponibilizado pela comunidade do Java.

Oracle JDK e Oracle OpenJDK são iguais do ponto de vista da funcionalidade. Do ponto de vista do suporte técnico, há uma diferença. A Oracle fornecerá a você patches de segurança e / ou atualizações para o Oracle JDK, enquanto a comunidade do Java fornecerá a você para a versão Oracle OpenJDK. Muitos usuários finais estão pensando em migrar para o OpenJDK em vez da versão paga da Oracle. A questão que você deve considerar é quanto tempo e energia sua organização levará para atualizar / atualizar de forma contínua suas versões do OpenJDK?

Oracle Java SAM
Framework 4Matt de Otimização Oracle Java

Conclusão e Recomendações

O Java Standard Edition (incluindo JDK, JRE, JavaFX, JRockit JDK) continuará disponível gratuitamente enquanto for usado para desenvolver, testar, prototipar e demonstrar os aplicativo(s) desenvolvido(s) internamente. Caso você esteja usando o Java Standard Edition para qualquer processamento de dados, negócios, comerciais ou propósitos de produção, o uso do Java terá um custo adicional, pois deve ser licenciado.

Como alternativa, a empresa pode decidir começar a usar o OpenJDK, ou manter as versões que são contempladas pelo contrato BCL, o que não é recomendado, pois sua organização ficará sem o suporte e os patches de segurança disponibilizado para o produto pela Oracle.

A 4Matt pode auxiliar sua empresa a otimizar os custos em Java das seguintes formas:

  • Análise e categorização do relatório de inventário, classificando o Java que está instalado nas máquinas (Desktops, servidores e VMs) de acordo com sua versão e contrato de licenciamento
  • Avaliação do uso Oracle Java, verificando a necessidade para cada ambiente e uso de features comerciais.
  • Criação de relatório com resultados da avaliação
  • Assessoria na otimização de licenciamento e atualização dos produtos Oracle Java

Caso você ou sua empresa necessite de algum desses serviços ou falar um pouco mais sobre Oracle Java, fale conosco por AQUI.

Indirect Tag: várias linguagens de programação, java porém, recursos humanos, faça login, oracle sobre uso, disputa entre google, google vence, desenvolvimento de aplicativos, apis do java, juízes da suprema corte, inteligência artificial, custo adicional, longa disputa, oracle anuncia, redes sociais, graalvm enterprise, disputa judicial, produtividade do desenvolvedor, uso justo

Relacionados

Newsletter 4Matt

Materiais Gratuitos

Tenha acesso a E-Books, Infográficos, Webinars e Vídeos

Posts Relacionados

SAM - Software Asset Management

Oracle Java: como evitar riscos e otimizar?

O Java está na maioria das plataformas, entretanto, muitas pessoas não a conhecem ou sequer sabem que ela existe. Muitos conhecem o Java como sinônimo

SAM Pro
SAM - Software Asset Management

ServiceNow SAM Pro

A ServiceNow iniciou uma série chamada de Now on Now, onde eles compartilham como usam os produtos ServiceNow internamente para transformar a operação e criar