Introdução ao Java
Published: 2024-01-07 01:01:37

Estou registrando o progresso dos meus estudos em Java, abrangendo desde conceitos introdutórios até aspectos mais avançados da linguagem. 

**Tópicos abordados**
Aqui está um resumo dos tópicos abordados no texto:

1. **História e Origens do Java:**
   - Projeto Green pela Sun Microsystems.
   - Desenvolvimento por James Gosling.
   - Renomeação para Java.

2. **Expansão com a World Wide Web:**
   - Salvação do projeto em 1993.

3. **Java na Atualidade:**
   - Uso onipresente em web, corporativo e dispositivos móveis.

4. **Plataformas e Ambientes de Desenvolvimento:**
   - JSE, JEE, JME, JFX.

5. **Versões LTS para Estabilidade.**

6. **Componentes Java:**
   - JDK (Desenvolvimento) e JRE (Execução).
   - Importância da JVM (Máquina Virtual Java).

7. **Exemplo de Programa Java:**
   - "Olá, Mergulhador!".

8. **Convenções de Código em Java.**

9. **Fundamentos de Variáveis em Java.**


![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/dtm7k4h17uq7fq1tnw1k.png)

# História

Em um mundo cada vez mais conectado e voltado para a tecnologia, a linguagem de programação Java se destaca como uma das ferramentas mais versáteis e poderosas. Mas como tudo começou? Vamos explorar a fascinante história por trás do Java.

No início da década de 1990, a Sun Microsystems, uma empresa voltada para dispositivos eletrônicos inteligentes, iniciou um projeto interno chamado Green em busca de uma linguagem que pudesse atender às demandas emergentes desse mercado. O líder do projeto, James Gosling, desenvolveu uma linguagem baseada em C e C++ que ele batizou de Oak (carvalho), inspirado na árvore visível de sua janela na Sun.

Contudo, surgiu um contratempo quando descobriram que já existia uma linguagem chamada Oak. Durante uma visita a uma cafeteria, a sugestão do nome Java, em referência à cidade de origem de um café importado, ganhou aceitação.

O projeto Green enfrentou desafios, especialmente devido à lentidão no desenvolvimento do mercado de dispositivos eletrônicos para consumidores finais. A reviravolta ocorreu em 1993, quando a World Wide Web explodiu em popularidade. A Sun viu o potencial imediato do Java para criar conteúdo dinâmico na web, salvando assim o projeto.

Em maio de 1995, a Sun Microsystems anunciou oficialmente o Java em uma conferência, gerando um interesse imediato na comunidade devido à crescente popularidade da World Wide Web.

## Java Hoje: Uma Presença Onipresente

Desde seu lançamento, o Java se tornou uma linguagem onipresente, sendo utilizada em diversos contextos, como:

- Páginas da web com conteúdo interativo e dinâmico.
- Aplicações corporativas de grande porte.
- Softwares destinados aos consumidores finais.
- Aplicativos para smartphones.

## Plataformas e Ambientes de Desenvolvimento

A versatilidade do Java se reflete na variedade de ambientes de desenvolvimento que oferece:

1. **JSE (Java Standard Edition):** A base da plataforma, direcionada a aplicações para PCs e servidores. Inclui o ambiente de execução e bibliotecas comuns, como o toolkit Swing para desenvolvimento de interfaces gráficas.

2. **JEE (Java Enterprise Edition):** Voltada para o desenvolvimento de aplicações corporativas e para a web, incluindo frameworks como JPA e JSP.

3. **JME (Java Micro Edition):** Projetada para o desenvolvimento de aplicações em dispositivos móveis e embarcados.

4. **JFX (Java FX):** Uma tecnologia que, combinada com Java, permite a criação de aplicações com aparência moderna e conteúdo rico de áudio e vídeo.

## Versões LTS Java: Garantindo Estabilidade

O conceito de Long-Term Support (LTS) nas versões do Java permite que os provedores de tecnologia foquem no suporte a versões específicas por um período mais longo. Isso proporciona estabilidade e facilita a manutenção de produtos.

## Componentes Java: Desenvolvimento e Execução

O Java se divide em componentes de desenvolvimento (JDK) e execução (JRE). Enquanto o JDK é necessário para desenvolver aplicações, o JRE é suficiente para executar programas.

- **JDK (Java Development Kit):** Kit de Desenvolvimento Java.
- **JRE (Java Runtime Environment):** Ambiente de Execução Java.

## Máquina Virtual Java: O Coração da Execução

A Máquina Virtual Java (JVM) é crucial para o funcionamento da linguagem. Ela carrega e executa aplicativos Java, convertendo bytecodes em código executável de máquina. A JVM gerencia os aplicativos enquanto são executados.

## Primeiros Passos em Java: "Olá, Mergulhador!"

Vamos dar uma olhada em um simples programa Java que imprime a mensagem "Olá, Mergulhador!" na saída do sistema:

```java
public class OlaMergulhador {
    // Declarando o método
    public static void main(String[] args) {
        // Imprime uma linha na saída do sistema
        System.out.println("Olá, mergulhador!");
    }
}
```

## Convenções de Código Java: Mantendo a Ordem e a Legibilidade

Em Java, seguir boas práticas de codificação é essencial. Algumas convenções incluem:

- Utilização de comentários para documentação e explicação do código.
- Organização de pacotes e instruções de importação.
- Alinhamento e quebras de linha adequados para melhor legibilidade.

```java
/*
 * Classname
 * (nome da classe Java)
 *
 * Version information (versionamento)
 *
 * Date
 * (Data e Hora)
 *
 * author
 * (autor(res) da criação)
 * Copyright notice
 * (informações do método, pra que serve, ideia principal)
 */
```

## Variáveis em Java: Fundamentos do Desenvolvimento

Em Java, as variáveis desempenham um papel crucial. Elas podem ser de diferentes tipos, como inteiros, strings e objetos. Vamos explorar alguns conceitos fundamentais:

- **Declaração de Variáveis:**
  ```java
  int numero;
  String nome;
  ```

- **Nomeação de Variáveis:**
  - Deve conter letras, números e sublinhados.
  - Começa com letra e segue o padrão Camel Case para nomes compostos.

- **Variáveis de Classe:**
  - Podem ter modificadores de acesso como private, public ou protected.

- **Variáveis Finais e Constantes:**
  - Variáveis finais não podem ser modificadas após a atribuição.
  - Constantes são declaradas com static final.

- **Tipos Primitivos:**
  - Java possui tipos primitivos para representar dados numéricos, booleanos e caracteres.

Esses são apenas alguns dos tópicos introdutórios que você encontrará ao explorar o vasto mundo do Java. Em posts futuros, vamos aprofundar em conceitos como orientação a objetos, estruturas de controle e muito mais.