image

Accede a bootcamps ilimitados y a más de 650 cursos

50
%OFF
Article image
DIO Community
DIO Community13/10/2025 09:19
Compartir

🚀 37ª Competição de Artigos – Fundamentos de Java

    Java é o idioma que move plataformas, nuvens e ideias e você está convidado(a) a mostrar seu talento! Do básico ao avançado, cada linha pode virar conhecimento compartilhado, gerar impacto e inspirar novas mentes. Escreva com paixão, contribua com a comunidade e prove como o aprendizado contínuo transforma carreiras. O futuro é seu! 

    Nesta edição da Competição de Artigos da DIO, você terá de 13/10 a 24/10 para mergulhar no tema, preparar seu artigo com calma e compartilhar suas ideias com a comunidade. 

    E o melhor: além de compartilhar seu conhecimento sobre Fundamentos de Java, você pode ganhar até R$500

    Participe da 37ª Competição de Artigos – Fundamentos de Java e mostre que você pode hackear o amanhã! 

    🔥 O que você ganha com isso? 

    Além de visibilidade e autoridade, você pode conquistar: 

    💰 Premiação em dinheiro 

    🏆 Vaga garantida no Hall of Fame Q4 

    🌟 Destaque entre empresas do Talent Match 

     

    🎯 Como funciona? 

    📌 Tema central: Fundamentos de Java 

    Escreva um artigo original, bem estruturado e inspirador, explorando um dos subtemas sugeridos abaixo. 

    Subtemas para explorar: 

    • Primeiros passos e boas práticas com Java 
    • Orientação a objetos com Java 
    • Erros comuns de iniciantes em Java e como evitá-los 
    • Oque é o Java Stream API 

    📌 Validação do artigo: 

    Adicione a tag “Java” no campo “Digite a tecnologia” no momento da publicação. 

    image 

    ⚠️ Sem essa tag, seu artigo não será considerado para a competição. 

    📊 Critérios de Avaliação 

    A pontuação será definida com base na qualidade, originalidade, formatação e profundidade técnica do artigo. 

    Confira a tabela de pontuação geral: 

    image

    Critérios educacionais: 

    image  

    🏆 Premiação – Transforme seu conhecimento em oportunidade!  

    🥇 1º lugar – R$500  

    🥈 2º lugar – R$250  

    🥉 3º lugar – R$100  

    Os vencedores serão anunciados na plataforma da DIO e notificados por e-mail. O pagamento será feito via Social Bank. 

    🌟 Por que participar? 

    • Mostre que Fundamentos de Java é presente e futuro da tecnologia 
    • Compartilhe conhecimento e inspire milhares de estudantes 
    • Fortaleça sua autoridade explorando um tema de alta relevância 
    • Tenha seu conteúdo analisado por empresas do Talent Match 

     

    📝 Como escrever um artigo campeão? 

    📌 Guia de como escrever um bom artigo: [Clique aqui!] 

    📌 Regulamento oficial da competição: [Regulamento] 

    📌 Inspire-se com os artigos vencedores das edições anteriores: 

    🥇 [1º lugar] 

    🥈 [2º lugar] 

    🥉 [3º lugar] 

     

    ⏰ Fique atento aos prazos 

    📅 Submeta até: 24/10 às 14h 

    🏁 Anúncio dos vencedores: até 31/10 

    Agora você tem duas semanas para participar e mostrar seu potencial! 

    🌍 Hackeie o amanhã 

    Essa é a sua chance de escrever com propósito, compartilhar sua visão e mostrar ao mundo como Fundamentos de Java está redefinindo a tecnologia. 

    Escreva, publique e inspire! 🚀 

    Compartir
    Recomendado para ti
    Binance - Blockchain Developer with Solidity 2025
    Neo4J - Análise de Dados com Grafos
    Cognizant - Mobile Developer
    Comentarios (12)

    RS

    Rudson Santana - 24/10/2025 22:10

    Fundamentos de Java: Os 10 Erros Mais Comuns de Iniciantes e Como Evitá-los

    Introdução

    Java é uma das linguagens de programação mais utilizadas no mundo, presente em aplicações web, mobile, desktop e sistemas embarcados. No entanto, para quem está iniciando, é comum cometer erros que podem dificultar o aprendizado e a evolução como desenvolvedor.

    Este artigo tem como objetivo apresentar os erros mais frequentes cometidos por iniciantes em Java e oferecer soluções práticas para evitá-los. Compreender essas falhas e aplicar boas práticas desde o início é essencial para escrever códigos mais limpos, seguros e eficientes.

    1. Erros de Comparação e Escopo

    1.1 Usar == para comparar objetos

    O operador == compara referências de memória, não o conteúdo dos objetos. Isso pode gerar resultados inesperados ao comparar Strings:

    String a = "Java";
    String b = new String("Java");
    
    System.out.println(a == b);       // false
    System.out.println(a.equals(b));  // true
    

    Solução: Use sempre .equals() ou Objects.equals() para comparar conteúdos.

    1.2 Esquecer de inicializar variáveis

    Variáveis locais devem ser inicializadas antes do uso. Caso contrário, ocorre erro de compilação:

    int x;
    System.out.println(x); // Erro de compilação
    

    Solução: Sempre atribua um valor inicial, mesmo que provisório.

    1.3 Confundir escopo de variáveis

    Declarar variáveis com o mesmo nome em escopos aninhados pode causar erros:

    int x = 5;
    if (true) {
    int x = 10; // Erro: variável já declarada
    }
    

    Solução: Use nomes descritivos e evite reutilizar nomes em escopos próximos.

    2. Erros de Lógica, Nomenclatura e Qualidade

    2.1 Tratar exceções de forma genérica

    Evite capturar exceções com Exception de forma ampla:

    try {
    int resultado = 10 / 0;
    } catch (Exception e) {
    System.out.println("Erro!");
    }
    

    Solução: Use exceções específicas como ArithmeticException e forneça mensagens claras.

    2.2 Ignorar boas práticas de nomenclatura

    Evite nomes genéricos como x, temp ou data. Prefira nomes descritivos:

    • Classes: PascalCase → MinhaClasse
    • Métodos/variáveis: camelCase → calcularTotal()
    • Constantes: SCREAMING_SNAKE_CASE → MAX_VALOR


    2.3 Confundir Overloading e Overriding

    • Overloading: Mesma classe, métodos com mesmo nome e parâmetros diferentes.
    • Overriding: Substituição de método da superclasse com mesma assinatura.

    Solução: Use @Override para garantir que a sobrescrita está correta.

    3. Erros Avançados de Performance e Orientação a Objetos

    3.1 Uso indevido de static

    Evite usar static em variáveis de estado. Isso pode causar problemas em ambientes multi-thread.

    Solução: Use static apenas para constantes ou métodos utilitários.

    3.2 Quebrar o contrato de equals() e hashCode()

    Se sobrescrever equals(), também deve sobrescrever hashCode(). Caso contrário, estruturas como HashMap e HashSet podem funcionar incorretamente.

    3.3 Não fechar recursos de I/O

    Sempre feche arquivos, conexões e streams para evitar vazamento de memória.

    Solução: Use try-with-resources para garantir o fechamento automático.

    3.4 Erros de casting

    • Upcasting: Seguro e implícito.
    • Downcasting: Arriscado e exige verificação com instanceof.

    Conclusão

    Conhecer os erros mais comuns em Java é essencial para acelerar o aprendizado e evitar armadilhas que comprometem a qualidade do código. Aplicar boas práticas desde o início ajuda a construir uma base sólida para se tornar um desenvolvedor mais preparado e profissional.


    📚 Referências

    • DevMedia. Erros comuns em Java. Disponível em: https://www.devmedia.com.br. Acesso em: 24 out. 2025.
    • Digital Innovation One (DIO). Fundamentos de Java: Explorando o Poder das Streams. Disponível em: https://www.dio.me. Acesso em: 24 out. 2025.
    • CLARO, Daniela Barreiro; SOBRAL, João Bosco. Programando em Java. PDF disponível em repositórios acadêmicos. Acesso em: 24 out. 2025.
    • Oracle. Java Documentation: Polymorphism, equals() e hashCode(). Disponível em: https://docs.oracle.com/javase. Acesso em: 24 out. 2025.


    AJ

    Ana Jaccard - 24/10/2025 09:35

    image


    Java: Fundamentos e o Poder do WORA – Escreva uma vez, execute em qualquer lugar!

    ☕ 37ª Competição de Artigos – Fundamentos de Java | Por Ana Jaccard


    Ei, programadores e futuros programadores! Você já parou para pensar como uma única linguagem conseguiu atravessar décadas e continuar sendo essencial para a tecnologia moderna? Do seu primeiro 'Hello, World!' até sistemas corporativos e aplicativos móveis, o Java está presente em praticamente tudo! Neste artigo, vamos explorar os fundamentos do Java, sua história, e a magia por trás de seu lema lendário:

    Write Once, Run Anywhere (WORA) – Escreva uma vez, execute em qualquer lugar!


    ☕ A Origem do Java

    Java foi desenvolvido em 1991 por uma equipe liderada por James Gosling, na Sun Microsystems. Originalmente chamado de “Green Talk”, o projeto evoluiu para “Oak”, mas precisou de um novo nome. A escolha de “Java” foi inspirada na gíria americana para café forte – algo perfeito para uma linguagem que nasceu com energia e criatividade.

    O logotipo oficial – uma xícara de café fumegante – tornou-se símbolo universal de produtividade e foco. Afinal, quem nunca precisou de um café para continuar codando?


    💡 Fundamentos do Java

    Antes de mergulhar no código, é importante entender por que o Java é tão poderoso e versátil. Aqui estão os pilares fundamentais que sustentam essa linguagem:

    ·     Plataforma independente: o código Java é compilado em bytecode, que roda em qualquer sistema operacional via JVM (Java Virtual Machine).

    ·     Orientação a Objetos: Java é totalmente orientado a objetos, permitindo modularidade, reuso e manutenção simplificada.

    ·     Sintaxe familiar: inspirada em C e C++, facilita o aprendizado e a migração de outras linguagens.

    ·     Segurança e robustez: Java possui gerenciamento automático de memória (Garbage Collector) e tratamento estruturado de exceções.


    🧠 Como o Java Funciona: WORA em ação

    O segredo do Java está no conceito de “Write Once, Run Anywhere”. Quando você escreve seu código Java e o compila, ele se transforma em bytecode – um formato intermediário interpretado pela JVM. Isso permite que o mesmo programa funcione em qualquer dispositivo ou sistema operacional, sem precisar ser recompilado.

    ·     Código-fonte: escrito em arquivos .java.

    ·     Compilação: o compilador javac converte o código para bytecode (.class).

    ·     Execução: a JVM interpreta o bytecode e o executa em qualquer ambiente compatível.


    👩‍💻 Seu Primeiro Código em Java

    public class OlaMundo {

       public static void main(String[] args) {

           System.out.println("Hello, World! / Olá, Mundo!");

       }

    }

    Experimente rodar esse código e sentir a energia do seu primeiro programa Java!


    🎉 Curiosidades Java Lovers

    ·     Mais de 1,2 milhão de desenvolvedores Java atuam no Brasil (Stack Overflow 2024).

    ·     O Android é baseado em uma variação da JVM.

    ·     O mascote do Java, o Duke, foi criado pelo time original da Sun Microsystems.

    ·     O lema WORA é um dos mais antigos e duradouros slogans tecnológicos do mundo.

    ·     Em 2009, a Sun Microsystems foi vendida por 7,4 bilhões de dúlares, para a gigante Oracle.


    🚀 Conclusão: Java e o Futuro

    Java não é apenas uma linguagem, é um ecossistema que continua evoluindo e se adaptando ao futuro. Seja em servidores, aplicações web, dispositivos móveis ou inteligência artificial, o Java está sempre presente. Dominar seus fundamentos é abrir portas para infinitas oportunidades no mundo da tecnologia.

    Então, pegue seu café ☕, compile seu sonho e escreva o próximo capítulo da sua jornada Java!


    📚 Referências

    Curso de Java - Professor Gustavo Guanabara, Youtube. Apostila Caelum Java e documentação Oracle.

    LO

    Lucimar Oliveira - 23/10/2025 08:42

    GM

    Gisele Marins - 21/10/2025 19:23

    Artigo completo sobre os fundamentos da Programação Orientada a Objetos em Java. Abordei conceitos essenciais como classes, objetos, herança, polimorfismo e encapsulamento com exemplos práticos.

    Ideal pra quem está consolidando base ou migrando pra Java.

    🔗 Leia o artigo completo

    Ronaldo Santana
    Ronaldo Santana - 18/10/2025 18:56

    Este artigo nasceu da minha inspiração em Parasyte e Jujutsu Kaisen

    duas obras que mostram o preço do poder e a importância do controle.

    A mesma lógica vale pra quem escreve Java: poder em troca de responsabilidade.

    👉 Segue esse link para conferir:

    https://web.dio.me/articles/java-parasita-do-conhecimento-fundacoes-que-evoluem-seu-cerebro-de-dev-2559e5807903

    Fernanda Araujo
    Fernanda Araujo - 18/10/2025 02:19

    Olá Community,

    Quer sair da teoria e entender orientação a objetos e APIs em Java de um jeito leve — com um pouco de magia inspirada em Sakura Card Captors? 💫

    Dá uma olhada:

    🔗 https://web.dio.me/articles/fundamentos-de-java-orientacao-a-objetos-e-apis-encantadas-com-sakura-card-captors-f9879f4ec545

    Vinicius Silva
    Vinicius Silva - 17/10/2025 14:18

    💻 Java Stream API: A Forma Mais Inteligente de Trabalhar com Dados no Java


    Se você programa em Java há um tempo, provavelmente já se cansou de ver (ou escrever 😅) aqueles códigos enormes com for, if e listas temporárias só pra filtrar ou transformar alguns dados. Pois é… o Java também percebeu isso.


    Foi aí que nasceu a Stream API, lá no Java 8 — uma das atualizações mais marcantes da linguagem. Com ela, manipular coleções ficou muito mais simples, elegante e moderna.



    ---


    🚀 O que é a Java Stream API?


    A Stream API é uma forma de trabalhar com fluxos de dados (como listas, arrays, conjuntos, etc.) de maneira declarativa, ou seja: você diz o que quer fazer, e o Java se vira pra executar.


    Em vez de se preocupar com o como, você descreve o quê — e isso muda tudo.


    Por exemplo, antes do Java 8, se quiséssemos pegar só os nomes que começam com “A”, faríamos algo assim:


    List<String> nomes = Arrays.asList("Ana", "Bruno", "Alice", "Carlos");

    List<String> comA = new ArrayList<>();


    for (String nome : nomes) {

    if (nome.startsWith("A")) {

    comA.add(nome);

    }

    }


    System.out.println(comA);


    Funciona, mas é um monte de código pra uma tarefa simples.


    Agora veja com Stream API:


    List<String> nomes = Arrays.asList("Ana", "Bruno", "Alice", "Carlos");


    List<String> comA = nomes.stream()

    .filter(nome -> nome.startsWith("A"))

    .toList();


    System.out.println(comA);


    ✨ Simples, direto e com cara de código moderno!



    ---


    🧩 Como funciona uma Stream?


    Uma stream passa por três etapas principais:


    1. Criação → A gente cria a stream a partir de uma coleção.



    2. Processamento → Aplicamos transformações, como filtros, mapeamentos e ordenações.



    3. Resultado final → Obtemos o resultado com uma operação terminal, como toList(), count(), findFirst(), etc.




    Exemplo prático com números:


    List<Integer> numeros = Arrays.asList(1, 2, 3, 4, 5, 6);


    List<Integer> paresDobro = numeros.stream()

    .filter(n -> n % 2 == 0) // pega só os pares

    .map(n -> n * 2) // multiplica por 2

    .toList(); // transforma em lista


    System.out.println(paresDobro);


    💡 Resultado: [4, 8, 12]


    Repara como o código diz claramente o que quer fazer, sem precisar criar variáveis auxiliares ou laços complexos.



    ---


    ⚙️ Operações mais usadas em Streams


    A Stream API é cheia de métodos úteis. Aqui vão alguns dos mais populares:


    Operação Descrição Exemplo


    filter() Filtra elementos com base em uma condição stream.filter(x -> x > 10)

    map() Transforma cada elemento stream.map(x -> x * 2)

    sorted() Ordena os elementos stream.sorted()

    limit() Limita a quantidade de resultados stream.limit(3)

    collect() / toList() Coleta os resultados stream.toList()

    count() Conta quantos elementos há stream.count()




    ---


    ⚡ Streams paralelas — mais desempenho com uma linha!


    Um dos recursos mais poderosos da Stream API é o paralelismo.

    Com ele, o Java divide o processamento em várias threads automaticamente, aproveitando melhor o processador.


    Basta usar parallelStream() em vez de stream():


    List<Integer> numeros = Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9, 10);


    long pares = numeros.parallelStream()

    .filter(n -> n % 2 == 0)

    .count();


    System.out.println("Total de pares: " + pares);


    🧠 Sim, é só mudar uma palavra e seu código já roda de forma paralela!



    ---


    💬 Por que vale a pena aprender Stream API?


    Além de deixar o código mais bonito, a Stream API traz várias vantagens:


    ✅ Menos linhas de código

    ✅ Mais legibilidade e clareza

    ✅ Fácil de aplicar lógica complexa

    ✅ Melhor desempenho com paralelismo

    ✅ Combina muito bem com expressões lambda


    Com o tempo, você percebe que muitos problemas comuns — como filtrar, transformar, somar ou agrupar dados — ficam super rápidos de resolver.



    ---


    🌟 Conclusão


    A Java Stream API é um divisor de águas na linguagem.

    Ela traz o poder da programação funcional para o dia a dia do Java, permitindo escrever códigos mais curtos, bonitos e eficientes.


    Se você ainda está começando, experimente refazer alguns códigos antigos usando Streams — você vai se surpreender com o quanto eles ficam mais simples e legíveis.


    > “Uma vez que você entende Streams, nunca mais quer voltar para os loops tradicionais.” 😄

    #Java

    R

    Rafaela - 17/10/2025 07:24

    R

    Rafaela - 17/10/2025 07:19

    Anjo da guarda criada com o código Java ela e uma ia dentro de uma jóia que protege vítimas de abuso sexual, violência doméstica, sequestro, intolerância religiosa https://www.canva.com/design/DAG0FgdbjJ4/qAE9RkW6XAfS97QVz-EVLg/edit

    Petrick Lima
    Petrick Lima - 17/10/2025 05:47


    Jean Deschamps
    Jean Deschamps - 16/10/2025 23:12

    Curte Java ou só é um curioso por tecnologia?

    Se liga nesse artigo: Fundamentos de Java: entendendo a base de uma das linguagens mais populares do mundo.


    #Java