Quer ter acesso a todos os cursos desse Guia?

Programador Java

Aprender Java não é uma tarefa simples, mas seguindo a ordem proposta nesse Guia, você evitará muitas confusões e perdas de tempo no seu aprendizado. Vem aprender java de verdade, vem!

Começando no Java

Olá, fico feliz que você tenha optado pelo Java. Provavelmente você está se perguntando por onde começar. Bom, esclarecer essa e outras dúvidas é o papel deste Guia de Referência. E como ponto de partida te indicamos o DevCast a seguir, no qual apresentamos a linha de aprendizado do programador Java. Vamos lá?

Curioso para ver código Java? Os cursos abaixo te oferecem esse primeiro contato com a linguagem, além de apresentar como compilar um primeiro programa:

Quer saber aonde ir agora? Assista ao DevCast a seguir e descubra onde temas como programação web, acesso a bancos de dados, entre outros, se encaixam na preparação do programador Java:

Confira também o Guia de Consulta Linguagem Java, que contém outros conteúdos sobre a linguagem.

Acesso a Bancos de dados

Provavelmente até aqui você criou aplicações que, quando encerradas, perdiam todos os dados nela inseridos. Mas, por que isso acontece? Por um motivo simples: assim como precisamos programar condicionais, estruturas de repetição, entre outras coisas para definir o funcionamento do nosso sistema, precisamos programar como ele deve armazenar, isto é, persistir os dados (Figura 1).

Persistência de dados em Java
Figura 1. Persistência de dados em Java

Em Java, o primeiro passo para aprender como persistir dados é conhecer a API JDBC. A partir dela, você conseguirá acessar, enviar e recuperar dados de um recurso fundamental a toda aplicação, o banco de dados. É nele que os dados ficam, de fato, armazenados. Saiba mais no curso:

É fundamental para escrever código JDBC que você tenha um Driver JDBC em seu ambiente de desenvolvimento. Aprenda a instalar o MySQL Connector/J, o Driver JDBC do MySQL, no Intellij IDEA em 5 minutos:

Apesar do JDBC ser fundamental para o acesso a dados, logo descobriremos que ele carece de certas funcionalidades, presentes em frameworks como o Hibernate. E já que estamos começando a falar sobre frameworks, que tal fazermos uma pausa para falar sobre o Maven? Essa ferramenta facilita a preparação do ambiente de desenvolvimento ao realizar o download e instalação das bibliotecas das quais o projeto depende, além de outras tarefas. Aprenda sobre ele nos links:

Hibernate é o framework para persistência de dados mais utilizado em projetos Java. Sendo uma das primeiras opções a implementar o conceito de mapeamento objeto-relacional (ORM), em pouco tempo se tornou referência entre os desenvolvedores, tendo sido tomado, inclusive, como referência para criação da especificação JPA:

Aprenda sobre este framework nos cursos abaixo:

Percorrer coleções é uma tarefa comum ao lidar com bancos de dados. O Java 8 trouxe como novidade o suporte as expressões lambda, que simplificam a escrita desse código fundamental. Saiba como utilizá-las no curso:

Spring Data JPA é também um framework muito utilizado para acesso a bancos de dados relacionais. Aprenda mais sobre ele neste curso:

Como conteúdo extra, preparamos um curso completo sobre JdbcTemplate, solução do Spring Framework que simplifica o desenvolvimento de aplicações que acessam o banco de dados utilizando JDBC:

Confira também o Guia de Referência Hibernate e veja outros conteúdos sobre a Java e acesso a dados.

Para conhecer os principais conteúdos que você precisa estudar, como programador, para trabalhar com bancos de dados, acesse:

Validação de dados

Validar é uma prática extremamente importante em aplicações. Esse procedimento impede que dados incorretos sejam salvos no banco de dados e, em muitos casos, contribui para a segurança do sistema. O objetivo principal da biblioteca Bean Validation é auxiliar os programadores nesta tarefa, permitindo a definição das regras de validação por meio de anotações, na camada de modelo da aplicação.

Saiba como validar dados com Bean Validation neste curso:

