Recentemente foi o dia do professor, e frequentemente alguém me pergunta como devo começar a estudar Java, então para facilitar a minha vida resolvi escrever esse post ao invés de responder em email toda hora.
Na época que lecionava Java para a Sun Microsystems, eu sempre orientava os meus alunos a adotar algumas das dicas abaixo e não se limitar ao conteúdo da apostila.
Lembre-se que o melhor dos cursos apenas é uma ferramenta, de nada adianta se você não estiver comprometido com o aprendizado.
Saiba que Java não é algo tão intuitivo como PHP, mas também não é algo do outro mundo, que alguém não possa aprender. Quando você conhecer o potencial do Java, vai entender porque empresas enormes como IBM , Oracle sempre apoiaram a utilização dessa plataforma.
1. Entenda as origens do Java e por que ele foi criado – entender o porquê da linguagem ser criada pelas necessidades da época ajuda muito na compreensão de suas bibliotecas e de seu funcionamento. Procure estudar a diferença da linguagem Java e da plataforma Java.
2. Não comece usando Eclipse / NetBeans – as IDEs mascaram muita coisa essencial para o aprendizado, por isso apenas mude para essas ferramentas depois de alguns meses de prática. No momento você precisa apenas de um bom editor de textos para ajudar na sintaxe.
3. Procure apostilas conceituadas – antigamente existiam apostilas básicas na Internet, resumos incoerentes e algumas dissertações de mestrado sobre o assunto. Hoje existe muito mais coisa, mas a melhor referência que existe é a apostila do curso de Java da Caelum, uma excelente fonte de informação escrita por experientes profissionais da área.
4. Monte um plano de estudo com intervalos curtos – planejar um roteiro de estudos precisamos de compromisso e ser bem realista na programação. Procure dedicar um tempo todo dia para o estudo, alguns dias você terá horas, outros apenas meia hora. Não deixe de ficar um dia sem dar uma olhada, nem que seja por 10 minutos.
5. Inscreva-se em fóruns de Java e leia periódicos – existem muitos fóruns por aí e alguns periódicos nas bancas. Participe dos fóruns tirando suas dúvidas no começo e ajudando os iniciantes mais tarde.
6. Compre um bom livro de Java ou faça um curso conceituado – se você prefere livro, compre o Head First Java, se prefere curso, faça numa escola conceituada.
7. Estude as APIs do Java direto no código fonte– muita coisa está documentada no código fonte com exemplos, é um ótimo lugar para aprender a usar alguns padrões.
8. Não comece a desenvolver para web ainda – o erro de muitos iniciantes é partirem para o desenvolvimento web antes de conhecerem o básico. Quem aprende o básico primeiro, tem um rendimento muito melhor no futuro.
9. Aprenda o que são e como usar bibliotecas e frameworks – quando precisa de algum recurso no Java, como por exemplo gerar um arquivo PDF, fazer um acesso SSH, etc; antes de sair reinventando a roda, saiba que existe uma chance de quase 100% de alguém já ter feito isso. Por esse motivo, crie o hábito de procurar por bibliotecas e frameworks antes de sair programando.
10.Faça um programa exemplo – a melhor maneira de testar os seus conhecimentos de uma linguagem é fazer um programa que junte todas as peças que aprendeu. Pode ser uma pequena agenda, uma lista de ramais de uma empresa, não importa. Comece criando uma aplicação dessas primeiro armazenando os valores na memória dentro de Arrays e depois avance para armazenar em um banco de dados. Mais tarde use esse mesmo esquema para criar uma aplicação web ou uma aplicação em um celular.
Além de cursos ou livros, tem gente que prefere criar um blog para incentivar o aprendizado, escrever resumos, aí cada um é de um jeito.
Não é tarde para ingressar no mercado de Java, mesmo com outras linguagens emergindo, os trabalhos em Java ainda são abundantes e mesmo que isso mude, o legado hoje é enorme e manterá o mercado aquecido por um bom tempo.
Dica extra: aprenda SQL ! Se você conseguir ser um profissional que realmente conhece SQL, será um profissional diferenciado entre os profissionais Java.
Boa sorte!
Fernando Boaglio, para a comunidade.