Esta é uma fonte incompleta de conhecimentos

Infelizmente, elaborar um curso com material completo gasta muito tempo. Neste momento, simplesmente não há recursos humanos neste projeto para criar tal material; o que seria o ideal. Em vez disso, o estudante poderá se guiar pelo seguinte livro:

http://www.mindview.net/Books/TIJ/

Para baixar esse livro, acesse: http://www.planetpdf.com/codecuts/pdfs/eckel/TIJ3.zip

Esse é talvez o melhor livro gratuito de Java, mas ele foi lançado há 12 anos. A idade do livro não é por si só um problema, pois Java é compatível com as versões passadas, ou seja, tudo no livro ainda é verdade para as últimas versões de Java. Mas hoje há melhores formas de resolver os mesmos problemas.

Armadilhas

Embora ter um livro acelere as coisas, há alguns perigos que você deve conhecer. A abordagem tradicional para ensinar uma linguagem de programação como Java tem algumas falhas.

A primeira falha é que esses métodos começam pelos detalhes técnicos (e tediosos) apresentados aos estudantes. Por exemplo, algumas das primeiras coisas apresentadas são o que é um objeto e como usar o compilador de Java (javac). Compilar uma única classe é tão fácil como chamar “javac ClassName”, mas as coisas começam a ficar complexas quando precisar compilar uma classe que use uma biblioteca.

Por que usamos Maven?

O problema disso é que na vida real dos programadores profissionais de verdade absolutamente ninguém chama javac manualmente. Então, por que se preocupar em introduzir algo que ninguém precisar saber na vida real? Quanto a isso, os programadores profissionais de Java precisam entender como o javac funciona ainda que alguma ferramenta invoque realmente o compilador. Então os estudantes precisam saber alguma coisa sobre isso. Nós não estamos dizendo que nós não devemos estudar javac, mas sim que abordar tal tópico é realmente um erro quando as pessoas querem começar a usar Java. É por isso que nós usamos Maven.

O Maven entende a estrutura do projeto e complica tudo para você. A complexidade de compilação fica oculta dos programadores, e, sim, Maven é usado todos os dias por programadores profissionais em projetos reais.

Outra falha dos métodos tradicionais de ensino é que eles introduzem maus hábitos de programação. Aprender a programar é como treinar um esporte. Pode soar estranho a princípio, mas você precisa se acostumar com essa ideia.

Vamos evitar maus hábitos

Se você treina de uma forma errada, você está condicionando o seu cérebro a fazer movimentos errados. Quando você participar de uma partida real, você se movimentará de forma errada.

A vida real é cheia de testes

Como isso se traduz em um curso de Java? Na vida real, há um campo chamado engenharia de software que se dedica a abordar as melhores práticas para criar software. Sobre tal prática destaca-se nesse curso a importância de primeiro se escrever testes.

http://www.extremeprogramming.org/rules/testfirst.html

Em termos simples, os programadores são encorajados a escrever o código fonte somente quando houver um teste para verificar o progresso. Afinal, como saber se você terminou seu código fonte se não há nada para dizer que seu trabalho foi finalizado?

Mas escrever testes também é chato. Por isso os testes são fornecidos aos estudantes nas nossas aulas. Dessa forma, o estudante pode se focar em resolver o problema, e não em como verificar se o problema está resolvido. A verificação é fornecida desde o princípio.

Há um último problema. Rodar testes também é chato. Mas adivinhe? O Maven também faz isso para nós.

Finalizando

Então, em resumo, esse curso usa muito o Maven tanto para compilação (entre outras tarefas de rotina que nós veremos) quanto para fornecer "testes primeiro", que é uma boa prática de programação.

Back to top