Texto introdutório à ciência da computação, ensina como escrever programas usando a orientação a objetos e aborda estrutura de dados e sua implementação em Java. Uma grande quantidade de dicas úteis sobre as boas práticas da engenharia de software motiva o leitor a dominar os aspectos práticos da programação e o foco no desenvolvimento baseado em testes o encoraja a testar seus programas à medida que os desenvolve. Esta nova edição abrange as melhorias do Java 6, mas pode ser igualmente utilizado com Java 5. Capìtulos e material on-line complementam o livro-texto.