Programação Java Web

A programação Web é uma das vertentes do Java que mais evolui. Nas primeiras versões, tudo era de responsabilidade das servlets – da etapa de atender às requisições HTTP, até gerar o HTML a ser enviado para o browser do usuário.

Como você pode notar, muitas eram as responsabilidades atribuídas a um único elemento. Esse problema, no entanto, logo começou a ser minado. Se não era viável lidar com códigos assim em projetos de pequeno/médio porte, imagine em projetos maiores.

A partir disso, muitos padrões, bibliotecas, frameworks e APIs começaram a ser criados, e todos, sem exceção, tendo como um dos seus objetivos simplificar e melhor distribuir as responsabilidades entre os elementos da aplicação.

Um dos padrões mais conhecidos e que abrange com exatidão esse objetivo é o padrão arquitetural MVC. Para aprender sobre ele, acesse:

Não é exagero afirmar que esse padrão rapidamente conquistou os programadores de todas as linguagens. E não apenas isso. Até hoje continua sendo um dos padrões mais implementados na construção de qualquer framework voltado para a programação Web. Podemos dizer até um pouco mais: pelo menos no curto/médio prazo, esse cenário não deve mudar.

Sendo assim, aconselhamos que você estude esse padrão e aprenda sobre as principais tecnologias que o adotam. No Java, as primeira tecnologias com que você terá contato no desenvolvimento web são Servlets, JSP e posteriormente o JSF, os quais você pode conhecer nos cursos abaixo:

Com o JSF, temos à disposição uma API Java que implementa o padrão MVC e simplifica a programação ao oferecer um amplo de leque de componentes visuais e não visuais para agilizar a criação de sistemas Web.

Interessado em saborear e, até mesmo, começar a se aprofundar no JSF, acesse as publicações que indicamos abaixo:

Ajax é uma tecnologia que nos permite trocar informações com o servidor através de requisições feitas em segundo plano, sem que para isso necessitemos recarregar a página. Uma vez que grandes aplicações como Gmail, Facebook, entre outras, têm utilizado essa tecnologia em benefício da usabilidade, tornando melhor a experiência do usuário, é muito provável que você tenha que desenvolver suas páginas JSF utilizando Ajax. O curso abaixo apresenta uma abordagem inicial sobre o assunto:

Aqui na DevMedia temos diversos conteúdos sobre o framework JSF. Para se aprofundar ao máximo nesse tema, recomendamos o Guia:

Outro ótimo exemplo de framework que implementa o padrão MVC é o Spring MVC. Com uma proposta um pouco diferenciada em relação ao seu “concorrente” JSF, o Spring MVC, aos poucos, vem conquistando cada vez mais adeptos.

Uma das bases dessa tecnologia é que ela é construída sobre o Spring Framework, aproveitando dele suas principais características, como é o caso da Inversão de Controle e da Injeção de Dependência.

Como para começar a utilizar o Spring MVC é interessante ao menos ter uma ideia do que é o Spring Framework, começamos sugerindo o curso:

Spring MVC

Logo após, por que não começar a programar com o Spring MVC? Para isso, acesse aos cursos:

Spring Boot

O Spring Boot facilita a criação de aplicações de diferentes tipos, simplificando o processo de configuração e execução. Nos posts a seguir você aprenderá a utilizar essa tecnologia para construir aplicações web:

O Spring e o Spring MVC são frameworks que nos fornecem os mais variados recursos para atender à maior parte das nossas necessidades na programação de aplicações em Java. Com o intuito de estruturar todo o conteúdo que já publicamos sobre eles, preparamos o Guia:

Atualmente, essas são as principais tecnologias Java para o mundo Web. No entanto, como tudo em nossa área, a qualquer momento esse cenário pode mudar, novas tecnologias podem surgir. A qualquer momento, portanto, poderemos lançar novos conteúdos. Sendo assim, nossa última recomendação é: esteja sempre atento, pois a qualquer momento publicaremos novos conteúdos por aqui. =D

Web Services

Web service é como chamamos uma solução que atende requisições de diferentes aplicações. Independente da linguagem ou plataforma utilizada por cada uma delas, o papel do Web service será intermediar a comunicação, tornando-as compatíveis. Neste cenário, até pouco tempo, muito se falava em SOAP para a construção de serviços Web. Recentemente, no entanto, devido a vários fatores, uma nova opção foi criada e rapidamente se tornou uma preferência no mercado: Web services RESTful.

Você sabe o que é isso? Sabe como programar seu primeiro serviço web utilizando o padrão REST? Não! Então, confira os cursos abaixo:

Programando web services RESTful

Agora que você sabe o que é RESTful e como criar web services, que têm como base o protocolo HTTP, está na hora de dar mais alguns passos. Para te acompanhar neste momento, preparamos os cursos a seguir que demonstram como criar APIs RESTful utilizando o framework Jersey, implementação de referência da especificação JAX-RS, tendo o apoio do Hibernate para programação da camada de acesso a dados.

Spring e web services

Apesar de ser uma excelente opção, o Jersey não é a nossa única escolha. O Spring Framework também fornece recursos para a criação de serviços RESTful. Nesta seção você encontrará conteúdos que demonstram como utilizá-lo para a criação de Web APIs:

Segurança

Na programação para a web a segurança também é fundamental na construção de web services RESTful. Diferentemente dos sistemas web tradicionais, no entanto, as Web APIs precisam ser stateless, que determina que o servidor não pode guardar estado entre as requisições.

Com base nisso, como programar a segurança, a autenticação e a autorização em web services? Esses são alguns dos assuntos que serão esclarecidos nos cursos deste tópico:

JWT é um token criado no formato JSON para permitir a troca de informações de maneira segura, sendo muito utilizado para integrar aplicações e prover mecanismos de autenticação, principalmente em APIs REST. Nos conteúdos abaixo introduzimos essa tecnologia:

Caso seu interesse seja aprender mais sobre web services RESTful e a construção de Web APIs, preparamos um Guia especialmente sobre esse assunto. Confira:

Web services SOAP

Mesmo com a redução no número de projetos que o adotam, o uso de web services SOAP ainda continuará com uma demanda no mercado de desenvolvimento. Lembre-se que ao optar pelo REST, ficamos "presos" aos protocolos HTTP/HTTPS, mas, e se precisarmos trocar mensagens utilizando o protocolo SMTP, por exemplo? E se precisarmos que nosso serviço seja stateful?

Para aprender como programar web services SOAP, assista ao curso:

Padrões e boas práticas

Agora que você já conhece a linguagem, bem como algumas das APIs que compõem a plataforma Java, é uma boa ideia se aprofundar em técnicas que lhe ajudarão a escrever códigos consistentes e com maior qualidade.

Diferentes equipes de programadores podem vivenciar os mesmo problemas durante a etapa de codificação de softwares distintos. Uma vez que tais dificuldades são comuns elas podem ser solucionadas da mesma forma, embora estejam em contextos diferentes. Os Padrões de Projeto são o fruto do esforço em catalogar estas soluções, que são apresentadas em detalhes no seguinte curso:

Você já olhou para um código que parecia errado, mas não soube dizer de imediato por quê? Pode ser que você tenha se deparado com um Code Smell e, acredite, se você não se livrar dele, esse incômodo ficará cada vez pior. Aprenda no DevCast a seguir o que é um Code Smell e o que fazer em relação a ele:

A plataforma Java conta com algumas APIs que facilitam a utilização de padrões fundamentais, fornecendo a infraestrutura necessária para que sejam aplicados em um projeto. Um exemplo disso é a CDI, Contexts and Dependency Injection, que fornece serviços que, quando utilizados em conjunto, permitem a criação de código menos acoplado e mais coeso através da Inversão de Controle.

Existem muitos outros padrões de projeto e, sendo o Java uma linguagem orientada a objetos, é muito comum que tenhamos contato com eles, seja em nosso próprio código ou quando usamos algum framework. Por essa razão recomendamos que você continue se inteirando desse assunto com o Guia abaixo:

MeetUps

Aprenda mais sobre a linguagem com esses MeetUps a seguir. Quem sabe a sua dúvida não está respondida aqui ;)

Na prática

Escrever aplicações de qualidade requer tempo e muita dedicação. Felizmente, sempre podemos aprender com a experiência de outros programadores, adicionando mais facilmente opções a nossa caixa de ferramentas. Assistindo a este curso você ficará por dentro da programação genérica, classificação e pesquisa, tratamento de exceções, multithreading e muito mais. Confira!

Até o momento você aprendeu as principais tecnologias que compõem a Java Enterprise Edition, a plataforma Java voltada para o desenvolvimento de aplicações em larga escala. Que tal agora colocar em prática esse aprendizado? Saiba como nesse curso:

Independentemente dos tipos de programa que você vai desenvolver, existem alguns passos a serem dados antes da codificação. A reunião de levantamento de requisitos trata desse momento, no qual planejamos como será aplicação e conhecemos, assim, as particularidades de suas funções. Assista no curso abaixo como essa reunião é conduzida:

Relatórios

Gerar relatórios é um requisito comum à grande maioria das aplicações. Através destes cursos você terá uma formação completa sobre como construir relatórios dos mais simples aos mais avançados utilizando as ferramentas iReport e JasperReports:

Mais sobre Java

Além dos cursos e exemplos sugeridos nesse guia, a DevMedia publica com frequência novos conteúdos sobre Java, os quais você pode conferir nos Guias de Consulta abaixo:

Além disso, você pode conferir todo o conteúdo de Java clicando aqui.

Veja esse ebook
Crie sua conta grátis e baixe o e-book
Dê um upgrade no início da sua jornada.

Perguntas frequentes

Quem somos?
A DevMedia é uma escola de formação de programadores com mais de 20 anos de mercado. Já formamos mais de 100 mil programadores. A DevMedia ensina programação web, (desenvolvimento de site e aplicativos para celulares). A programação web é a área que mais contrata programadores em todo o mundo, sendo a maior porta de entrada para a área da tecnologia.
Por que a programação se tornou a profissão mais promissora da atualidade?
Nunca o mundo necessitou tanto de programadores como atualmente. Com a quarentena estabelecida pela Covid-19, lojas, restaurantes, escritórios e escolas, que tiveram suas atividades paralisadas, perceberam a urgente necessidade de adaptar seus negócios para o mundo digital. Em contrapartida as empresas de tecnologias, durante esse período, cresceram como nunca tanto em faturamento quanto em número de usuários. Com isso a necessidade de programadores cresceu muito. Empresas de grande e pequeno porte estão com vagas abertas e não conseguem contratar por falta de profissionais qualificados. No momento estima-se que o número de oportunidades no Brasil seja acima de 200 mil!
Como faço para começar a estudar?
Programação é um universo amplo, existem muitos caminhos e por isso é muito fácil se perder. Nosso conselho é: NÃO ESTUDE SOZINHO. Infelizmente 78% das pessoas que começam a estudar sozinhas desistem da profissão por não conseguirem aprender. Com uma boa orientação elas teriam conseguido! Se você tomou a decisão de entrar nesse mercado, faça um investimento no seu futuro e busque aprender com quem sabe. Isso vai triplicar suas chances de dominar a programação e conquistar uma vaga no mercado.
Em quanto tempo de estudo vou me tornar um programador?
O tempo depende, claro, da dedicação de cada estudante. A DevMedia ensina programação há 20 anos e com toda essa experiência montamos uma metodologia que tem como objetivo principal acelerar os seus estudos. Você terá um Plano de Estudo para te orientar em todos os passos do aprendizado. Desenvolverá diversos projetos reais para colocar em prática os conhecimentos e contará com o melhor suporte ao aluno da web. Todas as suas dúvidas serão respondidas de imediato. Seguindo nossa metodologia e se dedicando, entre 6 meses e um ano você já estará programando.
Sim, você pode se tornar um programador e não precisa ter diploma de curso superior!
Ser programador é uma das maiores oportunidades que o Brasil oferece para quem não tem condições de fazer uma faculdade. Muitas empresas contratam sem fazer questão de diploma, o que importa para elas é que o candidato seja um bom técnico e consiga atender suas necessidades. Os salários iniciais para programadores são de R$2.500 mil, podendo chegar aos R$15 mil para aqueles que se dedicam. Com disciplina e um estudo correto, que não te faça perder tempo, é possível se tornar um programador em menos de um ano de estudo. Quando você já estiver empregado, aí sim você pode se aprimorar ainda mais fazendo uma faculdade na área.
O que eu irei aprender estudando pela DevMedia?
Nossas trilhas de estudo te permitem virar um programador Full Stack, que é aquele programador mais completo, ele domina o desenvolvimento Front-end, Back-end e Mobile. Você ficará apto para criar sistemas para computadores e aplicativos para celulares. Utilizamos como base a linguagem JavaScript que é a linguagem mais utilizada no mundo. Outra vantagem do JavaScript é a quantidade de oportunidades no mercado de trabalho. É sem dúvida a linguagem que mais possui vagas e a que mais dá oportunidade para os iniciantes.
Principais diferenciais da DevMedia
Suporte ao aluno - O aluno conta com a ajuda de professores para tirar dúvidas durante toda a jornada de ensino. As perguntas são respondidas em menos de uma hora por professores experientes e atuantes no mercado. Gamificação - A plataforma de ensino é divertida e motivante. É como se o aluno estivesse dentro de um game. Ele terá seu card pessoal, que poderá ser customizado utilizando as moedas que ele ganha quando acerta os exercícios. Ele poderá também trocar suas moedas por outros produtos dentro da plataforma. Além disso, seus acertos contam pontos no ranking mensal dos alunos. Tudo isso deixa os estudos mais leves e motivantes. Didática - A DevMedia já ensina programação há mais de 20 anos. Desenvolvemos ao longo desse tempo uma metodologia que ensina a programar de verdade, com menos aulas e mais prática, são dezenas de projetos e exercícios que desenvolvem a mente programadora no aluno. Projetos reais - Durante os estudos os alunos irão desenvolver dezenas de projetos em cada uma das carreira (front-end, back-end e mobile). Mas o principal é que os projetos da DevMedia não são “copia e cola” como se encontra por aí. Aqui o aluno vai desenvolver os projetos de forma autônoma, recebendo claro a nossa mentoria e suporte, mas o aluno terá condições para desenvolvê-los sozinho. Milhares de exercícios - Programação é prática, por isso a cada nova matéria o aluno passará por um bloco de exercícios para fixar o conteúdo e cada acerto será bonificado com pontos e moedas e valem uma posição no ranking dos alunos.
Qual o investimento financeiro que preciso fazer para me tornar um programador?
Na internet é possível encontrar cursos de todos os preços, desde 50,00 a R$15.000,00. Os cursos de 50,00 são cursos avulsos, que explicam apenas pedaços de uma determinada matéria. Para criar um conhecimento completo você precisaria comprar no mínimo de 15 a 20 cursos avulsos e correria o risco deles não se complementarem tão perfeitamente e seu conhecimento ficaria cheio de "buracos". Os cursos de R$15.000,00 não fazem nenhum sentido. Deixe para investir em cursos caros quando quiser se especializar. Por esse preço você pode inclusive estudar fora do pais. Na DevMedia, você terá um plano de estudo montado por quem já formou mais de 100 mil alunos, e já está nesse mercado há mais de 20 anos. Somos a única plataforma que oferece Suporte ao Aluno em tempo real e uma experiência de estudos gamificada para te manter motivado durante todo o período de estudo. E o melhor, nosso pagamento é recorrente, você não precisa usar o limite do seu cartão de crédito para investir no seu futuro. Aproveite para se matricular agora mesmo.

Que tal ter acesso a um e-book gratuito que vai te ajudar muito nesse momento decisivo?

Ver ebook

Recomendado pra quem ainda não iniciou o estudos.

Eu quero
Ver ebook

Recomendado para quem está passando por dificuldades nessa etapa inicial

Eu quero

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar